/* * Command line: opannotate -a -s ./darkwar --include-file=particle.c * * Interpretation of command line: * Output annotated assembly listing with samples * * CPU: Athlon, speed 1760.24 MHz (estimated) * Counted CPU_CLK_UNHALTED events (Cycles outside of halt state) with a unit mask of 0x00 (No unit mask) count 100000 * Counted DATA_CACHE_MISSES events (Data cache misses) with a unit mask of 0x00 (No unit mask) count 30000 * Counted ICACHE_MISSES events (Instruction cache misses) with a unit mask of 0x00 (No unit mask) count 30000 * Counted RETIRED_BRANCHES_MISPREDICTED events (Retired branches mispredicted) with a unit mask of 0x00 (No unit mask) count 30000 */ : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0805378a : /* ParticleEffect_Explosion_Fire_Frame total: 9024 26.6643 283 31.7978 3 2.1429 3 2.8302 */ :ParticleEffect_Explosion_Fire_Frame :=================================== :*/ :void ParticleEffect_Explosion_Fire_Frame (struct ParticleEffect *pe, matrix4x4_t camera) :{ : 805378a: push %ebp 15 0.0443 0 0.0e+00 0 0.0e+00 1 0.9434 : 805378b: mov %esp,%ebp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805378d: push %esi : 805378e: push %ebx : 805378f: sub $0x60,%esp : Particle* p; : Nfloat left[3], up[3], tmp; : NUint32 i, num_va, num_cl; : : left[0] = camera.m[0][1] * pe->size; : 8053792: mov 0x8(%ebp),%eax : 8053795: flds 0x34(%eax) : 8053798: fmull 0x14(%ebp) : 805379b: fstps 0xffffffd8(%ebp) : left[1] = camera.m[1][1] * pe->size; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805379e: mov 0x8(%ebp),%eax : 80537a1: flds 0x34(%eax) : 80537a4: fmull 0x34(%ebp) : 80537a7: fstps 0xffffffdc(%ebp) : left[2] = camera.m[2][1] * pe->size; : 80537aa: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80537ad: flds 0x34(%eax) : 80537b0: fmull 0x54(%ebp) : 80537b3: fstps 0xffffffe0(%ebp) : : up[0] = camera.m[0][2] * pe->size; : 80537b6: mov 0x8(%ebp),%eax : 80537b9: flds 0x34(%eax) : 80537bc: fmull 0x1c(%ebp) : 80537bf: fstps 0xffffffc8(%ebp) : up[1] = camera.m[1][2] * pe->size; : 80537c2: mov 0x8(%ebp),%eax : 80537c5: flds 0x34(%eax) : 80537c8: fmull 0x3c(%ebp) : 80537cb: fstps 0xffffffcc(%ebp) : up[2] = camera.m[2][2] * pe->size; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80537ce: mov 0x8(%ebp),%eax : 80537d1: flds 0x34(%eax) : 80537d4: fmull 0x5c(%ebp) : 80537d7: fstps 0xffffffd0(%ebp) : : num_va = 0; : 80537da: movl $0x0,0xffffffbc(%ebp) : num_cl = 0; : 80537e1: movl $0x0,0xffffffb8(%ebp) : : for (i=0, p = pe->particle; inumparticles; i++, p++) : 80537e8: movl $0x0,0xffffffc0(%ebp) : 80537ef: mov 0x8(%ebp),%eax : 80537f2: mov (%eax),%eax : 80537f4: mov %eax,0xfffffff4(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80537f7: mov 0x8(%ebp),%edx 23 0.0680 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80537fa: mov 0xffffffc0(%ebp),%eax : 80537fd: cmp 0x38(%edx),%eax : 8053800: jb 8053807 : 8053802: jmp 8053a1f : { : p->origin[0] += p->vel[0] * g_frametime; 191 0.5644 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053807: mov 0xfffffff4(%ebp),%edx 34 0.1005 0 0.0e+00 0 0.0e+00 1 0.9434 : 805380a: mov 0xfffffff4(%ebp),%eax : 805380d: flds (%eax) : 805380f: mov 0xfffffff4(%ebp),%eax 36 0.1064 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053812: flds 0xc(%eax) : 8053815: fmull 0x805a968 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805381b: faddp %st,%st(1) 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805381d: fstps (%edx) : tmp = pe->origin[0] + p->origin[0]; : 805381f: mov 0x8(%ebp),%eax 42 0.1241 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053822: mov 0xfffffff4(%ebp),%edx : 8053825: flds 0xc(%eax) : 8053828: fadds (%edx) 118 0.3487 2 0.2247 0 0.0e+00 0 0.0e+00 : 805382a: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 0] = tmp - left[0] - up[0]; : 805382d: mov 0x8(%ebp),%edx : 8053830: mov 0xffffffbc(%ebp),%eax 218 0.6442 117 13.1461 0 0.0e+00 0 0.0e+00 : 8053833: lea 0x0(,%eax,4),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805383a: mov 0x4(%edx),%eax : 805383d: flds 0xffffffc4(%ebp) 128 0.3782 8 0.8989 0 0.0e+00 0 0.0e+00 : 8053840: fsubs 0xffffffd8(%ebp) 7 0.0207 0 0.0e+00 1 0.7143 0 0.0e+00 : 8053843: fsubs 0xffffffc8(%ebp) : 8053846: fstps (%eax,%ecx,1) : pe->va[num_va+ 3] = tmp - left[0] + up[0]; 239 0.7062 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053849: mov 0x8(%ebp),%edx : 805384c: mov 0xffffffbc(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805384f: shl $0x2,%eax 115 0.3398 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053852: add 0x4(%edx),%eax : 8053855: add $0xc,%eax : 8053858: flds 0xffffffc4(%ebp) 53 0.1566 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805385b: fsubs 0xffffffd8(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805385e: fadds 0xffffffc8(%ebp) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053861: fstps (%eax) : pe->va[num_va+ 6] = tmp + left[0] + up[0]; 106 0.3132 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053863: mov 0x8(%ebp),%edx : 8053866: mov 0xffffffbc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053869: shl $0x2,%eax 127 0.3753 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805386c: add 0x4(%edx),%eax 10 0.0295 0 0.0e+00 1 0.7143 0 0.0e+00 : 805386f: add $0x18,%eax 14 0.0414 0 0.0e+00 1 0.7143 0 0.0e+00 : 8053872: flds 0xffffffc4(%ebp) 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053875: fadds 0xffffffd8(%ebp) : 8053878: fadds 0xffffffc8(%ebp) 1062 3.1380 7 0.7865 0 0.0e+00 0 0.0e+00 : 805387b: fstps (%eax) : pe->va[num_va+ 9] = tmp + left[0] - up[0]; 415 1.2263 7 0.7865 0 0.0e+00 0 0.0e+00 : 805387d: mov 0x8(%ebp),%edx : 8053880: mov 0xffffffbc(%ebp),%eax 62 0.1832 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053883: shl $0x2,%eax 162 0.4787 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053886: add 0x4(%edx),%eax : 8053889: add $0x24,%eax 27 0.0798 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805388c: flds 0xffffffc4(%ebp) 30 0.0886 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805388f: fadds 0xffffffd8(%ebp) : 8053892: fsubs 0xffffffc8(%ebp) 36 0.1064 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053895: fstps (%eax) : : p->origin[1] += p->vel[1] * g_frametime; 84 0.2482 20 2.2472 0 0.0e+00 0 0.0e+00 : 8053897: mov 0xfffffff4(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805389a: mov 0xfffffff4(%ebp),%eax 18 0.0532 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805389d: flds 0x4(%eax) 143 0.4225 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538a0: mov 0xfffffff4(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538a3: flds 0x10(%eax) 53 0.1566 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538a6: fmull 0x805a968 218 0.6442 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538ac: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538ae: fstps 0x4(%edx) : tmp = pe->origin[1] + p->origin[1]; 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538b1: mov 0x8(%ebp),%eax 35 0.1034 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538b4: mov 0xfffffff4(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538b7: flds 0x10(%eax) 57 0.1684 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538ba: fadds 0x4(%edx) 75 0.2216 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538bd: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 1] = tmp - left[1] - up[1]; 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538c0: mov 0x8(%ebp),%edx 37 0.1093 4 0.4494 0 0.0e+00 0 0.0e+00 : 80538c3: mov 0xffffffbc(%ebp),%eax 87 0.2571 22 2.4719 0 0.0e+00 0 0.0e+00 : 80538c6: shl $0x2,%eax 5 0.0148 3 0.3371 0 0.0e+00 0 0.0e+00 : 80538c9: add 0x4(%edx),%eax 22 0.0650 4 0.4494 0 0.0e+00 0 0.0e+00 : 80538cc: add $0x4,%eax 111 0.3280 13 1.4607 0 0.0e+00 0 0.0e+00 : 80538cf: flds 0xffffffc4(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538d2: fsubs 0xffffffdc(%ebp) 12 0.0355 4 0.4494 0 0.0e+00 0 0.0e+00 : 80538d5: fsubs 0xffffffcc(%ebp) 39 0.1152 1 0.1124 0 0.0e+00 0 0.0e+00 : 80538d8: fstps (%eax) : pe->va[num_va+ 4] = tmp - left[1] + up[1]; : 80538da: mov 0x8(%ebp),%edx 43 0.1271 3 0.3371 0 0.0e+00 0 0.0e+00 : 80538dd: mov 0xffffffbc(%ebp),%eax 117 0.3457 5 0.5618 0 0.0e+00 0 0.0e+00 : 80538e0: shl $0x2,%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538e3: add 0x4(%edx),%eax 15 0.0443 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538e6: add $0x10,%eax 28 0.0827 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538e9: flds 0xffffffc4(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538ec: fsubs 0xffffffdc(%ebp) 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538ef: fadds 0xffffffcc(%ebp) 83 0.2453 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538f2: fstps (%eax) : pe->va[num_va+ 7] = tmp + left[1] + up[1]; 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538f4: mov 0x8(%ebp),%edx 34 0.1005 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80538f7: mov 0xffffffbc(%ebp),%eax 78 0.2305 2 0.2247 0 0.0e+00 0 0.0e+00 : 80538fa: shl $0x2,%eax 3 0.0089 2 0.2247 0 0.0e+00 0 0.0e+00 : 80538fd: add 0x4(%edx),%eax 50 0.1477 14 1.5730 0 0.0e+00 0 0.0e+00 : 8053900: add $0x1c,%eax 136 0.4019 40 4.4944 0 0.0e+00 0 0.0e+00 : 8053903: flds 0xffffffc4(%ebp) : 8053906: fadds 0xffffffdc(%ebp) 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053909: fadds 0xffffffcc(%ebp) 80 0.2364 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805390c: fstps (%eax) : pe->va[num_va+10] = tmp + left[1] - up[1]; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805390e: mov 0x8(%ebp),%edx 246 0.7269 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053911: mov 0xffffffbc(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053914: shl $0x2,%eax 16 0.0473 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053917: add 0x4(%edx),%eax 184 0.5437 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805391a: add $0x28,%eax : 805391d: flds 0xffffffc4(%ebp) : 8053920: fadds 0xffffffdc(%ebp) 50 0.1477 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053923: fsubs 0xffffffcc(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053926: fstps (%eax) : : p->origin[2] += p->vel[2] * g_frametime; : 8053928: mov 0xfffffff4(%ebp),%edx 205 0.6057 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805392b: mov 0xfffffff4(%ebp),%eax : 805392e: flds 0x8(%eax) 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053931: mov 0xfffffff4(%ebp),%eax 475 1.4035 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053934: flds 0x14(%eax) : 8053937: fmull 0x805a968 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805393d: faddp %st,%st(1) 155 0.4580 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805393f: fstps 0x8(%edx) : tmp = pe->origin[2] + p->origin[2]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053942: mov 0x8(%ebp),%eax : 8053945: mov 0xfffffff4(%ebp),%edx 100 0.2955 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053948: flds 0x14(%eax) : 805394b: fadds 0x8(%edx) : 805394e: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 2] = tmp - left[2] - up[2]; 160 0.4728 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053951: mov 0x8(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053954: mov 0xffffffbc(%ebp),%eax : 8053957: shl $0x2,%eax 197 0.5821 1 0.1124 0 0.0e+00 0 0.0e+00 : 805395a: add 0x4(%edx),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805395d: add $0x8,%eax : 8053960: flds 0xffffffc4(%ebp) 32 0.0946 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053963: fsubs 0xffffffe0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053966: fsubs 0xffffffd0(%ebp) : 8053969: fstps (%eax) : pe->va[num_va+ 5] = tmp - left[2] + up[2]; 39 0.1152 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805396b: mov 0x8(%ebp),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805396e: mov 0xffffffbc(%ebp),%eax 117 0.3457 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053971: shl $0x2,%eax 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053974: add 0x4(%edx),%eax 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053977: add $0x14,%eax 57 0.1684 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805397a: flds 0xffffffc4(%ebp) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805397d: fsubs 0xffffffe0(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053980: fadds 0xffffffd0(%ebp) 90 0.2659 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053983: fstps (%eax) : pe->va[num_va+ 8] = tmp + left[2] + up[2]; 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053985: mov 0x8(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053988: mov 0xffffffbc(%ebp),%eax 84 0.2482 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805398b: shl $0x2,%eax 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805398e: add 0x4(%edx),%eax 138 0.4078 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053991: add $0x20,%eax 26 0.0768 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053994: flds 0xffffffc4(%ebp) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053997: fadds 0xffffffe0(%ebp) 34 0.1005 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805399a: fadds 0xffffffd0(%ebp) 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805399d: fstps (%eax) : pe->va[num_va+11] = tmp + left[2] - up[2]; 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805399f: mov 0x8(%ebp),%edx 139 0.4107 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539a2: mov 0xffffffbc(%ebp),%eax : 80539a5: shl $0x2,%eax : 80539a8: add 0x4(%edx),%eax 154 0.4550 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539ab: add $0x2c,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539ae: flds 0xffffffc4(%ebp) 22 0.0650 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539b1: fadds 0xffffffe0(%ebp) 37 0.1093 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539b4: fsubs 0xffffffd0(%ebp) : 80539b7: fstps (%eax) : : pe->cl[num_cl+ 3] = 63 0.1862 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539b9: mov 0x8(%ebp),%edx 37 0.1093 1 0.1124 0 0.0e+00 0 0.0e+00 : 80539bc: mov 0xffffffb8(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539bf: shl $0x2,%eax 191 0.5644 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539c2: add 0x8(%edx),%eax 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539c5: lea 0xc(%eax),%ebx : 80539c8: mov 0x8(%ebp),%edx 34 0.1005 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539cb: mov 0xffffffb8(%ebp),%eax 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539ce: shl $0x2,%eax : 80539d1: add 0x8(%edx),%eax 65 0.1921 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539d4: lea 0x1c(%eax),%esi 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539d7: mov 0x8(%ebp),%edx : 80539da: mov 0xffffffb8(%ebp),%eax 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539dd: shl $0x2,%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539e0: add 0x8(%edx),%eax : 80539e3: lea 0x2c(%eax),%ecx 137 0.4048 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539e6: mov 0x8(%ebp),%edx 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539e9: mov 0xffffffb8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539ec: shl $0x2,%eax 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539ef: add 0x8(%edx),%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539f2: lea 0x3c(%eax),%edx : 80539f5: mov 0x8(%ebp),%eax 68 0.2009 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539f8: mov 0x28(%eax),%eax 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539fb: mov %eax,(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539fd: mov %eax,(%ecx) 97 0.2866 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80539ff: mov %eax,(%esi) 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053a01: mov %eax,(%ebx) : pe->cl[num_cl+ 7] = : pe->cl[num_cl+11] = : pe->cl[num_cl+15] = pe->alpha; : : num_va += 12; : 8053a03: lea 0xffffffbc(%ebp),%eax 101 0.2984 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053a06: addl $0xc,(%eax) : num_cl += 16; 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053a09: lea 0xffffffb8(%ebp),%eax : 8053a0c: addl $0x10,(%eax) 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053a0f: lea 0xffffffc0(%ebp),%eax 43 0.1271 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053a12: incl (%eax) : 8053a14: lea 0xfffffff4(%ebp),%eax : 8053a17: addl $0x20,(%eax) 32 0.0946 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053a1a: jmp 80537f7 : } : : pe->size += pe->growth * g_frametime; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053a1f: mov 0x8(%ebp),%edx 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8053a22: mov 0x8(%ebp),%eax : 8053a25: flds 0x34(%eax) : 8053a28: mov 0x8(%ebp),%eax : 8053a2b: flds 0x24(%eax) : 8053a2e: fmull 0x805a968 : 8053a34: faddp %st,%st(1) : 8053a36: fstps 0x34(%edx) : pe->alpha -= pe->fade * g_frametime; : 8053a39: mov 0x8(%ebp),%edx : 8053a3c: mov 0x8(%ebp),%eax : 8053a3f: flds 0x28(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053a42: mov 0x8(%ebp),%eax : 8053a45: flds 0x2c(%eax) : 8053a48: fmull 0x805a968 : 8053a4e: fsubrp %st,%st(1) : 8053a50: fstps 0x28(%edx) : : if (pe->life < g_time || pe->alpha <= 0) : 8053a53: mov 0x8(%ebp),%eax : 8053a56: flds 0x30(%eax) : 8053a59: fldl 0x805aa00 : 8053a5f: fucompp : 8053a61: fnstsw %ax : 8053a63: sahf : 8053a64: ja 8053a77 : 8053a66: mov 0x8(%ebp),%eax : 8053a69: flds 0x28(%eax) : 8053a6c: fldz : 8053a6e: fucompp : 8053a70: fnstsw %ax : 8053a72: sahf : 8053a73: jae 8053a77 : 8053a75: jmp 8053a9e : { : Mem_Free (pe->particle); : 8053a77: movl $0x66,0x8(%esp,1) : 8053a7f: movl $0x8058d00,0x4(%esp,1) : 8053a87: mov 0x8(%ebp),%eax : 8053a8a: mov (%eax),%eax : 8053a8c: mov %eax,(%esp,1) : 8053a8f: call 804b4e7 <_Mem_Free> : pe->active = false; : 8053a94: mov 0x8(%ebp),%eax : 8053a97: movl $0x0,0x40(%eax) : } :} : 8053a9e: add $0x60,%esp 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053aa1: pop %ebx : 8053aa2: pop %esi : 8053aa3: pop %ebp : 8053aa4: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08053aa5 : /* ParticleEffect_Explosion_Smoke_Frame total: 8534 25.2164 300 33.7079 2 1.4286 2 1.8868 */ :ParticleEffect_Explosion_Smoke_Frame :==================================== :*/ :void ParticleEffect_Explosion_Smoke_Frame (struct ParticleEffect *pe, matrix4x4_t camera) :{ : 8053aa5: push %ebp 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053aa6: mov %esp,%ebp : 8053aa8: push %esi : 8053aa9: push %ebx : 8053aaa: sub $0x60,%esp : Particle* p; : Nfloat left[3], up[3], tmp; : NUint32 i, num_va, num_cl; : : left[0] = camera.m[0][1] * pe->size; : 8053aad: mov 0x8(%ebp),%eax : 8053ab0: flds 0x34(%eax) : 8053ab3: fmull 0x14(%ebp) : 8053ab6: fstps 0xffffffd8(%ebp) : left[1] = camera.m[1][1] * pe->size; : 8053ab9: mov 0x8(%ebp),%eax : 8053abc: flds 0x34(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053abf: fmull 0x34(%ebp) : 8053ac2: fstps 0xffffffdc(%ebp) : left[2] = camera.m[2][1] * pe->size; : 8053ac5: mov 0x8(%ebp),%eax : 8053ac8: flds 0x34(%eax) : 8053acb: fmull 0x54(%ebp) : 8053ace: fstps 0xffffffe0(%ebp) : : up[0] = camera.m[0][2] * pe->size; : 8053ad1: mov 0x8(%ebp),%eax : 8053ad4: flds 0x34(%eax) : 8053ad7: fmull 0x1c(%ebp) : 8053ada: fstps 0xffffffc8(%ebp) : up[1] = camera.m[1][2] * pe->size; : 8053add: mov 0x8(%ebp),%eax : 8053ae0: flds 0x34(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ae3: fmull 0x3c(%ebp) : 8053ae6: fstps 0xffffffcc(%ebp) : up[2] = camera.m[2][2] * pe->size; : 8053ae9: mov 0x8(%ebp),%eax : 8053aec: flds 0x34(%eax) : 8053aef: fmull 0x5c(%ebp) : 8053af2: fstps 0xffffffd0(%ebp) : : num_va = 0; : 8053af5: movl $0x0,0xffffffbc(%ebp) : num_cl = 0; : 8053afc: movl $0x0,0xffffffb8(%ebp) : : for (i=0, p = pe->particle; inumparticles; i++, p++) 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b03: movl $0x0,0xffffffc0(%ebp) : 8053b0a: mov 0x8(%ebp),%eax : 8053b0d: mov (%eax),%eax : 8053b0f: mov %eax,0xfffffff4(%ebp) 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b12: mov 0x8(%ebp),%edx 16 0.0473 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053b15: mov 0xffffffc0(%ebp),%eax : 8053b18: cmp 0x38(%edx),%eax 137 0.4048 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b1b: jb 8053b22 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b1d: jmp 8053d3a : { : p->origin[0] += p->vel[0] * g_frametime; 77 0.2275 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b22: mov 0xfffffff4(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b25: mov 0xfffffff4(%ebp),%eax 18 0.0532 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b28: flds (%eax) 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b2a: mov 0xfffffff4(%ebp),%eax : 8053b2d: flds 0xc(%eax) 23 0.0680 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b30: fmull 0x805a968 56 0.1655 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b36: faddp %st,%st(1) : 8053b38: fstps (%edx) : tmp = pe->origin[0] + p->origin[0]; 18 0.0532 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b3a: mov 0x8(%ebp),%eax 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b3d: mov 0xfffffff4(%ebp),%edx : 8053b40: flds 0xc(%eax) 81 0.2393 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b43: fadds (%edx) 32 0.0946 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b45: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 0] = tmp - left[0] - up[0]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b48: mov 0x8(%ebp),%edx 111 0.3280 2 0.2247 0 0.0e+00 0 0.0e+00 : 8053b4b: mov 0xffffffbc(%ebp),%eax 78 0.2305 46 5.1685 0 0.0e+00 0 0.0e+00 : 8053b4e: lea 0x0(,%eax,4),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b55: mov 0x4(%edx),%eax 99 0.2925 73 8.2022 0 0.0e+00 0 0.0e+00 : 8053b58: flds 0xffffffc4(%ebp) 76 0.2246 3 0.3371 0 0.0e+00 0 0.0e+00 : 8053b5b: fsubs 0xffffffd8(%ebp) : 8053b5e: fsubs 0xffffffc8(%ebp) 52 0.1537 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b61: fstps (%eax,%ecx,1) : pe->va[num_va+ 3] = tmp - left[0] + up[0]; 20 0.0591 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b64: mov 0x8(%ebp),%edx : 8053b67: mov 0xffffffbc(%ebp),%eax 83 0.2453 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b6a: shl $0x2,%eax 71 0.2098 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053b6d: add 0x4(%edx),%eax : 8053b70: add $0xc,%eax 36 0.1064 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b73: flds 0xffffffc4(%ebp) 22 0.0650 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b76: fsubs 0xffffffd8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b79: fadds 0xffffffc8(%ebp) 69 0.2039 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053b7c: fstps (%eax) : pe->va[num_va+ 6] = tmp + left[0] + up[0]; 52 0.1537 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053b7e: mov 0x8(%ebp),%edx 2 0.0059 0 0.0e+00 1 0.7143 0 0.0e+00 : 8053b81: mov 0xffffffbc(%ebp),%eax 49 0.1448 10 1.1236 0 0.0e+00 0 0.0e+00 : 8053b84: shl $0x2,%eax 130 0.3841 38 4.2697 0 0.0e+00 0 0.0e+00 : 8053b87: add 0x4(%edx),%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b8a: add $0x18,%eax 77 0.2275 6 0.6742 0 0.0e+00 0 0.0e+00 : 8053b8d: flds 0xffffffc4(%ebp) 20 0.0591 6 0.6742 0 0.0e+00 0 0.0e+00 : 8053b90: fadds 0xffffffd8(%ebp) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b93: fadds 0xffffffc8(%ebp) 692 2.0447 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b96: fstps (%eax) : pe->va[num_va+ 9] = tmp + left[0] - up[0]; 229 0.6767 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b98: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b9b: mov 0xffffffbc(%ebp),%eax 67 0.1980 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053b9e: shl $0x2,%eax 69 0.2039 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ba1: add 0x4(%edx),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ba4: add $0x24,%eax 51 0.1507 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ba7: flds 0xffffffc4(%ebp) 18 0.0532 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053baa: fadds 0xffffffd8(%ebp) : 8053bad: fsubs 0xffffffc8(%ebp) 67 0.1980 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bb0: fstps (%eax) : : p->origin[1] += p->vel[1] * g_frametime; 65 0.1921 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bb2: mov 0xfffffff4(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bb5: mov 0xfffffff4(%ebp),%eax 76 0.2246 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bb8: flds 0x4(%eax) 175 0.5171 5 0.5618 0 0.0e+00 1 0.9434 : 8053bbb: mov 0xfffffff4(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bbe: flds 0x10(%eax) 157 0.4639 2 0.2247 0 0.0e+00 0 0.0e+00 : 8053bc1: fmull 0x805a968 43 0.1271 2 0.2247 0 0.0e+00 0 0.0e+00 : 8053bc7: faddp %st,%st(1) : 8053bc9: fstps 0x4(%edx) : tmp = pe->origin[1] + p->origin[1]; 51 0.1507 22 2.4719 0 0.0e+00 0 0.0e+00 : 8053bcc: mov 0x8(%ebp),%eax 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bcf: mov 0xfffffff4(%ebp),%edx 11 0.0325 4 0.4494 0 0.0e+00 0 0.0e+00 : 8053bd2: flds 0x10(%eax) 81 0.2393 3 0.3371 0 0.0e+00 0 0.0e+00 : 8053bd5: fadds 0x4(%edx) 63 0.1862 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bd8: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 1] = tmp - left[1] - up[1]; 27 0.0798 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bdb: mov 0x8(%ebp),%edx 82 0.2423 3 0.3371 0 0.0e+00 0 0.0e+00 : 8053bde: mov 0xffffffbc(%ebp),%eax 85 0.2512 22 2.4719 0 0.0e+00 0 0.0e+00 : 8053be1: shl $0x2,%eax 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053be4: add 0x4(%edx),%eax 44 0.1300 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053be7: add $0x4,%eax 53 0.1566 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053bea: flds 0xffffffc4(%ebp) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bed: fsubs 0xffffffdc(%ebp) 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bf0: fsubs 0xffffffcc(%ebp) 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bf3: fstps (%eax) : pe->va[num_va+ 4] = tmp - left[1] + up[1]; 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053bf5: mov 0x8(%ebp),%edx 71 0.2098 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053bf8: mov 0xffffffbc(%ebp),%eax 73 0.2157 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053bfb: shl $0x2,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 1 0.9434 : 8053bfe: add 0x4(%edx),%eax 34 0.1005 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c01: add $0x10,%eax 23 0.0680 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c04: flds 0xffffffc4(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c07: fsubs 0xffffffdc(%ebp) 25 0.0739 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c0a: fadds 0xffffffcc(%ebp) 52 0.1537 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c0d: fstps (%eax) : pe->va[num_va+ 7] = tmp + left[1] + up[1]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c0f: mov 0x8(%ebp),%edx 98 0.2896 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c12: mov 0xffffffbc(%ebp),%eax 60 0.1773 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c15: shl $0x2,%eax : 8053c18: add 0x4(%edx),%eax 90 0.2659 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053c1b: add $0x1c,%eax 68 0.2009 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c1e: flds 0xffffffc4(%ebp) : 8053c21: fadds 0xffffffdc(%ebp) 38 0.1123 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c24: fadds 0xffffffcc(%ebp) 56 0.1655 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c27: fstps (%eax) : pe->va[num_va+10] = tmp + left[1] - up[1]; : 8053c29: mov 0x8(%ebp),%edx 136 0.4019 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053c2c: mov 0xffffffbc(%ebp),%eax 146 0.4314 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c2f: shl $0x2,%eax 75 0.2216 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c32: add 0x4(%edx),%eax 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c35: add $0x28,%eax 71 0.2098 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c38: flds 0xffffffc4(%ebp) 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c3b: fadds 0xffffffdc(%ebp) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c3e: fsubs 0xffffffcc(%ebp) 42 0.1241 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c41: fstps (%eax) : : p->origin[2] += p->vel[2] * g_frametime; 60 0.1773 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053c43: mov 0xfffffff4(%ebp),%edx 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c46: mov 0xfffffff4(%ebp),%eax 52 0.1537 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c49: flds 0x8(%eax) 102 0.3014 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c4c: mov 0xfffffff4(%ebp),%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c4f: flds 0x14(%eax) 71 0.2098 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c52: fmull 0x805a968 61 0.1802 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c58: faddp %st,%st(1) 45 0.1330 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c5a: fstps 0x8(%edx) : tmp = pe->origin[2] + p->origin[2]; 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c5d: mov 0x8(%ebp),%eax 34 0.1005 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c60: mov 0xfffffff4(%ebp),%edx 39 0.1152 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c63: flds 0x14(%eax) 25 0.0739 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c66: fadds 0x8(%edx) 51 0.1507 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c69: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 2] = tmp - left[2] - up[2]; 63 0.1862 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c6c: mov 0x8(%ebp),%edx 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c6f: mov 0xffffffbc(%ebp),%eax 71 0.2098 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c72: shl $0x2,%eax 83 0.2453 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c75: add 0x4(%edx),%eax 15 0.0443 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c78: add $0x8,%eax 76 0.2246 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c7b: flds 0xffffffc4(%ebp) 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c7e: fsubs 0xffffffe0(%ebp) 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c81: fsubs 0xffffffd0(%ebp) 36 0.1064 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c84: fstps (%eax) : pe->va[num_va+ 5] = tmp - left[2] + up[2]; 20 0.0591 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c86: mov 0x8(%ebp),%edx 22 0.0650 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c89: mov 0xffffffbc(%ebp),%eax 72 0.2127 29 3.2584 0 0.0e+00 0 0.0e+00 : 8053c8c: shl $0x2,%eax 44 0.1300 11 1.2360 0 0.0e+00 0 0.0e+00 : 8053c8f: add 0x4(%edx),%eax 15 0.0443 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c92: add $0x14,%eax 27 0.0798 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c95: flds 0xffffffc4(%ebp) 18 0.0532 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c98: fsubs 0xffffffe0(%ebp) 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c9b: fadds 0xffffffd0(%ebp) 52 0.1537 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053c9e: fstps (%eax) : pe->va[num_va+ 8] = tmp + left[2] + up[2]; 45 0.1330 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ca0: mov 0x8(%ebp),%edx 39 0.1152 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ca3: mov 0xffffffbc(%ebp),%eax 41 0.1211 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ca6: shl $0x2,%eax 68 0.2009 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ca9: add 0x4(%edx),%eax 31 0.0916 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cac: add $0x20,%eax 78 0.2305 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053caf: flds 0xffffffc4(%ebp) 20 0.0591 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cb2: fadds 0xffffffe0(%ebp) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cb5: fadds 0xffffffd0(%ebp) 56 0.1655 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cb8: fstps (%eax) : pe->va[num_va+11] = tmp + left[2] - up[2]; 57 0.1684 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cba: mov 0x8(%ebp),%edx 46 0.1359 0 0.0e+00 1 0.7143 0 0.0e+00 : 8053cbd: mov 0xffffffbc(%ebp),%eax 37 0.1093 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cc0: shl $0x2,%eax 59 0.1743 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cc3: add 0x4(%edx),%eax 26 0.0768 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cc6: add $0x2c,%eax 76 0.2246 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cc9: flds 0xffffffc4(%ebp) 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ccc: fadds 0xffffffe0(%ebp) 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ccf: fsubs 0xffffffd0(%ebp) 46 0.1359 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cd2: fstps (%eax) : : pe->cl[num_cl+ 3] = 58 0.1714 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cd4: mov 0x8(%ebp),%edx 40 0.1182 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cd7: mov 0xffffffb8(%ebp),%eax 149 0.4403 2 0.2247 0 0.0e+00 0 0.0e+00 : 8053cda: shl $0x2,%eax 137 0.4048 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cdd: add 0x8(%edx),%eax 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ce0: lea 0xc(%eax),%ebx 60 0.1773 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ce3: mov 0x8(%ebp),%edx 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ce6: mov 0xffffffb8(%ebp),%eax 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053ce9: shl $0x2,%eax 72 0.2127 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cec: add 0x8(%edx),%eax 20 0.0591 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cef: lea 0x1c(%eax),%esi 18 0.0532 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cf2: mov 0x8(%ebp),%edx 27 0.0798 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cf5: mov 0xffffffb8(%ebp),%eax 26 0.0768 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cf8: shl $0x2,%eax 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cfb: add 0x8(%edx),%eax 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053cfe: lea 0x2c(%eax),%ecx 42 0.1241 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d01: mov 0x8(%ebp),%edx 25 0.0739 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d04: mov 0xffffffb8(%ebp),%eax 52 0.1537 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d07: shl $0x2,%eax 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d0a: add 0x8(%edx),%eax 15 0.0443 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d0d: lea 0x3c(%eax),%edx 41 0.1211 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d10: mov 0x8(%ebp),%eax 29 0.0857 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d13: mov 0x28(%eax),%eax 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d16: mov %eax,(%edx) 45 0.1330 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d18: mov %eax,(%ecx) 55 0.1625 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d1a: mov %eax,(%esi) 64 0.1891 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d1c: mov %eax,(%ebx) : pe->cl[num_cl+ 7] = : pe->cl[num_cl+11] = : pe->cl[num_cl+15] = pe->alpha; : : num_va += 12; 68 0.2009 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d1e: lea 0xffffffbc(%ebp),%eax 103 0.3043 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d21: addl $0xc,(%eax) : num_cl += 16; 22 0.0650 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d24: lea 0xffffffb8(%ebp),%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d27: addl $0x10,(%eax) 31 0.0916 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d2a: lea 0xffffffc0(%ebp),%eax 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d2d: incl (%eax) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d2f: lea 0xfffffff4(%ebp),%eax 89 0.2630 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d32: addl $0x20,(%eax) : 8053d35: jmp 8053b12 : } : : pe->alpha -= pe->fade * g_frametime; 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d3a: mov 0x8(%ebp),%edx : 8053d3d: mov 0x8(%ebp),%eax : 8053d40: flds 0x28(%eax) : 8053d43: mov 0x8(%ebp),%eax : 8053d46: flds 0x2c(%eax) : 8053d49: fmull 0x805a968 : 8053d4f: fsubrp %st,%st(1) : 8053d51: fstps 0x28(%edx) : : if (pe->life < g_time || pe->alpha <= 0) : 8053d54: mov 0x8(%ebp),%eax : 8053d57: flds 0x30(%eax) : 8053d5a: fldl 0x805aa00 : 8053d60: fucompp : 8053d62: fnstsw %ax : 8053d64: sahf 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d65: ja 8053d78 : 8053d67: mov 0x8(%ebp),%eax : 8053d6a: flds 0x28(%eax) : 8053d6d: fldz : 8053d6f: fucompp : 8053d71: fnstsw %ax : 8053d73: sahf : 8053d74: jae 8053d78 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053d76: jmp 8053d9f : { : Mem_Free (pe->particle); : 8053d78: movl $0xa5,0x8(%esp,1) : 8053d80: movl $0x8058d00,0x4(%esp,1) : 8053d88: mov 0x8(%ebp),%eax : 8053d8b: mov (%eax),%eax : 8053d8d: mov %eax,(%esp,1) : 8053d90: call 804b4e7 <_Mem_Free> : pe->active = false; : 8053d95: mov 0x8(%ebp),%eax : 8053d98: movl $0x0,0x40(%eax) : } :} : 8053d9f: add $0x60,%esp 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053da2: pop %ebx : 8053da3: pop %esi : 8053da4: pop %ebp : 8053da5: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080547d0 : /* ParticleEffect_Rain_Drop_Frame total: 7276 21.4993 145 16.2921 14 10.0000 6 5.6604 */ :ParticleEffect_Rain_Drop_Frame :============================== :*/ :void ParticleEffect_Rain_Drop_Frame (struct ParticleEffect *pe, matrix4x4_t camera) :{ 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80547d0: push %ebp 21 0.0621 0 0.0e+00 0 0.0e+00 1 0.9434 : 80547d1: mov %esp,%ebp : 80547d3: push %ebx : 80547d4: sub $0x44,%esp : Particle* p; : Nfloat left[3], up[3], tmp; : NUint32 i, num_va; : : left[0] = camera.m[0][1] * 0.25f; : 80547d7: fldl 0x14(%ebp) 0 0.0e+00 0 0.0e+00 2 1.4286 0 0.0e+00 : 80547da: fldl 0x8058d68 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80547e0: fmulp %st,%st(1) : 80547e2: fstps 0xffffffd8(%ebp) : left[1] = camera.m[1][1] * 0.25f; : 80547e5: fldl 0x34(%ebp) : 80547e8: fldl 0x8058d68 : 80547ee: fmulp %st,%st(1) : 80547f0: fstps 0xffffffdc(%ebp) : left[2] = camera.m[2][1] * 8.0f; : 80547f3: fldl 0x54(%ebp) : 80547f6: fldl 0x8058d70 : 80547fc: fmulp %st,%st(1) : 80547fe: fstps 0xffffffe0(%ebp) : : up[0] = camera.m[0][2] * 0.25f; 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054801: fldl 0x1c(%ebp) : 8054804: fldl 0x8058d68 : 805480a: fmulp %st,%st(1) : 805480c: fstps 0xffffffc8(%ebp) : up[1] = camera.m[1][2] * 0.25f; : 805480f: fldl 0x3c(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054812: fldl 0x8058d68 : 8054818: fmulp %st,%st(1) : 805481a: fstps 0xffffffcc(%ebp) : up[2] = camera.m[2][2] * 8.0f; 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805481d: fldl 0x5c(%ebp) : 8054820: fldl 0x8058d70 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054826: fmulp %st,%st(1) : 8054828: fstps 0xffffffd0(%ebp) : : num_va = 0; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805482b: movl $0x0,0xffffffbc(%ebp) : : for (i=0, p=pe->particle; inumparticles; i++, p++) : 8054832: movl $0x0,0xffffffc0(%ebp) : 8054839: mov 0x8(%ebp),%eax : 805483c: mov (%eax),%eax 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805483e: mov %eax,0xfffffff4(%ebp) 30 0.0886 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054841: mov 0x8(%ebp),%edx 28 0.0827 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054844: mov 0xffffffc0(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054847: cmp 0x38(%edx),%eax 27 0.0798 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805484a: jb 8054851 : 805484c: jmp 8054acb : { : p->origin[2] -= 512 * g_frametime; 89 0.2630 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054851: mov 0xfffffff4(%ebp),%edx 21 0.0621 0 0.0e+00 1 0.7143 0 0.0e+00 : 8054854: mov 0xfffffff4(%ebp),%eax 10 0.0295 0 0.0e+00 0 0.0e+00 2 1.8868 : 8054857: flds 0x8(%eax) 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805485a: fldl 0x805a968 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054860: fldl 0x8058d78 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054866: fmulp %st,%st(1) 58 0.1714 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054868: fsubrp %st,%st(1) : 805486a: fstps 0x8(%edx) : : if (p->origin[2] < (pe->origin[2] - 128)) 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805486d: mov 0xfffffff4(%ebp),%edx 22 0.0650 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054870: mov 0x8(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054873: flds 0x14(%eax) 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054876: flds 0x8058d80 82 0.2423 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805487c: fsubrp %st,%st(1) 5 0.0148 0 0.0e+00 3 2.1429 0 0.0e+00 : 805487e: flds 0x8(%edx) 27 0.0798 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054881: fxch %st(1) 23 0.0680 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054883: fucompp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054885: fnstsw %ax 28 0.0827 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054887: sahf 86 0.2541 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054888: ja 805488c 42 0.1241 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805488a: jmp 80548ef : { : p->origin[0] = Random (-128, 128); : 805488c: mov 0xfffffff4(%ebp),%ebx 45 0.1330 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805488f: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054894: and $0x7fff,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054899: push %eax : 805489a: fildl (%esp,1) : 805489d: lea 0x4(%esp,1),%esp : 80548a1: flds 0x8058d84 : 80548a7: fmulp %st,%st(1) : 80548a9: flds 0x8058d88 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548af: faddp %st,%st(1) : 80548b1: fstps (%ebx) : p->origin[1] = Random (-128, 128); : 80548b3: mov 0xfffffff4(%ebp),%ebx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548b6: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548bb: and $0x7fff,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548c0: push %eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548c1: fildl (%esp,1) : 80548c4: lea 0x4(%esp,1),%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548c8: flds 0x8058d84 : 80548ce: fmulp %st,%st(1) : 80548d0: flds 0x8058d88 : 80548d6: faddp %st,%st(1) : 80548d8: fstps 0x4(%ebx) : p->origin[2] += 256; : 80548db: mov 0xfffffff4(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548de: mov 0xfffffff4(%ebp),%eax : 80548e1: flds 0x8(%eax) : 80548e4: flds 0x8058d8c : 80548ea: faddp %st,%st(1) : 80548ec: fstps 0x8(%edx) : } : : tmp = pe->origin[0] + p->origin[0]; 45 0.1330 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548ef: mov 0x8(%ebp),%eax 46 0.1359 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548f2: mov 0xfffffff4(%ebp),%edx : 80548f5: flds 0xc(%eax) : 80548f8: fadds (%edx) 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548fa: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 0] = tmp - left[0] - up[0]; 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80548fd: mov 0x8(%ebp),%edx : 8054900: mov 0xffffffbc(%ebp),%eax 165 0.4875 1 0.1124 0 0.0e+00 0 0.0e+00 : 8054903: lea 0x0(,%eax,4),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805490a: mov 0x4(%edx),%eax : 805490d: flds 0xffffffc4(%ebp) 53 0.1566 1 0.1124 0 0.0e+00 0 0.0e+00 : 8054910: fsubs 0xffffffd8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054913: fsubs 0xffffffc8(%ebp) : 8054916: fstps (%eax,%ecx,1) : pe->va[num_va+ 3] = pe->origin[0] + p->origin[0] - left[0] + up[0]; 116 0.3428 27 3.0337 0 0.0e+00 1 0.9434 : 8054919: mov 0x8(%ebp),%edx : 805491c: mov 0xffffffbc(%ebp),%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805491f: shl $0x2,%eax 193 0.5703 21 2.3596 0 0.0e+00 0 0.0e+00 : 8054922: add 0x4(%edx),%eax : 8054925: lea 0xc(%eax),%ecx : 8054928: mov 0x8(%ebp),%eax 43 0.1271 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805492b: mov 0xfffffff4(%ebp),%edx : 805492e: flds 0xc(%eax) 54 0.1596 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054931: fadds (%edx) 119 0.3516 0 0.0e+00 0 0.0e+00 1 0.9434 : 8054933: fsubs 0xffffffd8(%ebp) : 8054936: fadds 0xffffffc8(%ebp) 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054939: fstps (%ecx) : pe->va[num_va+ 6] = pe->origin[0] + p->origin[0] + left[0] + up[0]; 60 0.1773 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805493b: mov 0x8(%ebp),%edx 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805493e: mov 0xffffffbc(%ebp),%eax 31 0.0916 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054941: shl $0x2,%eax 75 0.2216 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054944: add 0x4(%edx),%eax : 8054947: lea 0x18(%eax),%ecx 46 0.1359 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805494a: mov 0x8(%ebp),%eax 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805494d: mov 0xfffffff4(%ebp),%edx : 8054950: flds 0xc(%eax) 47 0.1389 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054953: fadds (%edx) 131 0.3871 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054955: fadds 0xffffffd8(%ebp) : 8054958: fadds 0xffffffc8(%ebp) 66 0.1950 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805495b: fstps (%ecx) : pe->va[num_va+ 9] = pe->origin[0] + p->origin[0] + left[0] - up[0]; 152 0.4491 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805495d: mov 0x8(%ebp),%edx : 8054960: mov 0xffffffbc(%ebp),%eax 90 0.2659 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054963: shl $0x2,%eax 112 0.3309 1 0.1124 0 0.0e+00 0 0.0e+00 : 8054966: add 0x4(%edx),%eax : 8054969: lea 0x24(%eax),%ecx 36 0.1064 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805496c: mov 0x8(%ebp),%eax 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805496f: mov 0xfffffff4(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054972: flds 0xc(%eax) 200 0.5910 1 0.1124 0 0.0e+00 0 0.0e+00 : 8054975: fadds (%edx) 370 1.0933 24 2.6966 0 0.0e+00 0 0.0e+00 : 8054977: fadds 0xffffffd8(%ebp) 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805497a: fsubs 0xffffffc8(%ebp) 90 0.2659 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805497d: fstps (%ecx) : : tmp = pe->origin[1] + p->origin[1]; 189 0.5585 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805497f: mov 0x8(%ebp),%eax 49 0.1448 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054982: mov 0xfffffff4(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054985: flds 0x10(%eax) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054988: fadds 0x4(%edx) 73 0.2157 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805498b: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 1] = pe->origin[1] + p->origin[1] - left[1] - up[1]; 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805498e: mov 0x8(%ebp),%edx 93 0.2748 1 0.1124 0 0.0e+00 0 0.0e+00 : 8054991: mov 0xffffffbc(%ebp),%eax 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054994: shl $0x2,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054997: add 0x4(%edx),%eax 32 0.0946 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805499a: lea 0x4(%eax),%ecx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805499d: mov 0x8(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549a0: mov 0xfffffff4(%ebp),%edx 66 0.1950 3 0.3371 0 0.0e+00 0 0.0e+00 : 80549a3: flds 0x10(%eax) 8 0.0236 0 0.0e+00 0 0.0e+00 1 0.9434 : 80549a6: fadds 0x4(%edx) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549a9: fsubs 0xffffffdc(%ebp) 107 0.3162 27 3.0337 0 0.0e+00 0 0.0e+00 : 80549ac: fsubs 0xffffffcc(%ebp) 18 0.0532 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549af: fstps (%ecx) : pe->va[num_va+ 4] = pe->origin[1] + p->origin[1] - left[1] + up[1]; 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549b1: mov 0x8(%ebp),%edx 76 0.2246 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549b4: mov 0xffffffbc(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549b7: shl $0x2,%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549ba: add 0x4(%edx),%eax 100 0.2955 0 0.0e+00 1 0.7143 0 0.0e+00 : 80549bd: lea 0x10(%eax),%ecx 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549c0: mov 0x8(%ebp),%eax 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549c3: mov 0xfffffff4(%ebp),%edx 32 0.0946 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549c6: flds 0x10(%eax) 16 0.0473 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549c9: fadds 0x4(%edx) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549cc: fsubs 0xffffffdc(%ebp) 184 0.5437 1 0.1124 0 0.0e+00 0 0.0e+00 : 80549cf: fadds 0xffffffcc(%ebp) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549d2: fstps (%ecx) : pe->va[num_va+ 7] = pe->origin[1] + p->origin[1] + left[1] + up[1]; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549d4: mov 0x8(%ebp),%edx 65 0.1921 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549d7: mov 0xffffffbc(%ebp),%eax 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549da: shl $0x2,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549dd: add 0x4(%edx),%eax 105 0.3103 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549e0: lea 0x1c(%eax),%ecx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549e3: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549e6: mov 0xfffffff4(%ebp),%edx 27 0.0798 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549e9: flds 0x10(%eax) 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549ec: fadds 0x4(%edx) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549ef: fadds 0xffffffdc(%ebp) 347 1.0253 0 0.0e+00 1 0.7143 0 0.0e+00 : 80549f2: fadds 0xffffffcc(%ebp) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549f5: fstps (%ecx) : pe->va[num_va+10] = pe->origin[1] + p->origin[1] + left[1] - up[1]; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549f7: mov 0x8(%ebp),%edx 78 0.2305 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549fa: mov 0xffffffbc(%ebp),%eax 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80549fd: shl $0x2,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a00: add 0x4(%edx),%eax 121 0.3575 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a03: lea 0x28(%eax),%ecx 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a06: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 1 0.7143 0 0.0e+00 : 8054a09: mov 0xfffffff4(%ebp),%edx 38 0.1123 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a0c: flds 0x10(%eax) 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a0f: fadds 0x4(%edx) 100 0.2955 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a12: fadds 0xffffffdc(%ebp) : 8054a15: fsubs 0xffffffcc(%ebp) 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a18: fstps (%ecx) : : tmp = pe->origin[2] + p->origin[2]; 70 0.2068 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a1a: mov 0x8(%ebp),%eax : 8054a1d: mov 0xfffffff4(%ebp),%edx 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a20: flds 0x14(%eax) 104 0.3073 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a23: fadds 0x8(%edx) : 8054a26: fstps 0xffffffc4(%ebp) : pe->va[num_va+ 2] = pe->origin[2] + p->origin[2] - left[2] - up[2]; 16 0.0473 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a29: mov 0x8(%ebp),%edx 111 0.3280 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a2c: mov 0xffffffbc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a2f: shl $0x2,%eax 57 0.1684 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a32: add 0x4(%edx),%eax : 8054a35: lea 0x8(%eax),%ecx : 8054a38: mov 0x8(%ebp),%eax 31 0.0916 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a3b: mov 0xfffffff4(%ebp),%edx 4 0.0118 0 0.0e+00 2 1.4286 0 0.0e+00 : 8054a3e: flds 0x14(%eax) 38 0.1123 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a41: fadds 0x8(%edx) : 8054a44: fsubs 0xffffffe0(%ebp) : 8054a47: fsubs 0xffffffd0(%ebp) 137 0.4048 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a4a: fstps (%ecx) : pe->va[num_va+ 5] = pe->origin[2] + p->origin[2] - left[2] + up[2]; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a4c: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a4f: mov 0xffffffbc(%ebp),%eax 71 0.2098 0 0.0e+00 1 0.7143 0 0.0e+00 : 8054a52: shl $0x2,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a55: add 0x4(%edx),%eax : 8054a58: lea 0x14(%eax),%ecx 124 0.3664 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a5b: mov 0x8(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a5e: mov 0xfffffff4(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a61: flds 0x14(%eax) 103 0.3043 22 2.4719 0 0.0e+00 0 0.0e+00 : 8054a64: fadds 0x8(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a67: fsubs 0xffffffe0(%ebp) 18 0.0532 13 1.4607 0 0.0e+00 0 0.0e+00 : 8054a6a: fadds 0xffffffd0(%ebp) 73 0.2157 1 0.1124 0 0.0e+00 0 0.0e+00 : 8054a6d: fstps (%ecx) : pe->va[num_va+ 8] = pe->origin[2] + p->origin[2] + left[2] + up[2]; : 8054a6f: mov 0x8(%ebp),%edx 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a72: mov 0xffffffbc(%ebp),%eax 87 0.2571 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a75: shl $0x2,%eax : 8054a78: add 0x4(%edx),%eax 35 0.1034 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a7b: lea 0x20(%eax),%ecx 52 0.1537 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a7e: mov 0x8(%ebp),%eax 2 0.0059 0 0.0e+00 2 1.4286 0 0.0e+00 : 8054a81: mov 0xfffffff4(%ebp),%edx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a84: flds 0x14(%eax) 98 0.2896 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a87: fadds 0x8(%edx) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a8a: fadds 0xffffffe0(%ebp) 28 0.0827 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a8d: fadds 0xffffffd0(%ebp) 58 0.1714 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a90: fstps (%ecx) : pe->va[num_va+11] = pe->origin[2] + p->origin[2] + left[2] - up[2]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a92: mov 0x8(%ebp),%edx 20 0.0591 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a95: mov 0xffffffbc(%ebp),%eax 54 0.1596 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a98: shl $0x2,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a9b: add 0x4(%edx),%eax 30 0.0886 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054a9e: lea 0x2c(%eax),%ecx 42 0.1241 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054aa1: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054aa4: mov 0xfffffff4(%ebp),%edx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054aa7: flds 0x14(%eax) 146 0.4314 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054aaa: fadds 0x8(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054aad: fadds 0xffffffe0(%ebp) 61 0.1802 1 0.1124 0 0.0e+00 0 0.0e+00 : 8054ab0: fsubs 0xffffffd0(%ebp) 63 0.1862 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ab3: fstps (%ecx) : : num_va += 12; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ab5: lea 0xffffffbc(%ebp),%eax 19 0.0561 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ab8: addl $0xc,(%eax) 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054abb: lea 0xffffffc0(%ebp),%eax : 8054abe: incl (%eax) 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ac0: lea 0xfffffff4(%ebp),%eax 88 0.2600 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ac3: addl $0x20,(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ac6: jmp 8054841 : } :} 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054acb: add $0x44,%esp : 8054ace: pop %ebx : 8054acf: pop %ebp : 8054ad0: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08054ad1 : /* ParticleEffect_Rain_Splash_Frame total: 4275 12.6319 130 14.6067 6 4.2857 5 4.7170 */ :ParticleEffect_Rain_Splash_Frame :================================ :*/ :void ParticleEffect_Rain_Splash_Frame (struct ParticleEffect *pe, UNUSED matrix4x4_t camera) :{ : 8054ad1: push %ebp 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ad2: mov %esp,%ebp : 8054ad4: push %edi 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8054ad5: push %esi : 8054ad6: push %ebx : 8054ad7: sub $0x1c,%esp : Particle* p; : Nfloat tmp; : NUint32 i, num_va, num_cl; : : num_va = 0; : 8054ada: movl $0x0,0xffffffe4(%ebp) : num_cl = 0; : 8054ae1: movl $0x0,0xffffffe0(%ebp) : : for (i=0, p=pe->particle; inumparticles; i++, p++) : 8054ae8: movl $0x0,0xffffffe8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054aef: mov 0x8(%ebp),%eax : 8054af2: mov (%eax),%eax : 8054af4: mov %eax,0xfffffff0(%ebp) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054af7: mov 0x8(%ebp),%edx 41 0.1211 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054afa: mov 0xffffffe8(%ebp),%eax : 8054afd: cmp 0x38(%edx),%eax : 8054b00: jb 8054b07 : 8054b02: jmp 8054d69 : { : tmp = pe->origin[0] + p->origin[0]; 55 0.1625 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b07: mov 0x8(%ebp),%eax 16 0.0473 0 0.0e+00 1 0.7143 0 0.0e+00 : 8054b0a: mov 0xfffffff0(%ebp),%edx : 8054b0d: flds 0xc(%eax) : 8054b10: fadds (%edx) 16 0.0473 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b12: fstps 0xffffffec(%ebp) : pe->va[num_va+ 0] = : 8054b15: mov 0x8(%ebp),%edx : 8054b18: mov 0xffffffe4(%ebp),%eax 42 0.1241 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b1b: lea 0x0(,%eax,4),%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b22: mov 0x4(%edx),%ebx : 8054b25: mov 0x8(%ebp),%edx 43 0.1271 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b28: mov 0xffffffe4(%ebp),%eax : 8054b2b: shl $0x2,%eax : 8054b2e: add 0x4(%edx),%eax 61 0.1802 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b31: lea 0x24(%eax),%edx : 8054b34: mov 0xfffffff0(%ebp),%eax : 8054b37: flds 0xffffffec(%ebp) 564 1.6665 2 0.2247 0 0.0e+00 0 0.0e+00 : 8054b3a: fsubs 0x1c(%eax) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b3d: fstps 0xffffffd8(%ebp) : 8054b40: mov 0xffffffd8(%ebp),%eax 38 0.1123 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b43: mov %eax,(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b45: mov %eax,(%ebx,%ecx,1) : pe->va[num_va+ 9] = tmp - p->size; : pe->va[num_va+ 3] = : 8054b48: mov 0x8(%ebp),%edx 71 0.2098 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b4b: mov 0xffffffe4(%ebp),%eax : 8054b4e: shl $0x2,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b51: add 0x4(%edx),%eax 63 0.1862 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b54: lea 0xc(%eax),%ecx : 8054b57: mov 0x8(%ebp),%edx : 8054b5a: mov 0xffffffe4(%ebp),%eax 68 0.2009 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b5d: shl $0x2,%eax : 8054b60: add 0x4(%edx),%eax : 8054b63: lea 0x18(%eax),%edx 85 0.2512 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b66: mov 0xfffffff0(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b69: flds 0xffffffec(%ebp) : 8054b6c: fadds 0x1c(%eax) 85 0.2512 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b6f: fstps 0xffffffd8(%ebp) : 8054b72: mov 0xffffffd8(%ebp),%eax : 8054b75: mov %eax,(%edx) 52 0.1537 0 0.0e+00 0 0.0e+00 1 0.9434 : 8054b77: mov %eax,(%ecx) : pe->va[num_va+ 6] = tmp + p->size; : : tmp = pe->origin[1] + p->origin[1]; 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b79: mov 0x8(%ebp),%eax : 8054b7c: mov 0xfffffff0(%ebp),%edx 114 0.3368 12 1.3483 0 0.0e+00 0 0.0e+00 : 8054b7f: flds 0x10(%eax) 28 0.0827 1 0.1124 1 0.7143 0 0.0e+00 : 8054b82: fadds 0x4(%edx) : 8054b85: fstps 0xffffffec(%ebp) : pe->va[num_va+ 1] = 25 0.0739 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b88: mov 0x8(%ebp),%edx 71 0.2098 37 4.1573 0 0.0e+00 0 0.0e+00 : 8054b8b: mov 0xffffffe4(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b8e: shl $0x2,%eax 65 0.1921 1 0.1124 0 0.0e+00 0 0.0e+00 : 8054b91: add 0x4(%edx),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b94: lea 0x4(%eax),%ecx : 8054b97: mov 0x8(%ebp),%edx 25 0.0739 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054b9a: mov 0xffffffe4(%ebp),%eax : 8054b9d: shl $0x2,%eax : 8054ba0: add 0x4(%edx),%eax 19 0.0561 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ba3: lea 0x10(%eax),%edx : 8054ba6: mov 0xfffffff0(%ebp),%eax : 8054ba9: flds 0xffffffec(%ebp) 37 0.1093 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bac: fsubs 0x1c(%eax) : 8054baf: fstps 0xffffffd8(%ebp) : 8054bb2: mov 0xffffffd8(%ebp),%eax 41 0.1211 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bb5: mov %eax,(%edx) : 8054bb7: mov %eax,(%ecx) : pe->va[num_va+ 4] = tmp - p->size; : pe->va[num_va+ 7] = 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bb9: mov 0x8(%ebp),%edx 70 0.2068 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bbc: mov 0xffffffe4(%ebp),%eax 5 0.0148 0 0.0e+00 1 0.7143 0 0.0e+00 : 8054bbf: shl $0x2,%eax 55 0.1625 0 0.0e+00 1 0.7143 0 0.0e+00 : 8054bc2: add 0x4(%edx),%eax : 8054bc5: lea 0x1c(%eax),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bc8: mov 0x8(%ebp),%edx 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bcb: mov 0xffffffe4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bce: shl $0x2,%eax 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bd1: add 0x4(%edx),%eax 130 0.3841 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bd4: lea 0x28(%eax),%edx 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bd7: mov 0xfffffff0(%ebp),%eax 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bda: flds 0xffffffec(%ebp) 80 0.2364 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bdd: fadds 0x1c(%eax) : 8054be0: fstps 0xffffffd8(%ebp) 30 0.0886 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054be3: mov 0xffffffd8(%ebp),%eax 191 0.5644 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054be6: mov %eax,(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054be8: mov %eax,(%ecx) : pe->va[num_va+10] = tmp + p->size; : : pe->va[num_va+ 2] = 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bea: mov 0x8(%ebp),%edx 61 0.1802 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bed: mov 0xffffffe4(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bf0: shl $0x2,%eax 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bf3: add 0x4(%edx),%eax 57 0.1684 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bf6: lea 0x8(%eax),%esi 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bf9: mov 0x8(%ebp),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bfc: mov 0xffffffe4(%ebp),%eax 40 0.1182 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054bff: shl $0x2,%eax 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c02: add 0x4(%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c05: lea 0x14(%eax),%edi 56 0.1655 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c08: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c0b: mov 0xffffffe4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c0e: shl $0x2,%eax 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c11: add 0x4(%edx),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c14: lea 0x20(%eax),%ebx : 8054c17: mov 0x8(%ebp),%edx 57 0.1684 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c1a: mov 0xffffffe4(%ebp),%eax 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c1d: shl $0x2,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c20: add 0x4(%edx),%eax 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c23: lea 0x2c(%eax),%ecx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c26: mov 0x8(%ebp),%eax : 8054c29: mov 0xfffffff0(%ebp),%edx 60 0.1773 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c2c: flds 0x14(%eax) : 8054c2f: fadds 0x8(%edx) : 8054c32: fstps 0xffffffd8(%ebp) 64 0.1891 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c35: mov 0xffffffd8(%ebp),%eax 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c38: mov %eax,(%ecx) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c3a: mov %eax,(%ebx) 71 0.2098 13 1.4607 0 0.0e+00 0 0.0e+00 : 8054c3c: mov %eax,(%edi) 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c3e: mov %eax,(%esi) : pe->va[num_va+ 5] = : pe->va[num_va+ 8] = : pe->va[num_va+11] = pe->origin[2] + p->origin[2]; : : pe->cl[num_cl+ 3] = 4 0.0118 2 0.2247 0 0.0e+00 0 0.0e+00 : 8054c40: mov 0x8(%ebp),%edx 71 0.2098 4 0.4494 0 0.0e+00 0 0.0e+00 : 8054c43: mov 0xffffffe0(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c46: shl $0x2,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c49: add 0x8(%edx),%eax 47 0.1389 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c4c: lea 0xc(%eax),%ebx : 8054c4f: mov 0x8(%ebp),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c52: mov 0xffffffe0(%ebp),%eax 26 0.0768 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c55: shl $0x2,%eax : 8054c58: add 0x8(%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c5b: lea 0x1c(%eax),%esi 37 0.1093 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c5e: mov 0x8(%ebp),%edx : 8054c61: mov 0xffffffe0(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c64: shl $0x2,%eax 27 0.0798 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c67: add 0x8(%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c6a: lea 0x2c(%eax),%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c6d: mov 0x8(%ebp),%edx 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c70: mov 0xffffffe0(%ebp),%eax : 8054c73: shl $0x2,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c76: add 0x8(%edx),%eax 25 0.0739 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c79: lea 0x3c(%eax),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c7c: mov 0xfffffff0(%ebp),%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c7f: mov 0x18(%eax),%eax 40 0.1182 0 0.0e+00 1 0.7143 0 0.0e+00 : 8054c82: mov %eax,(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c84: mov %eax,(%ecx) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c86: mov %eax,(%esi) 60 0.1773 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c88: mov %eax,(%ebx) : pe->cl[num_cl+ 7] = : pe->cl[num_cl+11] = : pe->cl[num_cl+15] = p->alpha; : : p->alpha -= pe->fade * g_frametime; : 8054c8a: mov 0xfffffff0(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c8d: mov 0xfffffff0(%ebp),%eax 110 0.3250 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c90: flds 0x18(%eax) : 8054c93: mov 0x8(%ebp),%eax : 8054c96: flds 0x2c(%eax) 53 0.1566 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054c99: fmull 0x805a968 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8054c9f: fsubrp %st,%st(1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ca1: fstps 0x18(%edx) : p->size += pe->growth * g_frametime; 126 0.3723 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ca4: mov 0xfffffff0(%ebp),%edx : 8054ca7: mov 0xfffffff0(%ebp),%eax : 8054caa: flds 0x1c(%eax) 19 0.0561 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cad: mov 0x8(%ebp),%eax : 8054cb0: flds 0x24(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cb3: fmull 0x805a968 83 0.2453 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cb9: faddp %st,%st(1) : 8054cbb: fstps 0x1c(%edx) : : if (p->alpha <= 0) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cbe: mov 0xfffffff0(%ebp),%eax 159 0.4698 24 2.6966 0 0.0e+00 0 0.0e+00 : 8054cc1: flds 0x18(%eax) : 8054cc4: fldz 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cc6: fucompp 31 0.0916 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cc8: fnstsw %ax 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cca: sahf 22 0.0650 30 3.3708 0 0.0e+00 0 0.0e+00 : 8054ccb: jae 8054ccf 44 0.1300 4 0.4494 0 0.0e+00 1 0.9434 : 8054ccd: jmp 8054d4d : { : p->origin[0] = Random (-128, 128); 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ccf: mov 0xfffffff0(%ebp),%ebx 49 0.1448 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cd2: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cd7: and $0x7fff,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cdc: push %eax : 8054cdd: fildl (%esp,1) : 8054ce0: lea 0x4(%esp,1),%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054ce4: flds 0x8058d90 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cea: fmulp %st,%st(1) : 8054cec: flds 0x8058d94 : 8054cf2: faddp %st,%st(1) : 8054cf4: fstps (%ebx) : p->origin[1] = Random (-128, 128); : 8054cf6: mov 0xfffffff0(%ebp),%ebx : 8054cf9: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054cfe: and $0x7fff,%eax : 8054d03: push %eax : 8054d04: fildl (%esp,1) : 8054d07: lea 0x4(%esp,1),%esp : 8054d0b: flds 0x8058d90 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d11: fmulp %st,%st(1) : 8054d13: flds 0x8058d94 : 8054d19: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d1b: fstps 0x4(%ebx) : p->size = 0.0f; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d1e: mov 0xfffffff0(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d21: mov $0x0,%eax : 8054d26: mov %eax,0x1c(%edx) : p->alpha = Random (0.0f, 0.5f); : 8054d29: mov 0xfffffff0(%ebp),%ebx : 8054d2c: call 8048ff4 <_init+0x378> 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d31: and $0x7fff,%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d36: push %eax : 8054d37: fildl (%esp,1) : 8054d3a: lea 0x4(%esp,1),%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d3e: flds 0x8058d98 : 8054d44: fmulp %st,%st(1) : 8054d46: fldz : 8054d48: faddp %st,%st(1) : 8054d4a: fstps 0x18(%ebx) : } : : num_va += 12; 59 0.1743 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d4d: lea 0xffffffe4(%ebp),%eax 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d50: addl $0xc,(%eax) : num_cl += 16; 23 0.0680 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d53: lea 0xffffffe0(%ebp),%eax : 8054d56: addl $0x10,(%eax) : 8054d59: lea 0xffffffe8(%ebp),%eax 40 0.1182 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d5c: incl (%eax) : 8054d5e: lea 0xfffffff0(%ebp),%eax 52 0.1537 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d61: addl $0x20,(%eax) : 8054d64: jmp 8054af7 : } :} 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d69: add $0x1c,%esp 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d6c: pop %ebx : 8054d6d: pop %esi 0 0.0e+00 0 0.0e+00 0 0.0e+00 2 1.8868 : 8054d6e: pop %edi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054d6f: pop %ebp : 8054d70: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0805224c : /* R_DrawString total: 818 2.4170 0 0.0e+00 2 1.4286 13 12.2642 */ : :static Mem_Zone *renderer_zone; : :void R_DrawString(const char *string, int max_len, float x, float y, float scalex, float scaley) :{ : 805224c: push %ebp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805224d: mov %esp,%ebp : 805224f: push %esi : 8052250: push %ebx : 8052251: sub $0x40,%esp : int num,len; : float bases, baset, scales, scalet; : float *vertarray, *vert; : : len = strlen (string); : 8052254: mov 0x8(%ebp),%eax : 8052257: mov %eax,(%esp,1) : 805225a: call 8048dd4 <_init+0x158> : 805225f: mov %eax,0xfffffff0(%ebp) : if (max_len && (len > max_len)) : 8052262: cmpl $0x0,0xc(%ebp) : 8052266: je 8052276 : 8052268: mov 0xfffffff0(%ebp),%eax : 805226b: cmp 0xc(%ebp),%eax : 805226e: jle 8052276 : len = max_len; : 8052270: mov 0xc(%ebp),%eax : 8052273: mov %eax,0xfffffff0(%ebp) : vert = vertarray = Mem_Alloc (renderer_zone, len * 20 * sizeof(float)); : 8052276: movl $0x19,0xc(%esp,1) 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805227e: movl $0x8058be0,0x8(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052286: mov 0xfffffff0(%ebp),%edx : 8052289: mov %edx,%eax : 805228b: shl $0x2,%eax : 805228e: add %edx,%eax : 8052290: shl $0x4,%eax : 8052293: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052297: mov 0x805a818,%eax : 805229c: mov %eax,(%esp,1) : 805229f: call 804b1e4 <_Mem_Alloc> : 80522a4: mov %eax,0xffffffdc(%ebp) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522a7: mov 0xffffffdc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522aa: mov %eax,0xffffffd8(%ebp) : : scales = 1.0f / 16.0f; : 80522ad: mov $0x3d800000,%eax : 80522b2: mov %eax,0xffffffe4(%ebp) : scalet = 1.0f / 16.0f; : 80522b5: mov $0x3d800000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522ba: mov %eax,0xffffffe0(%ebp) : while (*string) 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522bd: mov 0x8(%ebp),%eax 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522c0: cmpb $0x0,(%eax) 41 0.1211 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522c3: jne 80522ca : 80522c5: jmp 80523fa : { : num = *string++; 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522ca: mov 0x8(%ebp),%eax 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522cd: movsbl (%eax),%eax 15 0.0443 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522d0: mov %eax,0xfffffff4(%ebp) 7 0.0207 0 0.0e+00 0 0.0e+00 3 2.8302 : 80522d3: incl 0x8(%ebp) : if (num != ' ') 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522d6: cmpl $0x20,0xfffffff4(%ebp) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522da: je 80523ec : { : bases = ((num & 15) * scales); 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522e0: mov 0xfffffff4(%ebp),%eax 11 0.0325 0 0.0e+00 0 0.0e+00 1 0.9434 : 80522e3: and $0xf,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522e6: push %eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522e7: fildl (%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522ea: lea 0x4(%esp,1),%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522ee: fmuls 0xffffffe4(%ebp) 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522f1: fstps 0xffffffec(%ebp) : baset = ((num >> 4) * scalet); : 80522f4: mov 0xfffffff4(%ebp),%eax 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522f7: sar $0x4,%eax 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80522fa: push %eax : 80522fb: fildl (%esp,1) 25 0.0739 0 0.0e+00 1 0.7143 0 0.0e+00 : 80522fe: lea 0x4(%esp,1),%esp 18 0.0532 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052302: fmuls 0xffffffe0(%ebp) : 8052305: fstps 0xffffffe8(%ebp) : : // texcoords : vert[ 0] = vert[ 5] = bases; : 8052308: mov 0xffffffd8(%ebp),%ecx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805230b: mov 0xffffffd8(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805230e: add $0x14,%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052311: mov 0xffffffec(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 6 5.6604 : 8052314: mov %eax,(%edx) : 8052316: mov %eax,(%ecx) : vert[10] = vert[15] = bases + scales; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052318: mov 0xffffffd8(%ebp),%ecx 6 0.0177 0 0.0e+00 0 0.0e+00 1 0.9434 : 805231b: add $0x28,%ecx : 805231e: mov 0xffffffd8(%ebp),%edx 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052321: add $0x3c,%edx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052324: flds 0xffffffec(%ebp) : 8052327: fadds 0xffffffe4(%ebp) 10 0.0295 0 0.0e+00 0 0.0e+00 1 0.9434 : 805232a: fstps 0xffffffd4(%ebp) 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805232d: mov 0xffffffd4(%ebp),%eax : 8052330: mov %eax,(%edx) 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052332: mov %eax,(%ecx) : vert[ 1] = vert[16] = baset; 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052334: mov 0xffffffd8(%ebp),%ecx : 8052337: add $0x4,%ecx 31 0.0916 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805233a: mov 0xffffffd8(%ebp),%edx 28 0.0827 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805233d: add $0x40,%edx : 8052340: mov 0xffffffe8(%ebp),%eax 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052343: mov %eax,(%edx) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052345: mov %eax,(%ecx) : vert[ 6] = vert[11] = baset + scalet; : 8052347: mov 0xffffffd8(%ebp),%ecx 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805234a: add $0x18,%ecx 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805234d: mov 0xffffffd8(%ebp),%edx : 8052350: add $0x2c,%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052353: flds 0xffffffe8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052356: fadds 0xffffffe0(%ebp) : 8052359: fstps 0xffffffd4(%ebp) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805235c: mov 0xffffffd4(%ebp),%eax 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805235f: mov %eax,(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052361: mov %eax,(%ecx) : : //verts : vert[ 2] = vert[ 7] = x; 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052363: mov 0xffffffd8(%ebp),%ecx 16 0.0473 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052366: add $0x8,%ecx : 8052369: mov 0xffffffd8(%ebp),%edx 20 0.0591 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805236c: add $0x1c,%edx 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805236f: mov 0x10(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052372: mov %eax,(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052374: mov %eax,(%ecx) : vert[12] = vert[17] = x + scalex; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052376: mov 0xffffffd8(%ebp),%ecx 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052379: add $0x30,%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805237c: mov 0xffffffd8(%ebp),%edx 22 0.0650 0 0.0e+00 1 0.7143 0 0.0e+00 : 805237f: add $0x44,%edx 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052382: flds 0x10(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052385: fadds 0x18(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052388: fstps 0xffffffd4(%ebp) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805238b: mov 0xffffffd4(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805238e: mov %eax,(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052390: mov %eax,(%ecx) : vert[ 3] = vert[18] = y; 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052392: mov 0xffffffd8(%ebp),%ecx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052395: add $0xc,%ecx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052398: mov 0xffffffd8(%ebp),%edx 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805239b: add $0x48,%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805239e: mov 0x14(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523a1: mov %eax,(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523a3: mov %eax,(%ecx) : vert[ 8] = vert[13] = y + scaley; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523a5: mov 0xffffffd8(%ebp),%ecx : 80523a8: add $0x20,%ecx 15 0.0443 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523ab: mov 0xffffffd8(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523ae: add $0x34,%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523b1: flds 0x14(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523b4: fadds 0x1c(%ebp) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523b7: fstps 0xffffffd4(%ebp) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523ba: mov 0xffffffd4(%ebp),%eax 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523bd: mov %eax,(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523bf: mov %eax,(%ecx) : vert[ 4] = vert[ 9] = vert[14] = vert[19] = 10.0; 19 0.0561 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523c1: mov 0xffffffd8(%ebp),%ebx 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523c4: add $0x10,%ebx : 80523c7: mov 0xffffffd8(%ebp),%esi 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523ca: add $0x24,%esi 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523cd: mov 0xffffffd8(%ebp),%ecx : 80523d0: add $0x38,%ecx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523d3: mov 0xffffffd8(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523d6: add $0x4c,%edx : 80523d9: mov $0x41200000,%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523de: mov %eax,(%edx) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523e0: mov %eax,(%ecx) : 80523e2: mov %eax,(%esi) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523e4: mov %eax,(%ebx) : : vert += 20; 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523e6: lea 0xffffffd8(%ebp),%eax : 80523e9: addl $0x50,(%eax) : } : x += scalex; 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523ec: flds 0x10(%ebp) 23 0.0680 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523ef: fadds 0x18(%ebp) 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523f2: fstps 0x10(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523f5: jmp 80522bd : } : qglInterleavedArrays (GL_T2F_V3F, 0, vertarray); 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523fa: mov 0xffffffdc(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80523fd: mov %eax,0x8(%esp,1) : 8052401: movl $0x0,0x4(%esp,1) : 8052409: movl $0x2a27,(%esp,1) : 8052410: mov 0x805a758,%eax : 8052415: call *%eax : qglDrawArrays (GL_QUADS, 0, len*4); : 8052417: mov 0xfffffff0(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805241a: shl $0x2,%eax : 805241d: mov %eax,0x8(%esp,1) : 8052421: movl $0x0,0x4(%esp,1) : 8052429: movl $0x7,(%esp,1) : 8052430: mov 0x805a670,%eax : 8052435: call *%eax : qglDisableClientState (GL_VERTEX_ARRAY); : 8052437: movl $0x8074,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805243e: mov 0x805a668,%eax 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052443: call *%eax : qglDisableClientState (GL_TEXTURE_COORD_ARRAY); : 8052445: movl $0x8078,(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805244c: mov 0x805a668,%eax : 8052451: call *%eax : Mem_Free (vertarray); : 8052453: movl $0x3a,0x8(%esp,1) : 805245b: movl $0x8058be0,0x4(%esp,1) 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052463: mov 0xffffffdc(%ebp),%eax : 8052466: mov %eax,(%esp,1) : 8052469: call 804b4e7 <_Mem_Free> :} : 805246e: add $0x40,%esp : 8052471: pop %ebx : 8052472: pop %esi : 8052473: pop %ebp : 8052474: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804c8eb : /* Matrix4x4_Concat total: 451 1.3326 1 0.1124 12 8.5714 5 4.7170 */ : out->m[3][3] = 1.0f; :} : :void Matrix4x4_Concat(matrix4x4_t *out, const matrix4x4_t *in1, const matrix4x4_t *in2) :{ 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c8eb: push %ebp 20 0.0591 0 0.0e+00 1 0.7143 3 2.8302 : 804c8ec: mov %esp,%ebp : out->m[0][0] = in1->m[0][0] * in2->m[0][0] + in1->m[0][1] * in2->m[1][0] + in1->m[0][2] * in2->m[2][0] + in1->m[0][3] * in2->m[3][0]; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c8ee: mov 0x8(%ebp),%ecx 4 0.0118 0 0.0e+00 0 0.0e+00 1 0.9434 : 804c8f1: mov 0xc(%ebp),%eax : 804c8f4: mov 0x10(%ebp),%edx : 804c8f7: fldl (%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c8f9: fmull (%edx) : 804c8fb: mov 0xc(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c8fe: mov 0x10(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c901: fldl 0x8(%eax) : 804c904: fmull 0x20(%edx) : 804c907: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c909: mov 0xc(%ebp),%eax : 804c90c: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c90f: fldl 0x10(%eax) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c912: fmull 0x40(%edx) : 804c915: faddp %st,%st(1) : 804c917: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 804c91a: mov 0x10(%ebp),%edx : 804c91d: fldl 0x18(%eax) : 804c920: fmull 0x60(%edx) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c923: faddp %st,%st(1) : 804c925: fstpl (%ecx) : out->m[0][1] = in1->m[0][0] * in2->m[0][1] + in1->m[0][1] * in2->m[1][1] + in1->m[0][2] * in2->m[2][1] + in1->m[0][3] * in2->m[3][1]; : 804c927: mov 0x8(%ebp),%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c92a: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c92d: mov 0x10(%ebp),%edx : 804c930: fldl (%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c932: fmull 0x8(%edx) : 804c935: mov 0xc(%ebp),%eax : 804c938: mov 0x10(%ebp),%edx 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c93b: fldl 0x8(%eax) : 804c93e: fmull 0x28(%edx) : 804c941: faddp %st,%st(1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c943: mov 0xc(%ebp),%eax : 804c946: mov 0x10(%ebp),%edx : 804c949: fldl 0x10(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c94c: fmull 0x48(%edx) : 804c94f: faddp %st,%st(1) : 804c951: mov 0xc(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c954: mov 0x10(%ebp),%edx : 804c957: fldl 0x18(%eax) : 804c95a: fmull 0x68(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c95d: faddp %st,%st(1) : 804c95f: fstpl 0x8(%ecx) : out->m[0][2] = in1->m[0][0] * in2->m[0][2] + in1->m[0][1] * in2->m[1][2] + in1->m[0][2] * in2->m[2][2] + in1->m[0][3] * in2->m[3][2]; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c962: mov 0x8(%ebp),%ecx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c965: mov 0xc(%ebp),%eax : 804c968: mov 0x10(%ebp),%edx : 804c96b: fldl (%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c96d: fmull 0x10(%edx) : 804c970: mov 0xc(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c973: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c976: fldl 0x8(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c979: fmull 0x30(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c97c: faddp %st,%st(1) 16 0.0473 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c97e: mov 0xc(%ebp),%eax 4 0.0118 0 0.0e+00 1 0.7143 0 0.0e+00 : 804c981: mov 0x10(%ebp),%edx : 804c984: fldl 0x10(%eax) : 804c987: fmull 0x50(%edx) : 804c98a: faddp %st,%st(1) : 804c98c: mov 0xc(%ebp),%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c98f: mov 0x10(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c992: fldl 0x18(%eax) : 804c995: fmull 0x70(%edx) : 804c998: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c99a: fstpl 0x10(%ecx) : out->m[0][3] = in1->m[0][0] * in2->m[0][3] + in1->m[0][1] * in2->m[1][3] + in1->m[0][2] * in2->m[2][3] + in1->m[0][3] * in2->m[3][3]; : 804c99d: mov 0x8(%ebp),%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9a0: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9a3: mov 0x10(%ebp),%edx : 804c9a6: fldl (%eax) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9a8: fmull 0x18(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9ab: mov 0xc(%ebp),%eax : 804c9ae: mov 0x10(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9b1: fldl 0x8(%eax) : 804c9b4: fmull 0x38(%edx) : 804c9b7: faddp %st,%st(1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9b9: mov 0xc(%ebp),%eax : 804c9bc: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9bf: fldl 0x10(%eax) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9c2: fmull 0x58(%edx) : 804c9c5: faddp %st,%st(1) : 804c9c7: mov 0xc(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9ca: mov 0x10(%ebp),%edx : 804c9cd: fldl 0x18(%eax) : 804c9d0: fmull 0x78(%edx) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9d3: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9d5: fstpl 0x18(%ecx) : out->m[1][0] = in1->m[1][0] * in2->m[0][0] + in1->m[1][1] * in2->m[1][0] + in1->m[1][2] * in2->m[2][0] + in1->m[1][3] * in2->m[3][0]; : 804c9d8: mov 0x8(%ebp),%ecx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9db: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9de: mov 0x10(%ebp),%edx : 804c9e1: fldl 0x20(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9e4: fmull (%edx) : 804c9e6: mov 0xc(%ebp),%eax : 804c9e9: mov 0x10(%ebp),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9ec: fldl 0x28(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9ef: fmull 0x20(%edx) : 804c9f2: faddp %st,%st(1) : 804c9f4: mov 0xc(%ebp),%eax : 804c9f7: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9fa: fldl 0x30(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c9fd: fmull 0x40(%edx) : 804ca00: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca02: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca05: mov 0x10(%ebp),%edx : 804ca08: fldl 0x38(%eax) : 804ca0b: fmull 0x60(%edx) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca0e: faddp %st,%st(1) : 804ca10: fstpl 0x20(%ecx) : out->m[1][1] = in1->m[1][0] * in2->m[0][1] + in1->m[1][1] * in2->m[1][1] + in1->m[1][2] * in2->m[2][1] + in1->m[1][3] * in2->m[3][1]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca13: mov 0x8(%ebp),%ecx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca16: mov 0xc(%ebp),%eax : 804ca19: mov 0x10(%ebp),%edx : 804ca1c: fldl 0x20(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca1f: fmull 0x8(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca22: mov 0xc(%ebp),%eax : 804ca25: mov 0x10(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca28: fldl 0x28(%eax) : 804ca2b: fmull 0x28(%edx) 3 0.0089 0 0.0e+00 1 0.7143 0 0.0e+00 : 804ca2e: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca30: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca33: mov 0x10(%ebp),%edx : 804ca36: fldl 0x30(%eax) : 804ca39: fmull 0x48(%edx) : 804ca3c: faddp %st,%st(1) : 804ca3e: mov 0xc(%ebp),%eax 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca41: mov 0x10(%ebp),%edx : 804ca44: fldl 0x38(%eax) : 804ca47: fmull 0x68(%edx) : 804ca4a: faddp %st,%st(1) : 804ca4c: fstpl 0x28(%ecx) : out->m[1][2] = in1->m[1][0] * in2->m[0][2] + in1->m[1][1] * in2->m[1][2] + in1->m[1][2] * in2->m[2][2] + in1->m[1][3] * in2->m[3][2]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca4f: mov 0x8(%ebp),%ecx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca52: mov 0xc(%ebp),%eax : 804ca55: mov 0x10(%ebp),%edx : 804ca58: fldl 0x20(%eax) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca5b: fmull 0x10(%edx) : 804ca5e: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca61: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca64: fldl 0x28(%eax) : 804ca67: fmull 0x30(%edx) 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca6a: faddp %st,%st(1) : 804ca6c: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca6f: mov 0x10(%ebp),%edx : 804ca72: fldl 0x30(%eax) : 804ca75: fmull 0x50(%edx) : 804ca78: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca7a: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca7d: mov 0x10(%ebp),%edx : 804ca80: fldl 0x38(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca83: fmull 0x70(%edx) : 804ca86: faddp %st,%st(1) : 804ca88: fstpl 0x30(%ecx) : out->m[1][3] = in1->m[1][0] * in2->m[0][3] + in1->m[1][1] * in2->m[1][3] + in1->m[1][2] * in2->m[2][3] + in1->m[1][3] * in2->m[3][3]; 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca8b: mov 0x8(%ebp),%ecx : 804ca8e: mov 0xc(%ebp),%eax : 804ca91: mov 0x10(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca94: fldl 0x20(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca97: fmull 0x18(%edx) : 804ca9a: mov 0xc(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ca9d: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804caa0: fldl 0x28(%eax) : 804caa3: fmull 0x38(%edx) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804caa6: faddp %st,%st(1) : 804caa8: mov 0xc(%ebp),%eax : 804caab: mov 0x10(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804caae: fldl 0x30(%eax) : 804cab1: fmull 0x58(%edx) : 804cab4: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cab6: mov 0xc(%ebp),%eax : 804cab9: mov 0x10(%ebp),%edx : 804cabc: fldl 0x38(%eax) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cabf: fmull 0x78(%edx) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cac2: faddp %st,%st(1) : 804cac4: fstpl 0x38(%ecx) : out->m[2][0] = in1->m[2][0] * in2->m[0][0] + in1->m[2][1] * in2->m[1][0] + in1->m[2][2] * in2->m[2][0] + in1->m[2][3] * in2->m[3][0]; 5 0.0148 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cac7: mov 0x8(%ebp),%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804caca: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cacd: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cad0: fldl 0x40(%eax) : 804cad3: fmull (%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cad5: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cad8: mov 0x10(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cadb: fldl 0x48(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cade: fmull 0x20(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cae1: faddp %st,%st(1) : 804cae3: mov 0xc(%ebp),%eax : 804cae6: mov 0x10(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cae9: fldl 0x50(%eax) : 804caec: fmull 0x40(%edx) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804caef: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804caf1: mov 0xc(%ebp),%eax : 804caf4: mov 0x10(%ebp),%edx : 804caf7: fldl 0x58(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cafa: fmull 0x60(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cafd: faddp %st,%st(1) : 804caff: fstpl 0x40(%ecx) : out->m[2][1] = in1->m[2][0] * in2->m[0][1] + in1->m[2][1] * in2->m[1][1] + in1->m[2][2] * in2->m[2][1] + in1->m[2][3] * in2->m[3][1]; 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb02: mov 0x8(%ebp),%ecx : 804cb05: mov 0xc(%ebp),%eax : 804cb08: mov 0x10(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb0b: fldl 0x40(%eax) : 804cb0e: fmull 0x8(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb11: mov 0xc(%ebp),%eax : 804cb14: mov 0x10(%ebp),%edx : 804cb17: fldl 0x48(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb1a: fmull 0x28(%edx) 2 0.0059 0 0.0e+00 3 2.1429 0 0.0e+00 : 804cb1d: faddp %st,%st(1) : 804cb1f: mov 0xc(%ebp),%eax : 804cb22: mov 0x10(%ebp),%edx : 804cb25: fldl 0x50(%eax) : 804cb28: fmull 0x48(%edx) : 804cb2b: faddp %st,%st(1) : 804cb2d: mov 0xc(%ebp),%eax : 804cb30: mov 0x10(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb33: fldl 0x58(%eax) : 804cb36: fmull 0x68(%edx) : 804cb39: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb3b: fstpl 0x48(%ecx) : out->m[2][2] = in1->m[2][0] * in2->m[0][2] + in1->m[2][1] * in2->m[1][2] + in1->m[2][2] * in2->m[2][2] + in1->m[2][3] * in2->m[3][2]; : 804cb3e: mov 0x8(%ebp),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb41: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb44: mov 0x10(%ebp),%edx : 804cb47: fldl 0x40(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb4a: fmull 0x10(%edx) 1 0.0030 1 0.1124 0 0.0e+00 0 0.0e+00 : 804cb4d: mov 0xc(%ebp),%eax : 804cb50: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb53: fldl 0x48(%eax) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb56: fmull 0x30(%edx) : 804cb59: faddp %st,%st(1) : 804cb5b: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb5e: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb61: fldl 0x50(%eax) : 804cb64: fmull 0x50(%edx) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb67: faddp %st,%st(1) : 804cb69: mov 0xc(%ebp),%eax : 804cb6c: mov 0x10(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb6f: fldl 0x58(%eax) : 804cb72: fmull 0x70(%edx) : 804cb75: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb77: fstpl 0x50(%ecx) : out->m[2][3] = in1->m[2][0] * in2->m[0][3] + in1->m[2][1] * in2->m[1][3] + in1->m[2][2] * in2->m[2][3] + in1->m[2][3] * in2->m[3][3]; : 804cb7a: mov 0x8(%ebp),%ecx 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb7d: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb80: mov 0x10(%ebp),%edx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb83: fldl 0x40(%eax) : 804cb86: fmull 0x18(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb89: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb8c: mov 0x10(%ebp),%edx : 804cb8f: fldl 0x48(%eax) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cb92: fmull 0x38(%edx) : 804cb95: faddp %st,%st(1) : 804cb97: mov 0xc(%ebp),%eax : 804cb9a: mov 0x10(%ebp),%edx : 804cb9d: fldl 0x50(%eax) : 804cba0: fmull 0x58(%edx) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cba3: faddp %st,%st(1) : 804cba5: mov 0xc(%ebp),%eax : 804cba8: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbab: fldl 0x58(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbae: fmull 0x78(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbb1: faddp %st,%st(1) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbb3: fstpl 0x58(%ecx) : out->m[3][0] = in1->m[3][0] * in2->m[0][0] + in1->m[3][1] * in2->m[1][0] + in1->m[3][2] * in2->m[2][0] + in1->m[3][3] * in2->m[3][0]; : 804cbb6: mov 0x8(%ebp),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbb9: mov 0xc(%ebp),%eax : 804cbbc: mov 0x10(%ebp),%edx : 804cbbf: fldl 0x60(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbc2: fmull (%edx) : 804cbc4: mov 0xc(%ebp),%eax : 804cbc7: mov 0x10(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbca: fldl 0x68(%eax) : 804cbcd: fmull 0x20(%edx) : 804cbd0: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbd2: mov 0xc(%ebp),%eax : 804cbd5: mov 0x10(%ebp),%edx : 804cbd8: fldl 0x70(%eax) : 804cbdb: fmull 0x40(%edx) : 804cbde: faddp %st,%st(1) : 804cbe0: mov 0xc(%ebp),%eax 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbe3: mov 0x10(%ebp),%edx : 804cbe6: fldl 0x78(%eax) : 804cbe9: fmull 0x60(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbec: faddp %st,%st(1) : 804cbee: fstpl 0x60(%ecx) : out->m[3][1] = in1->m[3][0] * in2->m[0][1] + in1->m[3][1] * in2->m[1][1] + in1->m[3][2] * in2->m[2][1] + in1->m[3][3] * in2->m[3][1]; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbf1: mov 0x8(%ebp),%ecx : 804cbf4: mov 0xc(%ebp),%eax : 804cbf7: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbfa: fldl 0x60(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cbfd: fmull 0x8(%edx) : 804cc00: mov 0xc(%ebp),%eax 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc03: mov 0x10(%ebp),%edx 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cc06: fldl 0x68(%eax) 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cc09: fmull 0x28(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc0c: faddp %st,%st(1) : 804cc0e: mov 0xc(%ebp),%eax : 804cc11: mov 0x10(%ebp),%edx : 804cc14: fldl 0x70(%eax) : 804cc17: fmull 0x48(%edx) : 804cc1a: faddp %st,%st(1) : 804cc1c: mov 0xc(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc1f: mov 0x10(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc22: fldl 0x78(%eax) : 804cc25: fmull 0x68(%edx) : 804cc28: faddp %st,%st(1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc2a: fstpl 0x68(%ecx) : out->m[3][2] = in1->m[3][0] * in2->m[0][2] + in1->m[3][1] * in2->m[1][2] + in1->m[3][2] * in2->m[2][2] + in1->m[3][3] * in2->m[3][2]; 1 0.0030 0 0.0e+00 2 1.4286 0 0.0e+00 : 804cc2d: mov 0x8(%ebp),%ecx : 804cc30: mov 0xc(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc33: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc36: fldl 0x60(%eax) : 804cc39: fmull 0x10(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc3c: mov 0xc(%ebp),%eax 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc3f: mov 0x10(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc42: fldl 0x68(%eax) : 804cc45: fmull 0x30(%edx) : 804cc48: faddp %st,%st(1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc4a: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc4d: mov 0x10(%ebp),%edx : 804cc50: fldl 0x70(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc53: fmull 0x50(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc56: faddp %st,%st(1) : 804cc58: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc5b: mov 0x10(%ebp),%edx : 804cc5e: fldl 0x78(%eax) : 804cc61: fmull 0x70(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc64: faddp %st,%st(1) : 804cc66: fstpl 0x70(%ecx) : out->m[3][3] = in1->m[3][0] * in2->m[0][3] + in1->m[3][1] * in2->m[1][3] + in1->m[3][2] * in2->m[2][3] + in1->m[3][3] * in2->m[3][3]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc69: mov 0x8(%ebp),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc6c: mov 0xc(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc6f: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc72: fldl 0x60(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc75: fmull 0x18(%edx) : 804cc78: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc7b: mov 0x10(%ebp),%edx 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc7e: fldl 0x68(%eax) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc81: fmull 0x38(%edx) : 804cc84: faddp %st,%st(1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc86: mov 0xc(%ebp),%eax : 804cc89: mov 0x10(%ebp),%edx : 804cc8c: fldl 0x70(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc8f: fmull 0x58(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc92: faddp %st,%st(1) : 804cc94: mov 0xc(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc97: mov 0x10(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cc9a: fldl 0x78(%eax) 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cc9d: fmull 0x78(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cca0: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cca2: fstpl 0x78(%ecx) :} : 804cca5: pop %ebp 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cca6: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080524ce : /* R_DrawMap total: 343 1.0135 4 0.4494 10 7.1429 29 27.3585 */ : R_SetMatrix(&r_skymatrix); :} : :void R_DrawMap(void) :{ 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524ce: push %ebp 2 0.0059 0 0.0e+00 0 0.0e+00 1 0.9434 : 80524cf: mov %esp,%ebp : 80524d1: sub $0x18,%esp : R_SetMatrix(&r_identitymatrix); : 80524d4: movl $0x89df300,(%esp,1) : 80524db: call 8052475 : : qglDisable (GL_TEXTURE_2D); : 80524e0: movl $0xde1,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524e7: mov 0x805a660,%eax : 80524ec: call *%eax : : // Thing 1 : : qglBegin (GL_LINES); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524ee: movl $0x1,(%esp,1) 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 80524f5: mov 0x805a620,%eax : 80524fa: call *%eax : : // Back !! : qglVertex3f ( 128, 32,-32); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524fc: mov $0xc2000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052501: mov %eax,0x8(%esp,1) : 8052505: mov $0x42000000,%eax : 805250a: mov %eax,0x4(%esp,1) : 805250e: mov $0x43000000,%eax : 8052513: mov %eax,(%esp,1) : 8052516: mov 0x805a748,%eax : 805251b: call *%eax : qglVertex3f (-128, 32,-32); : 805251d: mov $0xc2000000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052522: mov %eax,0x8(%esp,1) : 8052526: mov $0x42000000,%eax : 805252b: mov %eax,0x4(%esp,1) : 805252f: mov $0xc3000000,%eax : 8052534: mov %eax,(%esp,1) : 8052537: mov 0x805a748,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 805253c: call *%eax : : qglVertex3f ( 128,-32,-32); 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 805253e: mov $0xc2000000,%eax : 8052543: mov %eax,0x8(%esp,1) : 8052547: mov $0xc2000000,%eax : 805254c: mov %eax,0x4(%esp,1) : 8052550: mov $0x43000000,%eax : 8052555: mov %eax,(%esp,1) : 8052558: mov 0x805a748,%eax : 805255d: call *%eax : qglVertex3f (-128,-32,-32); : 805255f: mov $0xc2000000,%eax 0 0.0e+00 1 0.1124 0 0.0e+00 0 0.0e+00 : 8052564: mov %eax,0x8(%esp,1) : 8052568: mov $0xc2000000,%eax : 805256d: mov %eax,0x4(%esp,1) : 8052571: mov $0xc3000000,%eax : 8052576: mov %eax,(%esp,1) : 8052579: mov 0x805a748,%eax : 805257e: call *%eax : : qglVertex3f ( 128, 32,-32); : 8052580: mov $0xc2000000,%eax : 8052585: mov %eax,0x8(%esp,1) : 8052589: mov $0x42000000,%eax : 805258e: mov %eax,0x4(%esp,1) : 8052592: mov $0x43000000,%eax : 8052597: mov %eax,(%esp,1) : 805259a: mov 0x805a748,%eax : 805259f: call *%eax : qglVertex3f ( 128,-32,-32); : 80525a1: mov $0xc2000000,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80525a6: mov %eax,0x8(%esp,1) : 80525aa: mov $0xc2000000,%eax : 80525af: mov %eax,0x4(%esp,1) : 80525b3: mov $0x43000000,%eax : 80525b8: mov %eax,(%esp,1) : 80525bb: mov 0x805a748,%eax : 80525c0: call *%eax : : qglVertex3f (-128, 32,-32); : 80525c2: mov $0xc2000000,%eax : 80525c7: mov %eax,0x8(%esp,1) : 80525cb: mov $0x42000000,%eax : 80525d0: mov %eax,0x4(%esp,1) : 80525d4: mov $0xc3000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80525d9: mov %eax,(%esp,1) : 80525dc: mov 0x805a748,%eax : 80525e1: call *%eax : qglVertex3f (-128,-32,-32); : 80525e3: mov $0xc2000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 80525e8: mov %eax,0x8(%esp,1) : 80525ec: mov $0xc2000000,%eax : 80525f1: mov %eax,0x4(%esp,1) : 80525f5: mov $0xc3000000,%eax : 80525fa: mov %eax,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80525fd: mov 0x805a748,%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052602: call *%eax : : // Front !! : qglVertex3f ( 128, 32, 32); : 8052604: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052609: mov %eax,0x8(%esp,1) : 805260d: mov $0x42000000,%eax : 8052612: mov %eax,0x4(%esp,1) : 8052616: mov $0x43000000,%eax : 805261b: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805261e: mov 0x805a748,%eax : 8052623: call *%eax : qglVertex3f (-128, 32, 32); : 8052625: mov $0x42000000,%eax : 805262a: mov %eax,0x8(%esp,1) : 805262e: mov $0x42000000,%eax : 8052633: mov %eax,0x4(%esp,1) : 8052637: mov $0xc3000000,%eax : 805263c: mov %eax,(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805263f: mov 0x805a748,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052644: call *%eax : : qglVertex3f ( 128,-32, 32); : 8052646: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805264b: mov %eax,0x8(%esp,1) : 805264f: mov $0xc2000000,%eax : 8052654: mov %eax,0x4(%esp,1) : 8052658: mov $0x43000000,%eax : 805265d: mov %eax,(%esp,1) : 8052660: mov 0x805a748,%eax : 8052665: call *%eax : qglVertex3f (-128,-32, 32); : 8052667: mov $0x42000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 805266c: mov %eax,0x8(%esp,1) : 8052670: mov $0xc2000000,%eax : 8052675: mov %eax,0x4(%esp,1) : 8052679: mov $0xc3000000,%eax : 805267e: mov %eax,(%esp,1) : 8052681: mov 0x805a748,%eax : 8052686: call *%eax : : qglVertex3f ( 128, 32, 32); : 8052688: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 1 0.7143 1 0.9434 : 805268d: mov %eax,0x8(%esp,1) 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8052691: mov $0x42000000,%eax : 8052696: mov %eax,0x4(%esp,1) : 805269a: mov $0x43000000,%eax : 805269f: mov %eax,(%esp,1) : 80526a2: mov 0x805a748,%eax : 80526a7: call *%eax : qglVertex3f ( 128,-32, 32); : 80526a9: mov $0x42000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 80526ae: mov %eax,0x8(%esp,1) : 80526b2: mov $0xc2000000,%eax : 80526b7: mov %eax,0x4(%esp,1) : 80526bb: mov $0x43000000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80526c0: mov %eax,(%esp,1) : 80526c3: mov 0x805a748,%eax : 80526c8: call *%eax : : qglVertex3f (-128, 32, 32); : 80526ca: mov $0x42000000,%eax : 80526cf: mov %eax,0x8(%esp,1) : 80526d3: mov $0x42000000,%eax : 80526d8: mov %eax,0x4(%esp,1) : 80526dc: mov $0xc3000000,%eax : 80526e1: mov %eax,(%esp,1) : 80526e4: mov 0x805a748,%eax : 80526e9: call *%eax : qglVertex3f (-128,-32, 32); : 80526eb: mov $0x42000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 80526f0: mov %eax,0x8(%esp,1) : 80526f4: mov $0xc2000000,%eax : 80526f9: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80526fd: mov $0xc3000000,%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052702: mov %eax,(%esp,1) : 8052705: mov 0x805a748,%eax : 805270a: call *%eax : : // Sides !! : qglVertex3f ( 128, 32, 32); : 805270c: mov $0x42000000,%eax : 8052711: mov %eax,0x8(%esp,1) : 8052715: mov $0x42000000,%eax : 805271a: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805271e: mov $0x43000000,%eax : 8052723: mov %eax,(%esp,1) : 8052726: mov 0x805a748,%eax : 805272b: call *%eax : qglVertex3f ( 128, 32,-32); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805272d: mov $0xc2000000,%eax : 8052732: mov %eax,0x8(%esp,1) : 8052736: mov $0x42000000,%eax : 805273b: mov %eax,0x4(%esp,1) 4 0.0118 0 0.0e+00 1 0.7143 0 0.0e+00 : 805273f: mov $0x43000000,%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052744: mov %eax,(%esp,1) : 8052747: mov 0x805a748,%eax : 805274c: call *%eax : : qglVertex3f (-128, 32, 32); : 805274e: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052753: mov %eax,0x8(%esp,1) : 8052757: mov $0x42000000,%eax : 805275c: mov %eax,0x4(%esp,1) : 8052760: mov $0xc3000000,%eax : 8052765: mov %eax,(%esp,1) : 8052768: mov 0x805a748,%eax : 805276d: call *%eax : qglVertex3f (-128, 32,-32); : 805276f: mov $0xc2000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052774: mov %eax,0x8(%esp,1) : 8052778: mov $0x42000000,%eax 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805277d: mov %eax,0x4(%esp,1) : 8052781: mov $0xc3000000,%eax : 8052786: mov %eax,(%esp,1) : 8052789: mov 0x805a748,%eax : 805278e: call *%eax : : qglVertex3f (-128,-32, 32); : 8052790: mov $0x42000000,%eax : 8052795: mov %eax,0x8(%esp,1) : 8052799: mov $0xc2000000,%eax : 805279e: mov %eax,0x4(%esp,1) : 80527a2: mov $0xc3000000,%eax : 80527a7: mov %eax,(%esp,1) : 80527aa: mov 0x805a748,%eax : 80527af: call *%eax : qglVertex3f (-128,-32,-32); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80527b1: mov $0xc2000000,%eax : 80527b6: mov %eax,0x8(%esp,1) : 80527ba: mov $0xc2000000,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80527bf: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80527c3: mov $0xc3000000,%eax : 80527c8: mov %eax,(%esp,1) : 80527cb: mov 0x805a748,%eax : 80527d0: call *%eax : : qglVertex3f ( 128,-32, 32); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80527d2: mov $0x42000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 80527d7: mov %eax,0x8(%esp,1) : 80527db: mov $0xc2000000,%eax : 80527e0: mov %eax,0x4(%esp,1) : 80527e4: mov $0x43000000,%eax : 80527e9: mov %eax,(%esp,1) : 80527ec: mov 0x805a748,%eax : 80527f1: call *%eax : qglVertex3f ( 128,-32,-32); : 80527f3: mov $0xc2000000,%eax : 80527f8: mov %eax,0x8(%esp,1) : 80527fc: mov $0xc2000000,%eax 19 0.0561 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052801: mov %eax,0x4(%esp,1) : 8052805: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805280a: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805280d: mov 0x805a748,%eax : 8052812: call *%eax : : // Thing 2 : : // Back !! : qglVertex3f ( 32, 128,-32); : 8052814: mov $0xc2000000,%eax : 8052819: mov %eax,0x8(%esp,1) : 805281d: mov $0x43000000,%eax : 8052822: mov %eax,0x4(%esp,1) : 8052826: mov $0x42000000,%eax : 805282b: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805282e: mov 0x805a748,%eax 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8052833: call *%eax : qglVertex3f (-32, 128,-32); : 8052835: mov $0xc2000000,%eax : 805283a: mov %eax,0x8(%esp,1) : 805283e: mov $0x43000000,%eax : 8052843: mov %eax,0x4(%esp,1) : 8052847: mov $0xc2000000,%eax : 805284c: mov %eax,(%esp,1) : 805284f: mov 0x805a748,%eax : 8052854: call *%eax : : qglVertex3f ( 32,-128,-32); : 8052856: mov $0xc2000000,%eax : 805285b: mov %eax,0x8(%esp,1) : 805285f: mov $0xc3000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052864: mov %eax,0x4(%esp,1) : 8052868: mov $0x42000000,%eax : 805286d: mov %eax,(%esp,1) : 8052870: mov 0x805a748,%eax : 8052875: call *%eax : qglVertex3f (-32,-128,-32); 0 0.0e+00 0 0.0e+00 0 0.0e+00 2 1.8868 : 8052877: mov $0xc2000000,%eax : 805287c: mov %eax,0x8(%esp,1) 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052880: mov $0xc3000000,%eax : 8052885: mov %eax,0x4(%esp,1) : 8052889: mov $0xc2000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805288e: mov %eax,(%esp,1) : 8052891: mov 0x805a748,%eax : 8052896: call *%eax : : qglVertex3f ( 32, 128,-32); : 8052898: mov $0xc2000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 805289d: mov %eax,0x8(%esp,1) : 80528a1: mov $0x43000000,%eax : 80528a6: mov %eax,0x4(%esp,1) : 80528aa: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80528af: mov %eax,(%esp,1) : 80528b2: mov 0x805a748,%eax : 80528b7: call *%eax : qglVertex3f ( 32,-128,-32); : 80528b9: mov $0xc2000000,%eax 6 0.0177 0 0.0e+00 0 0.0e+00 1 0.9434 : 80528be: mov %eax,0x8(%esp,1) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80528c2: mov $0xc3000000,%eax : 80528c7: mov %eax,0x4(%esp,1) : 80528cb: mov $0x42000000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80528d0: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80528d3: mov 0x805a748,%eax : 80528d8: call *%eax : : qglVertex3f (-32, 128,-32); : 80528da: mov $0xc2000000,%eax : 80528df: mov %eax,0x8(%esp,1) : 80528e3: mov $0x43000000,%eax : 80528e8: mov %eax,0x4(%esp,1) : 80528ec: mov $0xc2000000,%eax 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80528f1: mov %eax,(%esp,1) : 80528f4: mov 0x805a748,%eax : 80528f9: call *%eax : qglVertex3f (-32,-128,-32); : 80528fb: mov $0xc2000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 2 1.8868 : 8052900: mov %eax,0x8(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052904: mov $0xc3000000,%eax : 8052909: mov %eax,0x4(%esp,1) : 805290d: mov $0xc2000000,%eax : 8052912: mov %eax,(%esp,1) : 8052915: mov 0x805a748,%eax : 805291a: call *%eax : : // Front !! : qglVertex3f ( 32, 128, 32); 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 805291c: mov $0x42000000,%eax : 8052921: mov %eax,0x8(%esp,1) : 8052925: mov $0x43000000,%eax : 805292a: mov %eax,0x4(%esp,1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805292e: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052933: mov %eax,(%esp,1) : 8052936: mov 0x805a748,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805293b: call *%eax : qglVertex3f (-32, 128, 32); : 805293d: mov $0x42000000,%eax : 8052942: mov %eax,0x8(%esp,1) : 8052946: mov $0x43000000,%eax : 805294b: mov %eax,0x4(%esp,1) : 805294f: mov $0xc2000000,%eax : 8052954: mov %eax,(%esp,1) : 8052957: mov 0x805a748,%eax : 805295c: call *%eax : : qglVertex3f ( 32,-128, 32); : 805295e: mov $0x42000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052963: mov %eax,0x8(%esp,1) : 8052967: mov $0xc3000000,%eax : 805296c: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052970: mov $0x42000000,%eax : 8052975: mov %eax,(%esp,1) : 8052978: mov 0x805a748,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805297d: call *%eax : qglVertex3f (-32,-128, 32); : 805297f: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052984: mov %eax,0x8(%esp,1) : 8052988: mov $0xc3000000,%eax : 805298d: mov %eax,0x4(%esp,1) : 8052991: mov $0xc2000000,%eax : 8052996: mov %eax,(%esp,1) : 8052999: mov 0x805a748,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805299e: call *%eax : : qglVertex3f ( 32, 128, 32); : 80529a0: mov $0x42000000,%eax : 80529a5: mov %eax,0x8(%esp,1) : 80529a9: mov $0x43000000,%eax : 80529ae: mov %eax,0x4(%esp,1) : 80529b2: mov $0x42000000,%eax : 80529b7: mov %eax,(%esp,1) : 80529ba: mov 0x805a748,%eax : 80529bf: call *%eax : qglVertex3f ( 32,-128, 32); : 80529c1: mov $0x42000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 80529c6: mov %eax,0x8(%esp,1) : 80529ca: mov $0xc3000000,%eax : 80529cf: mov %eax,0x4(%esp,1) : 80529d3: mov $0x42000000,%eax : 80529d8: mov %eax,(%esp,1) : 80529db: mov 0x805a748,%eax : 80529e0: call *%eax : : qglVertex3f (-32, 128, 32); 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80529e2: mov $0x42000000,%eax : 80529e7: mov %eax,0x8(%esp,1) : 80529eb: mov $0x43000000,%eax : 80529f0: mov %eax,0x4(%esp,1) : 80529f4: mov $0xc2000000,%eax : 80529f9: mov %eax,(%esp,1) : 80529fc: mov 0x805a748,%eax 17 0.0502 0 0.0e+00 1 0.7143 0 0.0e+00 : 8052a01: call *%eax : qglVertex3f (-32,-128, 32); : 8052a03: mov $0x42000000,%eax : 8052a08: mov %eax,0x8(%esp,1) : 8052a0c: mov $0xc3000000,%eax : 8052a11: mov %eax,0x4(%esp,1) : 8052a15: mov $0xc2000000,%eax : 8052a1a: mov %eax,(%esp,1) : 8052a1d: mov 0x805a748,%eax : 8052a22: call *%eax : : // Sides !! : qglVertex3f ( 32, 128, 32); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052a24: mov $0x42000000,%eax : 8052a29: mov %eax,0x8(%esp,1) : 8052a2d: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052a32: mov %eax,0x4(%esp,1) : 8052a36: mov $0x42000000,%eax : 8052a3b: mov %eax,(%esp,1) : 8052a3e: mov 0x805a748,%eax : 8052a43: call *%eax : qglVertex3f ( 32, 128,-32); : 8052a45: mov $0xc2000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052a4a: mov %eax,0x8(%esp,1) : 8052a4e: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052a53: mov %eax,0x4(%esp,1) : 8052a57: mov $0x42000000,%eax : 8052a5c: mov %eax,(%esp,1) : 8052a5f: mov 0x805a748,%eax : 8052a64: call *%eax : : qglVertex3f (-32, 128, 32); : 8052a66: mov $0x42000000,%eax : 8052a6b: mov %eax,0x8(%esp,1) : 8052a6f: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052a74: mov %eax,0x4(%esp,1) : 8052a78: mov $0xc2000000,%eax 6 0.0177 0 0.0e+00 1 0.7143 0 0.0e+00 : 8052a7d: mov %eax,(%esp,1) : 8052a80: mov 0x805a748,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052a85: call *%eax : qglVertex3f (-32, 128,-32); : 8052a87: mov $0xc2000000,%eax : 8052a8c: mov %eax,0x8(%esp,1) : 8052a90: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052a95: mov %eax,0x4(%esp,1) : 8052a99: mov $0xc2000000,%eax : 8052a9e: mov %eax,(%esp,1) : 8052aa1: mov 0x805a748,%eax : 8052aa6: call *%eax : : qglVertex3f (-32,-128, 32); : 8052aa8: mov $0x42000000,%eax : 8052aad: mov %eax,0x8(%esp,1) : 8052ab1: mov $0xc3000000,%eax : 8052ab6: mov %eax,0x4(%esp,1) : 8052aba: mov $0xc2000000,%eax : 8052abf: mov %eax,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052ac2: mov 0x805a748,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052ac7: call *%eax : qglVertex3f (-32,-128,-32); : 8052ac9: mov $0xc2000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052ace: mov %eax,0x8(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052ad2: mov $0xc3000000,%eax : 8052ad7: mov %eax,0x4(%esp,1) : 8052adb: mov $0xc2000000,%eax : 8052ae0: mov %eax,(%esp,1) : 8052ae3: mov 0x805a748,%eax : 8052ae8: call *%eax : : qglVertex3f ( 32,-128, 32); : 8052aea: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052aef: mov %eax,0x8(%esp,1) : 8052af3: mov $0xc3000000,%eax : 8052af8: mov %eax,0x4(%esp,1) : 8052afc: mov $0x42000000,%eax 11 0.0325 1 0.1124 0 0.0e+00 0 0.0e+00 : 8052b01: mov %eax,(%esp,1) : 8052b04: mov 0x805a748,%eax : 8052b09: call *%eax : qglVertex3f ( 32,-128,-32); : 8052b0b: mov $0xc2000000,%eax : 8052b10: mov %eax,0x8(%esp,1) : 8052b14: mov $0xc3000000,%eax : 8052b19: mov %eax,0x4(%esp,1) : 8052b1d: mov $0x42000000,%eax : 8052b22: mov %eax,(%esp,1) : 8052b25: mov 0x805a748,%eax : 8052b2a: call *%eax : : // Thing 3 : : // Back !! : qglVertex3f ( 32, 32,-128); : 8052b2c: mov $0xc3000000,%eax : 8052b31: mov %eax,0x8(%esp,1) : 8052b35: mov $0x42000000,%eax : 8052b3a: mov %eax,0x4(%esp,1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052b3e: mov $0x42000000,%eax 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8052b43: mov %eax,(%esp,1) : 8052b46: mov 0x805a748,%eax : 8052b4b: call *%eax : qglVertex3f (-32, 32,-128); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052b4d: mov $0xc3000000,%eax : 8052b52: mov %eax,0x8(%esp,1) : 8052b56: mov $0x42000000,%eax : 8052b5b: mov %eax,0x4(%esp,1) : 8052b5f: mov $0xc2000000,%eax : 8052b64: mov %eax,(%esp,1) : 8052b67: mov 0x805a748,%eax : 8052b6c: call *%eax : : qglVertex3f ( 32,-32,-128); : 8052b6e: mov $0xc3000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052b73: mov %eax,0x8(%esp,1) : 8052b77: mov $0xc2000000,%eax : 8052b7c: mov %eax,0x4(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052b80: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052b85: mov %eax,(%esp,1) : 8052b88: mov 0x805a748,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052b8d: call *%eax : qglVertex3f (-32,-32,-128); : 8052b8f: mov $0xc3000000,%eax : 8052b94: mov %eax,0x8(%esp,1) : 8052b98: mov $0xc2000000,%eax : 8052b9d: mov %eax,0x4(%esp,1) : 8052ba1: mov $0xc2000000,%eax : 8052ba6: mov %eax,(%esp,1) : 8052ba9: mov 0x805a748,%eax : 8052bae: call *%eax : : qglVertex3f ( 32, 32,-128); 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052bb0: mov $0xc3000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052bb5: mov %eax,0x8(%esp,1) : 8052bb9: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052bbe: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052bc2: mov $0x42000000,%eax : 8052bc7: mov %eax,(%esp,1) : 8052bca: mov 0x805a748,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052bcf: call *%eax : qglVertex3f ( 32,-32,-128); : 8052bd1: mov $0xc3000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052bd6: mov %eax,0x8(%esp,1) : 8052bda: mov $0xc2000000,%eax : 8052bdf: mov %eax,0x4(%esp,1) : 8052be3: mov $0x42000000,%eax : 8052be8: mov %eax,(%esp,1) : 8052beb: mov 0x805a748,%eax : 8052bf0: call *%eax : : qglVertex3f (-32, 32,-128); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052bf2: mov $0xc3000000,%eax : 8052bf7: mov %eax,0x8(%esp,1) : 8052bfb: mov $0x42000000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c00: mov %eax,0x4(%esp,1) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c04: mov $0xc2000000,%eax : 8052c09: mov %eax,(%esp,1) : 8052c0c: mov 0x805a748,%eax : 8052c11: call *%eax : qglVertex3f (-32,-32,-128); : 8052c13: mov $0xc3000000,%eax : 8052c18: mov %eax,0x8(%esp,1) : 8052c1c: mov $0xc2000000,%eax : 8052c21: mov %eax,0x4(%esp,1) : 8052c25: mov $0xc2000000,%eax : 8052c2a: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c2d: mov 0x805a748,%eax : 8052c32: call *%eax : : // Front !! : qglVertex3f ( 32, 32, 128); : 8052c34: mov $0x43000000,%eax : 8052c39: mov %eax,0x8(%esp,1) : 8052c3d: mov $0x42000000,%eax 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c42: mov %eax,0x4(%esp,1) : 8052c46: mov $0x42000000,%eax : 8052c4b: mov %eax,(%esp,1) : 8052c4e: mov 0x805a748,%eax : 8052c53: call *%eax : qglVertex3f (-32, 32, 128); : 8052c55: mov $0x43000000,%eax : 8052c5a: mov %eax,0x8(%esp,1) : 8052c5e: mov $0x42000000,%eax : 8052c63: mov %eax,0x4(%esp,1) : 8052c67: mov $0xc2000000,%eax : 8052c6c: mov %eax,(%esp,1) : 8052c6f: mov 0x805a748,%eax : 8052c74: call *%eax : : qglVertex3f ( 32,-32, 128); : 8052c76: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c7b: mov %eax,0x8(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c7f: mov $0xc2000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c84: mov %eax,0x4(%esp,1) : 8052c88: mov $0x42000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c8d: mov %eax,(%esp,1) : 8052c90: mov 0x805a748,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052c95: call *%eax : qglVertex3f (-32,-32, 128); : 8052c97: mov $0x43000000,%eax : 8052c9c: mov %eax,0x8(%esp,1) : 8052ca0: mov $0xc2000000,%eax : 8052ca5: mov %eax,0x4(%esp,1) : 8052ca9: mov $0xc2000000,%eax : 8052cae: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052cb1: mov 0x805a748,%eax : 8052cb6: call *%eax : : qglVertex3f ( 32, 32, 128); : 8052cb8: mov $0x43000000,%eax : 8052cbd: mov %eax,0x8(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052cc1: mov $0x42000000,%eax : 8052cc6: mov %eax,0x4(%esp,1) : 8052cca: mov $0x42000000,%eax : 8052ccf: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052cd2: mov 0x805a748,%eax : 8052cd7: call *%eax : qglVertex3f ( 32,-32, 128); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052cd9: mov $0x43000000,%eax : 8052cde: mov %eax,0x8(%esp,1) : 8052ce2: mov $0xc2000000,%eax : 8052ce7: mov %eax,0x4(%esp,1) : 8052ceb: mov $0x42000000,%eax : 8052cf0: mov %eax,(%esp,1) : 8052cf3: mov 0x805a748,%eax : 8052cf8: call *%eax : : qglVertex3f (-32, 32, 128); : 8052cfa: mov $0x43000000,%eax 22 0.0650 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052cff: mov %eax,0x8(%esp,1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052d03: mov $0x42000000,%eax : 8052d08: mov %eax,0x4(%esp,1) : 8052d0c: mov $0xc2000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052d11: mov %eax,(%esp,1) : 8052d14: mov 0x805a748,%eax : 8052d19: call *%eax : qglVertex3f (-32,-32, 128); 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052d1b: mov $0x43000000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052d20: mov %eax,0x8(%esp,1) : 8052d24: mov $0xc2000000,%eax : 8052d29: mov %eax,0x4(%esp,1) : 8052d2d: mov $0xc2000000,%eax : 8052d32: mov %eax,(%esp,1) : 8052d35: mov 0x805a748,%eax : 8052d3a: call *%eax : : // Sides !! : qglVertex3f ( 32, 32, 128); : 8052d3c: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052d41: mov %eax,0x8(%esp,1) : 8052d45: mov $0x42000000,%eax : 8052d4a: mov %eax,0x4(%esp,1) : 8052d4e: mov $0x42000000,%eax : 8052d53: mov %eax,(%esp,1) : 8052d56: mov 0x805a748,%eax : 8052d5b: call *%eax : qglVertex3f ( 32, 32,-128); : 8052d5d: mov $0xc3000000,%eax : 8052d62: mov %eax,0x8(%esp,1) : 8052d66: mov $0x42000000,%eax : 8052d6b: mov %eax,0x4(%esp,1) : 8052d6f: mov $0x42000000,%eax : 8052d74: mov %eax,(%esp,1) : 8052d77: mov 0x805a748,%eax : 8052d7c: call *%eax : : qglVertex3f (-32, 32, 128); : 8052d7e: mov $0x43000000,%eax 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052d83: mov %eax,0x8(%esp,1) : 8052d87: mov $0x42000000,%eax : 8052d8c: mov %eax,0x4(%esp,1) : 8052d90: mov $0xc2000000,%eax : 8052d95: mov %eax,(%esp,1) : 8052d98: mov 0x805a748,%eax : 8052d9d: call *%eax : qglVertex3f (-32, 32,-128); : 8052d9f: mov $0xc3000000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052da4: mov %eax,0x8(%esp,1) : 8052da8: mov $0x42000000,%eax : 8052dad: mov %eax,0x4(%esp,1) : 8052db1: mov $0xc2000000,%eax : 8052db6: mov %eax,(%esp,1) : 8052db9: mov 0x805a748,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052dbe: call *%eax : : qglVertex3f (-32,-32, 128); : 8052dc0: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052dc5: mov %eax,0x8(%esp,1) : 8052dc9: mov $0xc2000000,%eax : 8052dce: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052dd2: mov $0xc2000000,%eax : 8052dd7: mov %eax,(%esp,1) : 8052dda: mov 0x805a748,%eax : 8052ddf: call *%eax : qglVertex3f (-32,-32,-128); : 8052de1: mov $0xc3000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052de6: mov %eax,0x8(%esp,1) : 8052dea: mov $0xc2000000,%eax : 8052def: mov %eax,0x4(%esp,1) : 8052df3: mov $0xc2000000,%eax : 8052df8: mov %eax,(%esp,1) : 8052dfb: mov 0x805a748,%eax : 8052e00: call *%eax : : qglVertex3f ( 32,-32, 128); : 8052e02: mov $0x43000000,%eax : 8052e07: mov %eax,0x8(%esp,1) : 8052e0b: mov $0xc2000000,%eax : 8052e10: mov %eax,0x4(%esp,1) : 8052e14: mov $0x42000000,%eax : 8052e19: mov %eax,(%esp,1) : 8052e1c: mov 0x805a748,%eax : 8052e21: call *%eax : qglVertex3f ( 32,-32,-128); : 8052e23: mov $0xc3000000,%eax : 8052e28: mov %eax,0x8(%esp,1) : 8052e2c: mov $0xc2000000,%eax : 8052e31: mov %eax,0x4(%esp,1) : 8052e35: mov $0x42000000,%eax : 8052e3a: mov %eax,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052e3d: mov 0x805a748,%eax : 8052e42: call *%eax : qglEnd (); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052e44: mov 0x805a6a0,%eax : 8052e49: call *%eax : : qglBegin (GL_QUADS); : 8052e4b: movl $0x7,(%esp,1) 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 8052e52: mov 0x805a620,%eax : 8052e57: call *%eax : qglColor4f (0.0f, 0.0f, 0.5f, 1.0f); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052e59: mov $0x3f800000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052e5e: mov %eax,0xc(%esp,1) : 8052e62: mov $0x3f000000,%eax : 8052e67: mov %eax,0x8(%esp,1) : 8052e6b: mov $0x0,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052e70: mov %eax,0x4(%esp,1) : 8052e74: mov $0x0,%eax : 8052e79: mov %eax,(%esp,1) : 8052e7c: mov 0x805a640,%eax : 8052e81: call *%eax : : qglVertex3f ( 128, 128, 130); : 8052e83: mov $0x43020000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052e88: mov %eax,0x8(%esp,1) : 8052e8c: mov $0x43000000,%eax : 8052e91: mov %eax,0x4(%esp,1) : 8052e95: mov $0x43000000,%eax : 8052e9a: mov %eax,(%esp,1) : 8052e9d: mov 0x805a748,%eax : 8052ea2: call *%eax : qglVertex3f ( 128, -128, 130); : 8052ea4: mov $0x43020000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052ea9: mov %eax,0x8(%esp,1) : 8052ead: mov $0xc3000000,%eax : 8052eb2: mov %eax,0x4(%esp,1) : 8052eb6: mov $0x43000000,%eax : 8052ebb: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052ebe: mov 0x805a748,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052ec3: call *%eax : qglVertex3f (-128, -128, 130); : 8052ec5: mov $0x43020000,%eax : 8052eca: mov %eax,0x8(%esp,1) : 8052ece: mov $0xc3000000,%eax : 8052ed3: mov %eax,0x4(%esp,1) : 8052ed7: mov $0xc3000000,%eax : 8052edc: mov %eax,(%esp,1) : 8052edf: mov 0x805a748,%eax : 8052ee4: call *%eax : qglVertex3f (-128, 128, 130); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052ee6: mov $0x43020000,%eax : 8052eeb: mov %eax,0x8(%esp,1) : 8052eef: mov $0x43000000,%eax : 8052ef4: mov %eax,0x4(%esp,1) : 8052ef8: mov $0xc3000000,%eax 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052efd: mov %eax,(%esp,1) : 8052f00: mov 0x805a748,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052f05: call *%eax : : qglVertex3f ( 128, 128, 130); : 8052f07: mov $0x43020000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052f0c: mov %eax,0x8(%esp,1) : 8052f10: mov $0x43000000,%eax : 8052f15: mov %eax,0x4(%esp,1) : 8052f19: mov $0x43000000,%eax : 8052f1e: mov %eax,(%esp,1) : 8052f21: mov 0x805a748,%eax : 8052f26: call *%eax : qglVertex3f (-128, 128, 130); : 8052f28: mov $0x43020000,%eax : 8052f2d: mov %eax,0x8(%esp,1) : 8052f31: mov $0x43000000,%eax : 8052f36: mov %eax,0x4(%esp,1) : 8052f3a: mov $0xc3000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052f3f: mov %eax,(%esp,1) : 8052f42: mov 0x805a748,%eax : 8052f47: call *%eax : qglVertex3f (-128, -128, 130); : 8052f49: mov $0x43020000,%eax : 8052f4e: mov %eax,0x8(%esp,1) : 8052f52: mov $0xc3000000,%eax : 8052f57: mov %eax,0x4(%esp,1) : 8052f5b: mov $0xc3000000,%eax : 8052f60: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052f63: mov 0x805a748,%eax : 8052f68: call *%eax : qglVertex3f ( 128, -128, 130); : 8052f6a: mov $0x43020000,%eax : 8052f6f: mov %eax,0x8(%esp,1) : 8052f73: mov $0xc3000000,%eax : 8052f78: mov %eax,0x4(%esp,1) : 8052f7c: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052f81: mov %eax,(%esp,1) : 8052f84: mov 0x805a748,%eax : 8052f89: call *%eax : : qglColor4f (0.0f, 0.5f, 0.0f, 1.0f); : 8052f8b: mov $0x3f800000,%eax : 8052f90: mov %eax,0xc(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052f94: mov $0x0,%eax : 8052f99: mov %eax,0x8(%esp,1) : 8052f9d: mov $0x3f000000,%eax : 8052fa2: mov %eax,0x4(%esp,1) : 8052fa6: mov $0x0,%eax : 8052fab: mov %eax,(%esp,1) : 8052fae: mov 0x805a640,%eax : 8052fb3: call *%eax : : qglVertex3f ( 128, 128, -130); : 8052fb5: mov $0xc3020000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052fba: mov %eax,0x8(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052fbe: mov $0x43000000,%eax : 8052fc3: mov %eax,0x4(%esp,1) : 8052fc7: mov $0x43000000,%eax : 8052fcc: mov %eax,(%esp,1) : 8052fcf: mov 0x805a748,%eax : 8052fd4: call *%eax : qglVertex3f ( 128, -128, -130); : 8052fd6: mov $0xc3020000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052fdb: mov %eax,0x8(%esp,1) : 8052fdf: mov $0xc3000000,%eax : 8052fe4: mov %eax,0x4(%esp,1) : 8052fe8: mov $0x43000000,%eax : 8052fed: mov %eax,(%esp,1) : 8052ff0: mov 0x805a748,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052ff5: call *%eax : qglVertex3f (-128, -128, -130); : 8052ff7: mov $0xc3020000,%eax : 8052ffc: mov %eax,0x8(%esp,1) 5 0.0148 2 0.2247 1 0.7143 0 0.0e+00 : 8053000: mov $0xc3000000,%eax 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053005: mov %eax,0x4(%esp,1) : 8053009: mov $0xc3000000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805300e: mov %eax,(%esp,1) : 8053011: mov 0x805a748,%eax : 8053016: call *%eax : qglVertex3f (-128, 128, -130); : 8053018: mov $0xc3020000,%eax : 805301d: mov %eax,0x8(%esp,1) : 8053021: mov $0x43000000,%eax : 8053026: mov %eax,0x4(%esp,1) : 805302a: mov $0xc3000000,%eax : 805302f: mov %eax,(%esp,1) : 8053032: mov 0x805a748,%eax : 8053037: call *%eax : : qglVertex3f ( 128, 128, -130); : 8053039: mov $0xc3020000,%eax : 805303e: mov %eax,0x8(%esp,1) : 8053042: mov $0x43000000,%eax : 8053047: mov %eax,0x4(%esp,1) : 805304b: mov $0x43000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053050: mov %eax,(%esp,1) : 8053053: mov 0x805a748,%eax : 8053058: call *%eax : qglVertex3f (-128, 128, -130); : 805305a: mov $0xc3020000,%eax : 805305f: mov %eax,0x8(%esp,1) : 8053063: mov $0x43000000,%eax : 8053068: mov %eax,0x4(%esp,1) : 805306c: mov $0xc3000000,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053071: mov %eax,(%esp,1) : 8053074: mov 0x805a748,%eax : 8053079: call *%eax : qglVertex3f (-128, -128, -130); : 805307b: mov $0xc3020000,%eax : 8053080: mov %eax,0x8(%esp,1) 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053084: mov $0xc3000000,%eax : 8053089: mov %eax,0x4(%esp,1) : 805308d: mov $0xc3000000,%eax : 8053092: mov %eax,(%esp,1) : 8053095: mov 0x805a748,%eax : 805309a: call *%eax : qglVertex3f ( 128, -128, -130); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805309c: mov $0xc3020000,%eax : 80530a1: mov %eax,0x8(%esp,1) : 80530a5: mov $0xc3000000,%eax : 80530aa: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80530ae: mov $0x43000000,%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80530b3: mov %eax,(%esp,1) : 80530b6: mov 0x805a748,%eax : 80530bb: call *%eax : : qglColor4f (1.0f, 1.0f, 1.0f, 1.0f); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80530bd: mov $0x3f800000,%eax : 80530c2: mov %eax,0xc(%esp,1) : 80530c6: mov $0x3f800000,%eax : 80530cb: mov %eax,0x8(%esp,1) : 80530cf: mov $0x3f800000,%eax : 80530d4: mov %eax,0x4(%esp,1) : 80530d8: mov $0x3f800000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80530dd: mov %eax,(%esp,1) : 80530e0: mov 0x805a640,%eax : 80530e5: call *%eax : qglEnd (); : 80530e7: mov 0x805a6a0,%eax : 80530ec: call *%eax : : qglEnable (GL_TEXTURE_2D); : 80530ee: movl $0xde1,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80530f5: mov 0x805a690,%eax : 80530fa: call *%eax :} : 80530fc: leave : 80530fd: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804d23e : /* Matrix4x4_CreateRotate total: 207 0.6116 1 0.1124 6 4.2857 1 0.9434 */ : out->m[3][3]=1.0f; :} : :void Matrix4x4_CreateRotate(matrix4x4_t *out, double angle, double x, double y, double z) :{ 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d23e: push %ebp 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d23f: mov %esp,%ebp 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d241: sub $0x48,%esp : 804d244: fldl 0xc(%ebp) : 804d247: fstpl 0xfffffff8(%ebp) : 804d24a: fldl 0x14(%ebp) : 804d24d: fstpl 0xfffffff0(%ebp) : 804d250: fldl 0x1c(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d253: fstpl 0xffffffe8(%ebp) : 804d256: fldl 0x24(%ebp) : 804d259: fstpl 0xffffffe0(%ebp) : double len, c, s; : : len = x*x+y*y+z*z; : 804d25c: fldl 0xfffffff0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d25f: fmull 0xfffffff0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d262: fldl 0xffffffe8(%ebp) : 804d265: fmull 0xffffffe8(%ebp) : 804d268: faddp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d26a: fldl 0xffffffe0(%ebp) : 804d26d: fmull 0xffffffe0(%ebp) : 804d270: faddp %st,%st(1) : 804d272: fstpl 0xffffffd8(%ebp) : if (len != 0.0f) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d275: fldl 0xffffffd8(%ebp) : 804d278: fldz 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d27a: fxch %st(1) : 804d27c: fucompp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d27e: fnstsw %ax : 804d280: sahf 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d281: jne 804d287 : 804d283: jp 804d287 : 804d285: jmp 804d299 : len = 1.0f / (double)sqrt(len); : 804d287: fldl 0xffffffd8(%ebp) 24 0.0709 1 0.1124 2 1.4286 0 0.0e+00 : 804d28a: fstpl (%esp,1) : 804d28d: call 8048e94 <_init+0x218> : 804d292: fld1 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d294: fdivp %st,%st(1) : 804d296: fstpl 0xffffffd8(%ebp) : x *= len; : 804d299: fldl 0xfffffff0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d29c: fmull 0xffffffd8(%ebp) : 804d29f: fstpl 0xfffffff0(%ebp) : y *= len; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2a2: fldl 0xffffffe8(%ebp) : 804d2a5: fmull 0xffffffd8(%ebp) : 804d2a8: fstpl 0xffffffe8(%ebp) : z *= len; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2ab: fldl 0xffffffe0(%ebp) : 804d2ae: fmull 0xffffffd8(%ebp) : 804d2b1: fstpl 0xffffffe0(%ebp) : : angle *= (double)(-M_PI / 180.0); 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 804d2b4: fldl 0xfffffff8(%ebp) : 804d2b7: fldl 0x80582f8 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2bd: fmulp %st,%st(1) : 804d2bf: fstpl 0xfffffff8(%ebp) : c = (double)cos(angle); 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2c2: fldl 0xfffffff8(%ebp) : 804d2c5: fstpl (%esp,1) : 804d2c8: call 8048cb4 <_init+0x38> : 804d2cd: fstpl 0xffffffd0(%ebp) : s = (double)sin(angle); 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2d0: fldl 0xfffffff8(%ebp) : 804d2d3: fstpl (%esp,1) : 804d2d6: call 8048fc4 <_init+0x348> 16 0.0473 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2db: fstpl 0xffffffc8(%ebp) : : out->m[0][0]=x * x + c * (1 - x * x); 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2de: mov 0x8(%ebp),%eax : 804d2e1: fldl 0xfffffff0(%ebp) : 804d2e4: fmull 0xfffffff0(%ebp) : 804d2e7: fldl 0xfffffff0(%ebp) : 804d2ea: fmull 0xfffffff0(%ebp) : 804d2ed: fld1 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2ef: fsubp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2f1: fmull 0xffffffd0(%ebp) : 804d2f4: faddp %st,%st(1) : 804d2f6: fstpl (%eax) : out->m[0][1]=x * y * (1 - c) + z * s; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2f8: mov 0x8(%ebp),%eax : 804d2fb: fldl 0xfffffff0(%ebp) 21 0.0621 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d2fe: fmull 0xffffffe8(%ebp) 2 0.0059 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d301: fld1 : 804d303: fsubl 0xffffffd0(%ebp) : 804d306: fmulp %st,%st(1) : 804d308: fldl 0xffffffe0(%ebp) : 804d30b: fmull 0xffffffc8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d30e: faddp %st,%st(1) : 804d310: fstpl 0x8(%eax) : out->m[0][2]=z * x * (1 - c) - y * s; : 804d313: mov 0x8(%ebp),%eax : 804d316: fldl 0xffffffe0(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d319: fmull 0xfffffff0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d31c: fld1 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d31e: fsubl 0xffffffd0(%ebp) : 804d321: fmulp %st,%st(1) : 804d323: fldl 0xffffffe8(%ebp) : 804d326: fmull 0xffffffc8(%ebp) : 804d329: fsubrp %st,%st(1) : 804d32b: fstpl 0x10(%eax) : out->m[0][3]=0.0f; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d32e: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d331: fldz : 804d333: fstpl 0x18(%eax) : out->m[1][0]=x * y * (1 - c) - z * s; : 804d336: mov 0x8(%ebp),%eax : 804d339: fldl 0xfffffff0(%ebp) : 804d33c: fmull 0xffffffe8(%ebp) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d33f: fld1 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d341: fsubl 0xffffffd0(%ebp) : 804d344: fmulp %st,%st(1) : 804d346: fldl 0xffffffe0(%ebp) : 804d349: fmull 0xffffffc8(%ebp) : 804d34c: fsubrp %st,%st(1) : 804d34e: fstpl 0x20(%eax) : out->m[1][1]=y * y + c * (1 - y * y); : 804d351: mov 0x8(%ebp),%eax : 804d354: fldl 0xffffffe8(%ebp) : 804d357: fmull 0xffffffe8(%ebp) : 804d35a: fldl 0xffffffe8(%ebp) : 804d35d: fmull 0xffffffe8(%ebp) : 804d360: fld1 : 804d362: fsubp %st,%st(1) : 804d364: fmull 0xffffffd0(%ebp) : 804d367: faddp %st,%st(1) 1 0.0030 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d369: fstpl 0x28(%eax) : out->m[1][2]=y * z * (1 - c) + x * s; : 804d36c: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d36f: fldl 0xffffffe8(%ebp) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d372: fmull 0xffffffe0(%ebp) : 804d375: fld1 : 804d377: fsubl 0xffffffd0(%ebp) : 804d37a: fmulp %st,%st(1) : 804d37c: fldl 0xfffffff0(%ebp) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d37f: fmull 0xffffffc8(%ebp) 10 0.0295 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d382: faddp %st,%st(1) : 804d384: fstpl 0x30(%eax) : out->m[1][3]=0.0f; : 804d387: mov 0x8(%ebp),%eax : 804d38a: fldz : 804d38c: fstpl 0x38(%eax) : out->m[2][0]=z * x * (1 - c) + y * s; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d38f: mov 0x8(%ebp),%eax : 804d392: fldl 0xffffffe0(%ebp) : 804d395: fmull 0xfffffff0(%ebp) : 804d398: fld1 : 804d39a: fsubl 0xffffffd0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d39d: fmulp %st,%st(1) : 804d39f: fldl 0xffffffe8(%ebp) : 804d3a2: fmull 0xffffffc8(%ebp) : 804d3a5: faddp %st,%st(1) : 804d3a7: fstpl 0x40(%eax) : out->m[2][1]=y * z * (1 - c) - x * s; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3aa: mov 0x8(%ebp),%eax : 804d3ad: fldl 0xffffffe8(%ebp) : 804d3b0: fmull 0xffffffe0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3b3: fld1 : 804d3b5: fsubl 0xffffffd0(%ebp) : 804d3b8: fmulp %st,%st(1) : 804d3ba: fldl 0xfffffff0(%ebp) 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3bd: fmull 0xffffffc8(%ebp) : 804d3c0: fsubrp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3c2: fstpl 0x48(%eax) : out->m[2][2]=z * z + c * (1 - z * z); : 804d3c5: mov 0x8(%ebp),%eax : 804d3c8: fldl 0xffffffe0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3cb: fmull 0xffffffe0(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3ce: fldl 0xffffffe0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3d1: fmull 0xffffffe0(%ebp) : 804d3d4: fld1 : 804d3d6: fsubp %st,%st(1) : 804d3d8: fmull 0xffffffd0(%ebp) : 804d3db: faddp %st,%st(1) : 804d3dd: fstpl 0x50(%eax) : out->m[2][3]=0.0f; : 804d3e0: mov 0x8(%ebp),%eax : 804d3e3: fldz 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3e5: fstpl 0x58(%eax) : out->m[3][0]=0.0f; : 804d3e8: mov 0x8(%ebp),%eax : 804d3eb: fldz 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3ed: fstpl 0x60(%eax) : out->m[3][1]=0.0f; : 804d3f0: mov 0x8(%ebp),%eax : 804d3f3: fldz 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d3f5: fstpl 0x68(%eax) : out->m[3][2]=0.0f; : 804d3f8: mov 0x8(%ebp),%eax : 804d3fb: fldz : 804d3fd: fstpl 0x70(%eax) : out->m[3][3]=1.0f; : 804d400: mov 0x8(%ebp),%eax 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d403: fld1 : 804d405: fstpl 0x78(%eax) :} : 804d408: leave 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d409: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804b1e4 <_Mem_Alloc>: /* _Mem_Alloc total: 188 0.5555 2 0.2247 6 4.2857 2 1.8868 */ :_Mem_Alloc :======================== :*/ :void *_Mem_Alloc ( Mem_Zone *zone, Nsize size, const char *filename, int line ) :{ : 804b1e4: push %ebp 31 0.0916 0 0.0e+00 2 1.4286 0 0.0e+00 : 804b1e5: mov %esp,%ebp : 804b1e7: sub $0x38,%esp : Alloc_Header *header; : Alloc_Trail *trail; : void *data; : : if( !zone ) : 804b1ea: cmpl $0x0,0x8(%ebp) : 804b1ee: jne 804b20a <_Mem_Alloc+0x26> : wrap_cerror( "Null pointer passed as zone (%s %i)!", filename, line ); : 804b1f0: mov 0x14(%ebp),%eax : 804b1f3: mov %eax,0x8(%esp,1) : 804b1f7: mov 0x10(%ebp),%eax : 804b1fa: mov %eax,0x4(%esp,1) : 804b1fe: movl $0x8057d00,(%esp,1) : 804b205: call 804a769 : : if ( zone->flag & MEM_ZONE_CLUMP ) : 804b20a: mov 0x8(%ebp),%eax 24 0.0709 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b20d: mov 0xc(%eax),%eax : 804b210: and $0x1,%eax : 804b213: test %eax,%eax : 804b215: je 804b3bc <_Mem_Alloc+0x1d8> : { : Clump *clump; : : clump = zone->current; : 804b21b: mov 0x8(%ebp),%eax : 804b21e: mov 0x40(%eax),%eax : 804b221: mov %eax,0xfffffff0(%ebp) : : if( size + CLUMP_ALLOC_OVERHEAD > zone->clumpsize ) : 804b224: mov 0xc(%ebp),%edx : 804b227: add $0x8,%edx : 804b22a: mov 0x8(%ebp),%eax : 804b22d: cmp 0x3c(%eax),%edx : 804b230: jbe 804b26c <_Mem_Alloc+0x88> : wrap_cerror( : 804b232: mov 0x8(%ebp),%eax : 804b235: mov 0x3c(%eax),%eax : 804b238: mov %eax,0x14(%esp,1) : 804b23c: mov 0x8(%ebp),%eax : 804b23f: mov 0x4(%eax),%eax : 804b242: mov %eax,0x10(%esp,1) : 804b246: mov 0x8(%ebp),%eax : 804b249: mov (%eax),%eax : 804b24b: mov %eax,0xc(%esp,1) : 804b24f: mov 0x8(%ebp),%eax : 804b252: mov 0x8(%eax),%eax : 804b255: mov %eax,0x8(%esp,1) : 804b259: mov 0xc(%ebp),%eax : 804b25c: mov %eax,0x4(%esp,1) : 804b260: movl $0x8057d40,(%esp,1) : 804b267: call 804a769 : "Couldn't allocate %i bytes in clump zone '%s'(%s:%i) with clumpsize %i!", : size, zone->name, zone->filename, zone->line, zone->clumpsize ); : : // do we need to allocate a new clump ? : if ( !clump || ( (char*) clump->position - (char*) clump->data + size + CLUMP_ALLOC_OVERHEAD ) > zone->clumpsize ) : 804b26c: cmpl $0x0,0xfffffff0(%ebp) : 804b270: je 804b293 <_Mem_Alloc+0xaf> : 804b272: mov 0xfffffff0(%ebp),%ecx : 804b275: mov 0xfffffff0(%ebp),%eax : 804b278: mov 0x4(%eax),%edx : 804b27b: mov 0x8(%ecx),%eax : 804b27e: sub %edx,%eax : 804b280: add 0xc(%ebp),%eax : 804b283: lea 0x8(%eax),%edx : 804b286: mov 0x8(%ebp),%eax : 804b289: cmp 0x3c(%eax),%edx : 804b28c: ja 804b293 <_Mem_Alloc+0xaf> : 804b28e: jmp 804b37b <_Mem_Alloc+0x197> : { : clump = wrap_alloc( sizeof(Clump) + zone->clumpsize ); : 804b293: mov 0x8(%ebp),%eax : 804b296: mov 0x3c(%eax),%eax : 804b299: add $0x18,%eax : 804b29c: mov %eax,0x4(%esp,1) : 804b2a0: movl $0x1,(%esp,1) : 804b2a7: call 8048f14 <_init+0x298> : 804b2ac: mov %eax,0xfffffff0(%ebp) : if ( !clump ) : 804b2af: cmpl $0x0,0xfffffff0(%ebp) : 804b2b3: jne 804b2cf <_Mem_Alloc+0xeb> : wrap_cerror( "Not enough memory (%s %i)!", filename, line ); : 804b2b5: mov 0x14(%ebp),%eax : 804b2b8: mov %eax,0x8(%esp,1) : 804b2bc: mov 0x10(%ebp),%eax : 804b2bf: mov %eax,0x4(%esp,1) : 804b2c3: movl $0x8057d88,(%esp,1) : 804b2ca: call 804a769 : : clump->next = zone->current; : 804b2cf: mov 0xfffffff0(%ebp),%edx : 804b2d2: mov 0x8(%ebp),%eax : 804b2d5: mov 0x40(%eax),%eax : 804b2d8: mov %eax,0x14(%edx) : if ( zone->current ) : 804b2db: mov 0x8(%ebp),%eax : 804b2de: cmpl $0x0,0x40(%eax) : 804b2e2: je 804b2f0 <_Mem_Alloc+0x10c> : zone->current->prev = clump; : 804b2e4: mov 0x8(%ebp),%eax : 804b2e7: mov 0x40(%eax),%edx : 804b2ea: mov 0xfffffff0(%ebp),%eax : 804b2ed: mov %eax,0x10(%edx) : clump->prev = 0; : 804b2f0: mov 0xfffffff0(%ebp),%eax : 804b2f3: movl $0x0,0x10(%eax) : : zone->current = clump; : 804b2fa: mov 0x8(%ebp),%edx : 804b2fd: mov 0xfffffff0(%ebp),%eax : 804b300: mov %eax,0x40(%edx) : : // init the clump struct : clump->data = clump + 1; : 804b303: mov 0xfffffff0(%ebp),%edx : 804b306: mov 0xfffffff0(%ebp),%eax : 804b309: add $0x18,%eax : 804b30c: mov %eax,0x4(%edx) : clump->position = clump->data; : 804b30f: mov 0xfffffff0(%ebp),%edx : 804b312: mov 0xfffffff0(%ebp),%eax : 804b315: mov 0x4(%eax),%eax : 804b318: mov %eax,0x8(%edx) : : clump->alloc_count = 0; : 804b31b: mov 0xfffffff0(%ebp),%eax : 804b31e: movl $0x0,0xc(%eax) : : clump->zone = zone; : 804b325: mov 0xfffffff0(%ebp),%edx : 804b328: mov 0x8(%ebp),%eax : 804b32b: mov %eax,(%edx) : : AllocStats_Update( &zone->info, zone->clumpsize, CLUMP_OVERHEAD, false ); : 804b32d: movl $0x0,0xc(%esp,1) : 804b335: movl $0x18,0x8(%esp,1) : 804b33d: mov 0x8(%ebp),%eax : 804b340: mov 0x3c(%eax),%eax : 804b343: mov %eax,0x4(%esp,1) : 804b347: mov 0x8(%ebp),%eax : 804b34a: add $0x18,%eax : 804b34d: mov %eax,(%esp,1) : 804b350: call 804ad1f : AllocStats_Update( &GlobalStats, zone->clumpsize, CLUMP_OVERHEAD, false ); : 804b355: movl $0x0,0xc(%esp,1) : 804b35d: movl $0x18,0x8(%esp,1) : 804b365: mov 0x8(%ebp),%eax : 804b368: mov 0x3c(%eax),%eax : 804b36b: mov %eax,0x4(%esp,1) : 804b36f: movl $0x805a600,(%esp,1) : 804b376: call 804ad1f : } : : // we have a valid clump now : data = clump->position; : 804b37b: mov 0xfffffff0(%ebp),%eax : 804b37e: mov 0x8(%eax),%eax : 804b381: mov %eax,0xfffffff4(%ebp) : : // set the sentinel : header = (Alloc_Header*) data; : 804b384: mov 0xfffffff4(%ebp),%eax : 804b387: mov %eax,0xfffffffc(%ebp) : header->alloc = clump; : 804b38a: mov 0xfffffffc(%ebp),%edx : 804b38d: mov 0xfffffff0(%ebp),%eax : 804b390: mov %eax,(%edx) : header->sentinel = SENTINEL; : 804b392: mov 0xfffffffc(%ebp),%eax : 804b395: movb $0x85,0x4(%eax) : : clump->alloc_count++; : 804b399: mov 0xfffffff0(%ebp),%eax : 804b39c: incl 0xc(%eax) : : clump->position = (char*) data + sizeof(Alloc_Header) + size; : 804b39f: mov 0xfffffff0(%ebp),%edx : 804b3a2: mov 0xc(%ebp),%eax : 804b3a5: add 0xfffffff4(%ebp),%eax : 804b3a8: add $0x8,%eax : 804b3ab: mov %eax,0x8(%edx) : return header + 1; : 804b3ae: mov 0xfffffffc(%ebp),%eax : 804b3b1: add $0x8,%eax : 804b3b4: mov %eax,0xffffffec(%ebp) : 804b3b7: jmp 804b4e2 <_Mem_Alloc+0x2fe> : } else { : Alloc *alloc; : : alloc = wrap_ialloc( sizeof(Alloc) ); : 804b3bc: movl $0x1c,(%esp,1) 74 0.2187 2 0.2247 2 1.4286 0 0.0e+00 : 804b3c3: call 8048d94 <_init+0x118> : 804b3c8: mov %eax,0xfffffff0(%ebp) : data = wrap_alloc( sizeof(Alloc_Header) + sizeof(Alloc_Trail) + size ); : 804b3cb: mov 0xc(%ebp),%eax : 804b3ce: add $0x9,%eax : 804b3d1: mov %eax,0x4(%esp,1) : 804b3d5: movl $0x1,(%esp,1) : 804b3dc: call 8048f14 <_init+0x298> 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 804b3e1: mov %eax,0xfffffff4(%ebp) : if ( !alloc || !data ) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b3e4: cmpl $0x0,0xfffffff0(%ebp) : 804b3e8: je 804b3f0 <_Mem_Alloc+0x20c> : 804b3ea: cmpl $0x0,0xfffffff4(%ebp) : 804b3ee: jne 804b40a <_Mem_Alloc+0x226> : wrap_cerror( "Not enough space (%s %i)!", filename, line ); : 804b3f0: mov 0x14(%ebp),%eax : 804b3f3: mov %eax,0x8(%esp,1) : 804b3f7: mov 0x10(%ebp),%eax : 804b3fa: mov %eax,0x4(%esp,1) : 804b3fe: movl $0x8057da3,(%esp,1) : 804b405: call 804a769 : : // set the sentinels : header = (Alloc_Header*) data; : 804b40a: mov 0xfffffff4(%ebp),%eax 18 0.0532 0 0.0e+00 2 1.4286 1 0.9434 : 804b40d: mov %eax,0xfffffffc(%ebp) : header->alloc = alloc; : 804b410: mov 0xfffffffc(%ebp),%edx : 804b413: mov 0xfffffff0(%ebp),%eax : 804b416: mov %eax,(%edx) : header->sentinel = SENTINEL; : 804b418: mov 0xfffffffc(%ebp),%eax : 804b41b: movb $0x85,0x4(%eax) : : trail = (Alloc_Trail*) ((char*) data + sizeof(Alloc_Header) + size ); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b41f: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b422: add 0xfffffff4(%ebp),%eax : 804b425: add $0x8,%eax : 804b428: mov %eax,0xfffffff8(%ebp) : trail->sentinel = SENTINEL; : 804b42b: mov 0xfffffff8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b42e: movb $0x85,(%eax) : : // set the alloc struct : alloc->filename = filename; : 804b431: mov 0xfffffff0(%ebp),%edx : 804b434: mov 0x10(%ebp),%eax : 804b437: mov %eax,0x4(%edx) : alloc->line = line; : 804b43a: mov 0xfffffff0(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b43d: mov 0x14(%ebp),%eax : 804b440: mov %eax,0x8(%edx) : : alloc->zone = zone; 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b443: mov 0xfffffff0(%ebp),%edx : 804b446: mov 0x8(%ebp),%eax : 804b449: mov %eax,(%edx) : : alloc->data = header; : 804b44b: mov 0xfffffff0(%ebp),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b44e: mov 0xfffffffc(%ebp),%eax : 804b451: mov %eax,0x10(%edx) : : alloc->next = zone->list; : 804b454: mov 0xfffffff0(%ebp),%edx : 804b457: mov 0x8(%ebp),%eax : 804b45a: mov 0x38(%eax),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b45d: mov %eax,0x18(%edx) : if ( zone->list ) : 804b460: mov 0x8(%ebp),%eax : 804b463: cmpl $0x0,0x38(%eax) : 804b467: je 804b475 <_Mem_Alloc+0x291> : zone->list->prev = alloc; : 804b469: mov 0x8(%ebp),%eax : 804b46c: mov 0x38(%eax),%edx : 804b46f: mov 0xfffffff0(%ebp),%eax : 804b472: mov %eax,0x14(%edx) : alloc->prev = 0; : 804b475: mov 0xfffffff0(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b478: movl $0x0,0x14(%eax) : : zone->list = alloc; 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b47f: mov 0x8(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b482: mov 0xfffffff0(%ebp),%eax : 804b485: mov %eax,0x38(%edx) : : alloc->size = size; : 804b488: mov 0xfffffff0(%ebp),%edx : 804b48b: mov 0xc(%ebp),%eax : 804b48e: mov %eax,0xc(%edx) : : // update the stats : AllocStats_Update( &zone->info, size, ZONE_ALLOC_OVERHEAD, false ); : 804b491: movl $0x0,0xc(%esp,1) : 804b499: movl $0x25,0x8(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b4a1: mov 0xc(%ebp),%eax : 804b4a4: mov %eax,0x4(%esp,1) : 804b4a8: mov 0x8(%ebp),%eax : 804b4ab: add $0x18,%eax : 804b4ae: mov %eax,(%esp,1) : 804b4b1: call 804ad1f : AllocStats_Update( &GlobalStats, size, ZONE_ALLOC_OVERHEAD, false ); : 804b4b6: movl $0x0,0xc(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b4be: movl $0x25,0x8(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b4c6: mov 0xc(%ebp),%eax : 804b4c9: mov %eax,0x4(%esp,1) : 804b4cd: movl $0x805a600,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b4d4: call 804ad1f : : return header + 1; : 804b4d9: mov 0xfffffffc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b4dc: add $0x8,%eax : 804b4df: mov %eax,0xffffffec(%ebp) : } :} : 804b4e2: mov 0xffffffec(%ebp),%eax : 804b4e5: leave : 804b4e6: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080532ae : /* R_Draw2D total: 175 0.5171 1 0.1124 5 3.5714 4 3.7736 */ : ParticleEffect_Draw (); :} : :void R_Draw2D(void) :{ 5 0.0148 0 0.0e+00 1 0.7143 0 0.0e+00 : 80532ae: push %ebp 4 0.0118 0 0.0e+00 1 0.7143 0 0.0e+00 : 80532af: mov %esp,%ebp 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 80532b1: push %edi : 80532b2: push %esi : 80532b3: sub $0xd0,%esp : char tempstring[128]; : qglMatrixMode(GL_PROJECTION); : 80532b9: movl $0x1701,(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80532c0: mov 0x805a6f8,%eax : 80532c5: call *%eax : qglLoadIdentity(); : 80532c7: mov 0x805a6d8,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 80532cc: call *%eax : qglOrtho(0, 640, 480, 0, -100, 100); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80532ce: fldl 0x8058c70 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80532d4: fstpl 0x28(%esp,1) : 80532d8: fldl 0x8058c78 : 80532de: fstpl 0x20(%esp,1) : 80532e2: fldz : 80532e4: fstpl 0x18(%esp,1) : 80532e8: fldl 0x8058c80 : 80532ee: fstpl 0x10(%esp,1) : 80532f2: fldl 0x8058c88 : 80532f8: fstpl 0x8(%esp,1) : 80532fc: fldz : 80532fe: fstpl (%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053301: mov 0x805a718,%eax : 8053306: call *%eax : qglMatrixMode(GL_MODELVIEW); : 8053308: movl $0x1700,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805330f: mov 0x805a6f8,%eax : 8053314: call *%eax : qglLoadIdentity(); : 8053316: mov 0x805a6d8,%eax : 805331b: call *%eax : r_backend_worldviewmatrix = r_identitymatrix; : 805331d: mov $0x89df380,%edi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053322: mov $0x89df300,%esi : 8053327: mov $0x80,%eax : 805332c: cld 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805332d: mov %eax,%ecx : 805332f: shr $0x2,%ecx 13 0.0384 1 0.1124 0 0.0e+00 0 0.0e+00 : 8053332: repz movsl %ds:(%esi),%es:(%edi) : R_SetMatrix(&r_identitymatrix); 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053334: movl $0x89df300,(%esp,1) : 805333b: call 8052475 : qglEnable(GL_TEXTURE_2D); : 8053340: movl $0xde1,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053347: mov 0x805a690,%eax : 805334c: call *%eax : qglEnable(GL_CULL_FACE); : 805334e: movl $0xb44,(%esp,1) : 8053355: mov 0x805a690,%eax : 805335a: call *%eax : qglDisable(GL_DEPTH_TEST); : 805335c: movl $0xb71,(%esp,1) : 8053363: mov 0x805a660,%eax : 8053368: call *%eax : Texture_Bind ("lhfont.tga"); : 805336a: movl $0x8058c00,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053371: call 80521c2 : qglColor4f(1,1,1,1); : 8053376: mov $0x3f800000,%eax 4 0.0118 0 0.0e+00 0 0.0e+00 1 0.9434 : 805337b: mov %eax,0xc(%esp,1) 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805337f: mov $0x3f800000,%eax 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053384: mov %eax,0x8(%esp,1) : 8053388: mov $0x3f800000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805338d: mov %eax,0x4(%esp,1) : 8053391: mov $0x3f800000,%eax : 8053396: mov %eax,(%esp,1) : 8053399: mov 0x805a640,%eax : 805339e: call *%eax : r_fpsframecount++; : 80533a0: incl 0x89df2e0 : if (r_time >= r_fpsbasetime + 1 || r_fpsframecount >= 100) : 80533a6: fldl 0x89df400 : 80533ac: fld1 : 80533ae: faddp %st,%st(1) : 80533b0: fldl 0x89df5c0 : 80533b6: fucompp : 80533b8: fnstsw %ax : 80533ba: sahf : 80533bb: jae 80533c8 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80533bd: cmpl $0x63,0x89df2e0 3 0.0089 0 0.0e+00 1 0.7143 0 0.0e+00 : 80533c4: jg 80533c8 : 80533c6: jmp 805341c : { : r_fps = (int) ((double) r_fpsframecount / ((double) r_time - (double) r_fpsbasetime)); : 80533c8: fildl 0x89df2e0 : 80533ce: fldl 0x89df5c0 : 80533d4: fsubl 0x89df400 : 80533da: fdivrp %st,%st(1) : 80533dc: fnstcw 0xffffff76(%ebp) : 80533e2: movzwl 0xffffff76(%ebp),%eax : 80533e9: or $0xc00,%ax : 80533ed: mov %ax,0xffffff74(%ebp) : 80533f4: fldcw 0xffffff74(%ebp) : 80533fa: fistpl 0x89df5c8 : 8053400: fldcw 0xffffff76(%ebp) : r_fpsbasetime = r_time; : 8053406: fldl 0x89df5c0 : 805340c: fstpl 0x89df400 : r_fpsframecount = 0; : 8053412: movl $0x0,0x89df2e0 : } : snprintf(tempstring, sizeof(tempstring), "fps%5i camera origin %-6.0f %-6.0f %-6.0f camera forward %-6.4f %-6.4f %-6.4f", r_fps, r_cameramatrix.m[0][3], r_cameramatrix.m[1][3], r_cameramatrix.m[2][3], r_cameramatrix.m[0][0], r_cameramatrix.m[0][1], r_cameramatrix.m[0][2]); : 805341c: fldl 0x89df550 46 0.1359 0 0.0e+00 2 1.4286 0 0.0e+00 : 8053422: fstpl 0x38(%esp,1) : 8053426: fldl 0x89df548 : 805342c: fstpl 0x30(%esp,1) : 8053430: fldl 0x89df540 : 8053436: fstpl 0x28(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805343a: fldl 0x89df598 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053440: fstpl 0x20(%esp,1) : 8053444: fldl 0x89df578 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805344a: fstpl 0x18(%esp,1) : 805344e: fldl 0x89df558 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053454: fstpl 0x10(%esp,1) : 8053458: mov 0x89df5c8,%eax : 805345d: mov %eax,0xc(%esp,1) : 8053461: movl $0x8058c20,0x8(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053469: movl $0x80,0x4(%esp,1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053471: lea 0xffffff78(%ebp),%eax : 8053477: mov %eax,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805347a: call 8048ed4 <_init+0x258> : R_DrawString(tempstring, 0, 0, 480 - 8, 8, 8); : 805347f: mov $0x41000000,%eax 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053484: mov %eax,0x14(%esp,1) : 8053488: mov $0x41000000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805348d: mov %eax,0x10(%esp,1) : 8053491: mov $0x43ec0000,%eax : 8053496: mov %eax,0xc(%esp,1) : 805349a: mov $0x0,%eax : 805349f: mov %eax,0x8(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80534a3: movl $0x0,0x4(%esp,1) : 80534ab: lea 0xffffff78(%ebp),%eax : 80534b1: mov %eax,(%esp,1) : 80534b4: call 805224c :} : 80534b9: add $0xd0,%esp 11 0.0325 0 0.0e+00 0 0.0e+00 1 0.9434 : 80534bf: pop %esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80534c0: pop %edi : 80534c1: pop %ebp : 80534c2: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080553f2 : /* ParticleEffect_Frame total: 174 0.5141 3 0.3371 1 0.7143 1 0.9434 */ :ParticleEffect_Frame :==================== :*/ :void ParticleEffect_Frame (matrix4x4_t camera) :{ : 80553f2: push %ebp 35 0.1034 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80553f3: mov %esp,%ebp : 80553f5: push %edi : 80553f6: push %esi : 80553f7: sub $0x90,%esp : NUint32 i; : ParticleEffect *pe = particleeffects; 15 0.0443 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80553fd: mov 0x805a820,%eax : 8055402: mov %eax,0xfffffff0(%ebp) : : for (i=0; i : 8055417: jmp 8055451 : { : if (pe->active) : 8055419: mov 0xfffffff0(%ebp),%eax 16 0.0473 0 0.0e+00 1 0.7143 1 0.9434 : 805541c: cmpl $0x0,0x40(%eax) : 8055420: je 8055444 : { : pe->frame (pe, camera); 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055422: mov 0xfffffff0(%ebp),%edx : 8055425: lea 0x4(%esp,1),%edi : 8055429: lea 0x8(%ebp),%esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805542c: mov $0x80,%eax : 8055431: cld : 8055432: mov %eax,%ecx : 8055434: shr $0x2,%ecx 71 0.2098 2 0.2247 0 0.0e+00 0 0.0e+00 : 8055437: repz movsl %ds:(%esi),%es:(%edi) 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055439: mov 0xfffffff0(%ebp),%eax : 805543c: mov %eax,(%esp,1) : 805543f: mov 0x44(%edx),%eax : 8055442: call *%eax : 8055444: lea 0xfffffff4(%ebp),%eax 13 0.0384 1 0.1124 0 0.0e+00 0 0.0e+00 : 8055447: incl (%eax) : 8055449: lea 0xfffffff0(%ebp),%eax : 805544c: addl $0x48,(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805544f: jmp 805540c : } : } :} 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055451: add $0x90,%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055457: pop %esi : 8055458: pop %edi : 8055459: pop %ebp : 805545a: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080490e4 : /* CRC16_Block total: 171 0.5053 1 0.1124 1 0.7143 0 0.0e+00 */ :}; : :NUint16 :CRC16_Block(const NUint8 *data, size_t size) :{ : 80490e4: push %ebp 31 0.0916 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80490e5: mov %esp,%ebp : 80490e7: sub $0x8,%esp : NUint16 crc16; : NUint i; : : crc16 = 0xffff; : 80490ea: movw $0xffff,0xfffffffe(%ebp) : : for (i = 0; i < size; i++) : 80490f0: movl $0x0,0xfffffff8(%ebp) : 80490f7: mov 0xfffffff8(%ebp),%eax 35 0.1034 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80490fa: cmp 0xc(%ebp),%eax 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80490fd: jb 8049101 : 80490ff: jmp 8049136 : crc16 = (crc16 << 8) ^ crc16table[(crc16 >> 8) ^ data[i]]; : 8049101: movzwl 0xfffffffe(%ebp),%eax 20 0.0591 1 0.1124 0 0.0e+00 0 0.0e+00 : 8049105: mov %eax,%ecx : 8049107: shl $0x8,%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804910a: movzwl 0xfffffffe(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804910e: shr $0x8,%eax 1 0.0030 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049111: movzwl %ax,%edx : 8049114: mov 0xfffffff8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049117: add 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804911a: movzbl (%eax),%eax : 804911d: xor %edx,%eax 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804911f: mov %ecx,%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049121: movzwl 0x805a180(%eax,%eax,1),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049129: xor %edx,%eax : 804912b: mov %ax,0xfffffffe(%ebp) : 804912f: lea 0xfffffff8(%ebp),%eax 43 0.1271 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049132: incl (%eax) : 8049134: jmp 80490f7 : : return crc16; 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049136: movzwl 0xfffffffe(%ebp),%eax :} 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804913a: leave 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804913b: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0805545b : /* ParticleEffect_Draw total: 171 0.5053 5 0.5618 6 4.2857 4 3.7736 */ :ParticleEffect_Draw :=================== :*/ :void ParticleEffect_Draw (void) :{ 1 0.0030 0 0.0e+00 0 0.0e+00 2 1.8868 : 805545b: push %ebp 9 0.0266 0 0.0e+00 1 0.7143 0 0.0e+00 : 805545c: mov %esp,%ebp 1 0.0030 0 0.0e+00 2 1.4286 0 0.0e+00 : 805545e: sub $0x18,%esp : NUint32 i; : : qglEnable (GL_BLEND); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055461: movl $0xbe2,(%esp,1) : 8055468: mov 0x805a690,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805546d: call *%eax : qglTexEnvi (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805546f: movl $0x2100,0x8(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055477: movl $0x2200,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805547f: movl $0x2300,(%esp,1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055486: mov 0x805a730,%eax : 805548b: call *%eax : qglDepthMask (false); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805548d: movl $0x0,(%esp,1) : 8055494: mov 0x805a658,%eax : 8055499: call *%eax : qglBlendFunc (GL_SRC_ALPHA, GL_ONE); : 805549b: movl $0x1,0x4(%esp,1) : 80554a3: movl $0x302,(%esp,1) : 80554aa: mov 0x805a630,%eax : 80554af: call *%eax : : qglEnableClientState (GL_VERTEX_ARRAY); : 80554b1: movl $0x8074,(%esp,1) : 80554b8: mov 0x805a698,%eax : 80554bd: call *%eax : qglEnableClientState (GL_TEXTURE_COORD_ARRAY); : 80554bf: movl $0x8078,(%esp,1) 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80554c6: mov 0x805a698,%eax : 80554cb: call *%eax : qglEnableClientState (GL_COLOR_ARRAY); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80554cd: movl $0x8076,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80554d4: mov 0x805a698,%eax : 80554d9: call *%eax : : qglTexCoordPointer (2, GL_FLOAT, sizeof(Nfloat[2]), particleeffects_tc); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80554db: mov 0x805a828,%eax : 80554e0: mov %eax,0xc(%esp,1) : 80554e4: movl $0x8,0x8(%esp,1) : 80554ec: movl $0x1406,0x4(%esp,1) : 80554f4: movl $0x2,(%esp,1) : 80554fb: mov 0x805a720,%eax : 8055500: call *%eax : : for (i=0; i : 8055514: jmp 805561f : { : if (particleeffects[i].active) : 8055519: mov 0xfffffffc(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805551c: mov %edx,%eax : 805551e: shl $0x3,%eax 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8055521: add %edx,%eax : 8055523: lea 0x0(,%eax,8),%edx : 805552a: mov 0x805a820,%eax : 805552f: cmpl $0x0,0x40(%eax,%edx,1) : 8055534: je 8055615 : { : qglBindTexture (GL_TEXTURE_2D, particleeffects[i].texture); : 805553a: mov 0xfffffffc(%ebp),%edx 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805553d: mov %edx,%eax : 805553f: shl $0x3,%eax 19 0.0561 2 0.2247 2 1.4286 1 0.9434 : 8055542: add %edx,%eax : 8055544: lea 0x0(,%eax,8),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805554b: mov 0x805a820,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055550: mov 0x3c(%eax,%edx,1),%eax : 8055554: mov %eax,0x4(%esp,1) : 8055558: movl $0xde1,(%esp,1) : 805555f: mov 0x805a628,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055564: call *%eax : : qglVertexPointer (3, GL_FLOAT, sizeof(Nfloat[3]), particleeffects[i].va); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055566: mov 0xfffffffc(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055569: mov %edx,%eax : 805556b: shl $0x3,%eax : 805556e: add %edx,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055570: lea 0x0(,%eax,8),%edx : 8055577: mov 0x805a820,%eax : 805557c: mov 0x4(%eax,%edx,1),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055580: mov %eax,0xc(%esp,1) 24 0.0709 1 0.1124 0 0.0e+00 0 0.0e+00 : 8055584: movl $0xc,0x8(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805558c: movl $0x1406,0x4(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055594: movl $0x3,(%esp,1) : 805559b: mov 0x805a750,%eax : 80555a0: call *%eax : qglColorPointer (4, GL_FLOAT, sizeof(Nfloat[4]), particleeffects[i].cl); : 80555a2: mov 0xfffffffc(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555a5: mov %edx,%eax : 80555a7: shl $0x3,%eax : 80555aa: add %edx,%eax : 80555ac: lea 0x0(,%eax,8),%edx : 80555b3: mov 0x805a820,%eax : 80555b8: mov 0x8(%eax,%edx,1),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555bc: mov %eax,0xc(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555c0: movl $0x10,0x8(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555c8: movl $0x1406,0x4(%esp,1) : 80555d0: movl $0x4,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555d7: mov 0x805a648,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555dc: call *%eax : : qglDrawArrays (GL_QUADS, 0, particleeffects[i].numparticles * 4); : 80555de: mov 0xfffffffc(%ebp),%edx 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555e1: mov %edx,%eax : 80555e3: shl $0x3,%eax : 80555e6: add %edx,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555e8: lea 0x0(,%eax,8),%edx : 80555ef: mov 0x805a820,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80555f4: mov 0x38(%eax,%edx,1),%eax : 80555f8: shl $0x2,%eax : 80555fb: mov %eax,0x8(%esp,1) : 80555ff: movl $0x0,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055607: movl $0x7,(%esp,1) : 805560e: mov 0x805a670,%eax : 8055613: call *%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055615: lea 0xfffffffc(%ebp),%eax 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055618: incl (%eax) : 805561a: jmp 8055509 : } : } : : qglDisableClientState (GL_COLOR_ARRAY); 6 0.0177 1 0.1124 0 0.0e+00 0 0.0e+00 : 805561f: movl $0x8076,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055626: mov 0x805a668,%eax : 805562b: call *%eax : qglDisableClientState (GL_TEXTURE_COORD_ARRAY); : 805562d: movl $0x8078,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055634: mov 0x805a668,%eax : 8055639: call *%eax : qglDisableClientState (GL_VERTEX_ARRAY); : 805563b: movl $0x8074,(%esp,1) : 8055642: mov 0x805a668,%eax : 8055647: call *%eax : : qglColor4f (1.0f, 1.0f, 1.0f, 1.0f); : 8055649: mov $0x3f800000,%eax : 805564e: mov %eax,0xc(%esp,1) : 8055652: mov $0x3f800000,%eax : 8055657: mov %eax,0x8(%esp,1) : 805565b: mov $0x3f800000,%eax : 8055660: mov %eax,0x4(%esp,1) : 8055664: mov $0x3f800000,%eax : 8055669: mov %eax,(%esp,1) : 805566c: mov 0x805a640,%eax : 8055671: call *%eax : qglBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); : 8055673: movl $0x303,0x4(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 1 0.9434 : 805567b: movl $0x302,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8055682: mov 0x805a630,%eax : 8055687: call *%eax : qglDepthMask (true); : 8055689: movl $0x1,(%esp,1) : 8055690: mov 0x805a658,%eax : 8055695: call *%eax : qglTexEnvi (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE); : 8055697: movl $0x1e01,0x8(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805569f: movl $0x2200,0x4(%esp,1) : 80556a7: movl $0x2300,(%esp,1) : 80556ae: mov 0x805a730,%eax : 80556b3: call *%eax : qglDisable (GL_BLEND); : 80556b5: movl $0xbe2,(%esp,1) : 80556bc: mov 0x805a660,%eax : 80556c1: call *%eax :} : 80556c3: leave : 80556c4: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08053da6 : /* ParticleEffect_Explosion total: 134 0.3959 0 0.0e+00 0 0.0e+00 2 1.8868 */ :ParticleEffect_Explosion :======================== :*/ :void ParticleEffect_Explosion (const Ndouble origin[3], const NUint32 size) :{ : 8053da6: push %ebp : 8053da7: mov %esp,%ebp : 8053da9: push %edi : 8053daa: push %esi : 8053dab: push %ebx : 8053dac: sub $0x7c,%esp : NUint8* pointer; : NUint32 i, num_cl; : Nfloat random; : ParticleEffect* pe; : : num_cl = 0; : 8053daf: movl $0x0,0xffffffe8(%ebp) : : pe = ParticleEffect_Add (); : 8053db6: call 80556c5 : 8053dbb: mov %eax,0xffffffe0(%ebp) : : pe->origin[0] = origin[0]; : 8053dbe: mov 0xffffffe0(%ebp),%edx : 8053dc1: mov 0x8(%ebp),%eax : 8053dc4: fldl (%eax) : 8053dc6: fstps 0xc(%edx) : pe->origin[1] = origin[1]; : 8053dc9: mov 0xffffffe0(%ebp),%edx : 8053dcc: mov 0x8(%ebp),%eax : 8053dcf: add $0x8,%eax : 8053dd2: fldl (%eax) : 8053dd4: fstps 0x10(%edx) : pe->origin[2] = origin[2]; : 8053dd7: mov 0xffffffe0(%ebp),%edx : 8053dda: mov 0x8(%ebp),%eax : 8053ddd: add $0x10,%eax : 8053de0: fldl (%eax) : 8053de2: fstps 0x14(%edx) : pe->vel[0] = 0; : 8053de5: mov 0xffffffe0(%ebp),%edx : 8053de8: mov $0x0,%eax : 8053ded: mov %eax,0x18(%edx) : pe->vel[1] = 0; : 8053df0: mov 0xffffffe0(%ebp),%edx : 8053df3: mov $0x0,%eax : 8053df8: mov %eax,0x1c(%edx) : pe->vel[2] = 0; : 8053dfb: mov 0xffffffe0(%ebp),%edx : 8053dfe: mov $0x0,%eax : 8053e03: mov %eax,0x20(%edx) : : pe->life = g_time + 2; : 8053e06: mov 0xffffffe0(%ebp),%eax : 8053e09: fldl 0x805aa00 : 8053e0f: fldl 0x8058d38 : 8053e15: faddp %st,%st(1) : 8053e17: fstps 0x30(%eax) : pe->fade = 1.0f; : 8053e1a: mov 0xffffffe0(%ebp),%edx : 8053e1d: mov $0x3f800000,%eax : 8053e22: mov %eax,0x2c(%edx) : pe->size = 0.5f; : 8053e25: mov 0xffffffe0(%ebp),%edx : 8053e28: mov $0x3f000000,%eax : 8053e2d: mov %eax,0x34(%edx) : pe->growth = size * 2; : 8053e30: mov 0xffffffe0(%ebp),%ecx : 8053e33: mov 0xc(%ebp),%eax : 8053e36: add %eax,%eax : 8053e38: mov $0x0,%edx : 8053e3d: push %edx : 8053e3e: push %eax : 8053e3f: fildll (%esp,1) : 8053e42: lea 0x8(%esp,1),%esp : 8053e46: fstps 0x24(%ecx) : pe->alpha = 1.0f; : 8053e49: mov 0xffffffe0(%ebp),%edx : 8053e4c: mov $0x3f800000,%eax : 8053e51: mov %eax,0x28(%edx) : : pe->numparticles = size * 64; : 8053e54: mov 0xffffffe0(%ebp),%edx : 8053e57: mov 0xc(%ebp),%eax : 8053e5a: shl $0x6,%eax : 8053e5d: mov %eax,0x38(%edx) : pe->texture = Texture_Get ("particledot"); : 8053e60: mov 0xffffffe0(%ebp),%ebx : 8053e63: movl $0x8058d2c,(%esp,1) : 8053e6a: call 8051b06 : 8053e6f: mov %eax,0x3c(%ebx) : : pe->active = true; : 8053e72: mov 0xffffffe0(%ebp),%eax : 8053e75: movl $0x1,0x40(%eax) : : pe->frame = ParticleEffect_Explosion_Fire_Frame; : 8053e7c: mov 0xffffffe0(%ebp),%eax : 8053e7f: movl $0x805378a,0x44(%eax) : : pointer = Mem_Alloc (particleeffects_zone, : 8053e86: movl $0xd1,0xc(%esp,1) : 8053e8e: movl $0x8058d00,0x8(%esp,1) : 8053e96: mov 0xffffffe0(%ebp),%eax : 8053e99: mov 0x38(%eax),%edx : 8053e9c: mov %edx,%eax : 8053e9e: shl $0x3,%eax : 8053ea1: add %edx,%eax : 8053ea3: shl $0x4,%eax : 8053ea6: mov %eax,0x4(%esp,1) : 8053eaa: mov 0x805a824,%eax : 8053eaf: mov %eax,(%esp,1) : 8053eb2: call 804b1e4 <_Mem_Alloc> : 8053eb7: mov %eax,0xfffffff0(%ebp) : (sizeof(Particle) * pe->numparticles) + : (sizeof(Nfloat) * pe->numparticles * 12) + : (sizeof(Nfloat) * pe->numparticles * 16)); : : pe->particle = (Particle*) pointer; pointer += (sizeof(Particle) * pe->numparticles); : 8053eba: mov 0xffffffe0(%ebp),%edx : 8053ebd: mov 0xfffffff0(%ebp),%eax : 8053ec0: mov %eax,(%edx) : 8053ec2: mov 0xffffffe0(%ebp),%eax : 8053ec5: mov 0x38(%eax),%eax : 8053ec8: mov %eax,%edx : 8053eca: shl $0x5,%edx : 8053ecd: lea 0xfffffff0(%ebp),%eax : 8053ed0: add %edx,(%eax) : pe->va = (Nfloat*) pointer; pointer += (sizeof(Nfloat) * pe->numparticles * 12); : 8053ed2: mov 0xffffffe0(%ebp),%edx : 8053ed5: mov 0xfffffff0(%ebp),%eax : 8053ed8: mov %eax,0x4(%edx) : 8053edb: mov 0xffffffe0(%ebp),%eax : 8053ede: mov 0x38(%eax),%edx : 8053ee1: mov %edx,%eax : 8053ee3: add %eax,%eax : 8053ee5: add %edx,%eax : 8053ee7: mov %eax,%edx : 8053ee9: shl $0x4,%edx : 8053eec: lea 0xfffffff0(%ebp),%eax : 8053eef: add %edx,(%eax) : pe->cl = (Nfloat*) pointer; : 8053ef1: mov 0xffffffe0(%ebp),%edx : 8053ef4: mov 0xfffffff0(%ebp),%eax : 8053ef7: mov %eax,0x8(%edx) : : for (i=0; inumparticles; i++) : 8053efa: movl $0x0,0xffffffec(%ebp) : 8053f01: mov 0xffffffe0(%ebp),%edx : 8053f04: mov 0xffffffec(%ebp),%eax : 8053f07: cmp 0x38(%edx),%eax : 8053f0a: jb 8053f11 : 8053f0c: jmp 80542d6 : { : random = Random (0.0f, 0.5f); 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f11: call 8048ff4 <_init+0x378> : 8053f16: and $0x7fff,%eax : 8053f1b: push %eax : 8053f1c: fildl (%esp,1) : 8053f1f: lea 0x4(%esp,1),%esp : 8053f23: flds 0x8058d44 : 8053f29: fmulp %st,%st(1) : 8053f2b: fldz 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f2d: faddp %st,%st(1) : 8053f2f: fstps 0xffffffe4(%ebp) : : VectorRandom (pe->particle[i].vel); 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f32: mov 0xffffffe0(%ebp),%edx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f35: mov 0xffffffec(%ebp),%eax : 8053f38: mov %eax,%ebx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f3a: shl $0x5,%ebx : 8053f3d: mov (%edx),%esi : 8053f3f: call 8048ff4 <_init+0x378> : 8053f44: and $0x7fff,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f49: push %eax : 8053f4a: fildl (%esp,1) : 8053f4d: lea 0x4(%esp,1),%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f51: flds 0x8058d48 : 8053f57: fmulp %st,%st(1) : 8053f59: flds 0x8058d4c : 8053f5f: faddp %st,%st(1) : 8053f61: fstps 0xc(%esi,%ebx,1) : 8053f65: mov 0xffffffe0(%ebp),%edx : 8053f68: mov 0xffffffec(%ebp),%eax : 8053f6b: mov %eax,%ebx : 8053f6d: shl $0x5,%ebx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f70: mov (%edx),%esi : 8053f72: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f77: and $0x7fff,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053f7c: push %eax : 8053f7d: fildl (%esp,1) : 8053f80: lea 0x4(%esp,1),%esp : 8053f84: flds 0x8058d48 : 8053f8a: fmulp %st,%st(1) : 8053f8c: flds 0x8058d4c : 8053f92: faddp %st,%st(1) : 8053f94: fstps 0x10(%esi,%ebx,1) : 8053f98: mov 0xffffffe0(%ebp),%edx : 8053f9b: mov 0xffffffec(%ebp),%eax : 8053f9e: mov %eax,%ebx : 8053fa0: shl $0x5,%ebx : 8053fa3: mov (%edx),%esi : 8053fa5: call 8048ff4 <_init+0x378> 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053faa: and $0x7fff,%eax : 8053faf: push %eax : 8053fb0: fildl (%esp,1) : 8053fb3: lea 0x4(%esp,1),%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053fb7: flds 0x8058d48 : 8053fbd: fmulp %st,%st(1) : 8053fbf: flds 0x8058d4c : 8053fc5: faddp %st,%st(1) : 8053fc7: fstps 0x14(%esi,%ebx,1) : 8053fcb: mov 0xffffffe0(%ebp),%edx : 8053fce: mov 0xffffffec(%ebp),%eax : 8053fd1: mov %eax,%esi : 8053fd3: shl $0x5,%esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053fd6: mov (%edx),%ebx : 8053fd8: mov 0xffffffe0(%ebp),%ecx : 8053fdb: mov 0xffffffec(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053fde: mov %eax,%edx : 8053fe0: shl $0x5,%edx : 8053fe3: mov (%ecx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053fe5: flds 0xc(%ebx,%esi,1) : 8053fe9: fmuls 0xc(%eax,%edx,1) : 8053fed: mov 0xffffffe0(%ebp),%edx : 8053ff0: mov 0xffffffec(%ebp),%eax : 8053ff3: mov %eax,%esi : 8053ff5: shl $0x5,%esi : 8053ff8: mov (%edx),%ebx : 8053ffa: mov 0xffffffe0(%ebp),%ecx : 8053ffd: mov 0xffffffec(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054000: mov %eax,%edx : 8054002: shl $0x5,%edx : 8054005: mov (%ecx),%eax : 8054007: flds 0x10(%ebx,%esi,1) : 805400b: fmuls 0x10(%eax,%edx,1) : 805400f: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054011: mov 0xffffffe0(%ebp),%edx : 8054014: mov 0xffffffec(%ebp),%eax : 8054017: mov %eax,%esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054019: shl $0x5,%esi : 805401c: mov (%edx),%ebx : 805401e: mov 0xffffffe0(%ebp),%ecx : 8054021: mov 0xffffffec(%ebp),%eax : 8054024: mov %eax,%edx : 8054026: shl $0x5,%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054029: mov (%ecx),%eax : 805402b: flds 0x14(%ebx,%esi,1) : 805402f: fmuls 0x14(%eax,%edx,1) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054033: faddp %st,%st(1) : 8054035: fld1 : 8054037: fxch %st(1) : 8054039: fucompp : 805403b: fnstsw %ax : 805403d: sahf 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805403e: ja 8053f32 : : pe->particle[i].vel[0] *= size * Random (2, 8); 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054044: mov 0xffffffe0(%ebp),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054047: mov 0xffffffec(%ebp),%eax : 805404a: mov %eax,%ebx : 805404c: shl $0x5,%ebx : 805404f: mov (%edx),%esi : 8054051: mov 0xffffffe0(%ebp),%edx : 8054054: mov 0xffffffec(%ebp),%eax : 8054057: mov %eax,%edi : 8054059: shl $0x5,%edi : 805405c: mov (%edx),%edx : 805405e: mov %edx,0xffffffd8(%ebp) : 8054061: mov 0xc(%ebp),%eax : 8054064: mov $0x0,%edx : 8054069: push %edx : 805406a: push %eax : 805406b: fildll (%esp,1) : 805406e: lea 0x8(%esp,1),%esp 2 0.0059 0 0.0e+00 0 0.0e+00 2 1.8868 : 8054072: fstps 0xffffffd4(%ebp) : 8054075: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805407a: and $0x7fff,%eax : 805407f: push %eax : 8054080: fildl (%esp,1) : 8054083: lea 0x4(%esp,1),%esp : 8054087: flds 0x8058d50 : 805408d: fmulp %st,%st(1) : 805408f: flds 0x8058d54 : 8054095: faddp %st,%st(1) : 8054097: flds 0xffffffd4(%ebp) : 805409a: fmulp %st,%st(1) : 805409c: mov 0xffffffd8(%ebp),%eax : 805409f: flds 0xc(%eax,%edi,1) : 80540a3: fmulp %st,%st(1) : 80540a5: fstps 0xc(%esi,%ebx,1) : pe->particle[i].vel[1] *= size * Random (2, 8); : 80540a9: mov 0xffffffe0(%ebp),%edx : 80540ac: mov 0xffffffec(%ebp),%eax : 80540af: mov %eax,%ebx : 80540b1: shl $0x5,%ebx : 80540b4: mov (%edx),%esi : 80540b6: mov 0xffffffe0(%ebp),%edx : 80540b9: mov 0xffffffec(%ebp),%eax : 80540bc: mov %eax,%edi : 80540be: shl $0x5,%edi : 80540c1: mov (%edx),%edx : 80540c3: mov %edx,0xffffffd0(%ebp) : 80540c6: mov 0xc(%ebp),%eax : 80540c9: mov $0x0,%edx : 80540ce: push %edx : 80540cf: push %eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80540d0: fildll (%esp,1) : 80540d3: lea 0x8(%esp,1),%esp : 80540d7: fstps 0xffffffcc(%ebp) : 80540da: call 8048ff4 <_init+0x378> : 80540df: and $0x7fff,%eax : 80540e4: push %eax : 80540e5: fildl (%esp,1) : 80540e8: lea 0x4(%esp,1),%esp : 80540ec: flds 0x8058d50 : 80540f2: fmulp %st,%st(1) : 80540f4: flds 0x8058d54 : 80540fa: faddp %st,%st(1) : 80540fc: flds 0xffffffcc(%ebp) : 80540ff: fmulp %st,%st(1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054101: mov 0xffffffd0(%ebp),%eax : 8054104: flds 0x10(%eax,%edi,1) : 8054108: fmulp %st,%st(1) : 805410a: fstps 0x10(%esi,%ebx,1) : pe->particle[i].vel[2] *= size * Random (2, 8); : 805410e: mov 0xffffffe0(%ebp),%edx : 8054111: mov 0xffffffec(%ebp),%eax : 8054114: mov %eax,%ebx : 8054116: shl $0x5,%ebx : 8054119: mov (%edx),%esi : 805411b: mov 0xffffffe0(%ebp),%edx : 805411e: mov 0xffffffec(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054121: mov %eax,%edi : 8054123: shl $0x5,%edi : 8054126: mov (%edx),%edx : 8054128: mov %edx,0xffffffc8(%ebp) : 805412b: mov 0xc(%ebp),%eax : 805412e: mov $0x0,%edx : 8054133: push %edx : 8054134: push %eax : 8054135: fildll (%esp,1) : 8054138: lea 0x8(%esp,1),%esp : 805413c: fstps 0xffffffc4(%ebp) : 805413f: call 8048ff4 <_init+0x378> : 8054144: and $0x7fff,%eax : 8054149: push %eax : 805414a: fildl (%esp,1) : 805414d: lea 0x4(%esp,1),%esp : 8054151: flds 0x8058d50 : 8054157: fmulp %st,%st(1) : 8054159: flds 0x8058d54 : 805415f: faddp %st,%st(1) : 8054161: flds 0xffffffc4(%ebp) : 8054164: fmulp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054166: mov 0xffffffc8(%ebp),%eax : 8054169: flds 0x14(%eax,%edi,1) : 805416d: fmulp %st,%st(1) : 805416f: fstps 0x14(%esi,%ebx,1) : : pe->cl[num_cl+ 0] = 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054173: mov 0xffffffe0(%ebp),%edx : 8054176: mov 0xffffffe8(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054179: lea 0x0(,%eax,4),%ebx : 8054180: mov 0x8(%edx),%esi : 8054183: mov 0xffffffe0(%ebp),%edx : 8054186: mov 0xffffffe8(%ebp),%eax : 8054189: shl $0x2,%eax : 805418c: add 0x8(%edx),%eax : 805418f: lea 0x10(%eax),%edi : 8054192: mov 0xffffffe0(%ebp),%edx : 8054195: mov 0xffffffe8(%ebp),%eax : 8054198: shl $0x2,%eax : 805419b: add 0x8(%edx),%eax : 805419e: lea 0x20(%eax),%ecx : 80541a1: mov 0xffffffe0(%ebp),%edx : 80541a4: mov 0xffffffe8(%ebp),%eax : 80541a7: shl $0x2,%eax : 80541aa: add 0x8(%edx),%eax : 80541ad: lea 0x30(%eax),%edx : 80541b0: flds 0xffffffe4(%ebp) : 80541b3: flds 0x8058d40 : 80541b9: faddp %st,%st(1) : 80541bb: fstps 0xffffff88(%ebp) : 80541be: mov 0xffffff88(%ebp),%eax : 80541c1: mov %eax,(%edx) : 80541c3: mov %eax,(%ecx) : 80541c5: mov %eax,(%edi) : 80541c7: mov %eax,(%esi,%ebx,1) : pe->cl[num_cl+ 4] = : pe->cl[num_cl+ 8] = : pe->cl[num_cl+12] = 0.5f + random; : : pe->cl[num_cl+ 1] = : 80541ca: mov 0xffffffe0(%ebp),%edx : 80541cd: mov 0xffffffe8(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80541d0: shl $0x2,%eax : 80541d3: add 0x8(%edx),%eax : 80541d6: lea 0x4(%eax),%ebx : 80541d9: mov 0xffffffe0(%ebp),%edx : 80541dc: mov 0xffffffe8(%ebp),%eax : 80541df: shl $0x2,%eax : 80541e2: add 0x8(%edx),%eax : 80541e5: lea 0x14(%eax),%esi : 80541e8: mov 0xffffffe0(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80541eb: mov 0xffffffe8(%ebp),%eax : 80541ee: shl $0x2,%eax : 80541f1: add 0x8(%edx),%eax : 80541f4: lea 0x24(%eax),%ecx : 80541f7: mov 0xffffffe0(%ebp),%edx : 80541fa: mov 0xffffffe8(%ebp),%eax : 80541fd: shl $0x2,%eax : 8054200: add 0x8(%edx),%eax : 8054203: lea 0x34(%eax),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054206: flds 0xffffffe4(%ebp) : 8054209: flds 0x8058d58 : 805420f: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054211: fstps 0xffffff88(%ebp) : 8054214: mov 0xffffff88(%ebp),%eax : 8054217: mov %eax,(%edx) : 8054219: mov %eax,(%ecx) : 805421b: mov %eax,(%esi) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805421d: mov %eax,(%ebx) : pe->cl[num_cl+ 5] = : pe->cl[num_cl+ 9] = : pe->cl[num_cl+13] = 0.25f + random; : : pe->cl[num_cl+ 2] = : 805421f: mov 0xffffffe0(%ebp),%edx : 8054222: mov 0xffffffe8(%ebp),%eax : 8054225: shl $0x2,%eax : 8054228: add 0x8(%edx),%eax : 805422b: lea 0x8(%eax),%ebx : 805422e: mov 0xffffffe0(%ebp),%edx : 8054231: mov 0xffffffe8(%ebp),%eax : 8054234: shl $0x2,%eax : 8054237: add 0x8(%edx),%eax : 805423a: lea 0x18(%eax),%esi : 805423d: mov 0xffffffe0(%ebp),%edx : 8054240: mov 0xffffffe8(%ebp),%eax : 8054243: shl $0x2,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054246: add 0x8(%edx),%eax : 8054249: lea 0x28(%eax),%ecx : 805424c: mov 0xffffffe0(%ebp),%edx : 805424f: mov 0xffffffe8(%ebp),%eax : 8054252: shl $0x2,%eax : 8054255: add 0x8(%edx),%eax : 8054258: lea 0x38(%eax),%edx : 805425b: flds 0xffffffe4(%ebp) : 805425e: flds 0x8058d5c : 8054264: fdivrp %st,%st(1) : 8054266: flds 0x8058d58 : 805426c: fsubp %st,%st(1) : 805426e: fstps 0xffffff88(%ebp) : 8054271: mov 0xffffff88(%ebp),%eax : 8054274: mov %eax,(%edx) : 8054276: mov %eax,(%ecx) : 8054278: mov %eax,(%esi) : 805427a: mov %eax,(%ebx) : pe->cl[num_cl+ 6] = : pe->cl[num_cl+10] = : pe->cl[num_cl+14] = 0.25f - random / 4.0f; : : pe->cl[num_cl+ 3] = : 805427c: mov 0xffffffe0(%ebp),%edx : 805427f: mov 0xffffffe8(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054282: shl $0x2,%eax : 8054285: add 0x8(%edx),%eax : 8054288: lea 0xc(%eax),%esi : 805428b: mov 0xffffffe0(%ebp),%edx : 805428e: mov 0xffffffe8(%ebp),%eax : 8054291: shl $0x2,%eax : 8054294: add 0x8(%edx),%eax : 8054297: lea 0x1c(%eax),%ecx : 805429a: mov 0xffffffe0(%ebp),%edx : 805429d: mov 0xffffffe8(%ebp),%eax : 80542a0: shl $0x2,%eax : 80542a3: add 0x8(%edx),%eax : 80542a6: lea 0x2c(%eax),%ebx : 80542a9: mov 0xffffffe0(%ebp),%edx : 80542ac: mov 0xffffffe8(%ebp),%eax : 80542af: shl $0x2,%eax : 80542b2: add 0x8(%edx),%eax : 80542b5: lea 0x3c(%eax),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80542b8: mov 0xffffffe0(%ebp),%eax : 80542bb: mov 0x28(%eax),%eax : 80542be: mov %eax,(%edx) : 80542c0: mov %eax,(%ebx) : 80542c2: mov %eax,(%ecx) : 80542c4: mov %eax,(%esi) : pe->cl[num_cl+ 7] = : pe->cl[num_cl+11] = : pe->cl[num_cl+15] = pe->alpha; : : num_cl += 16; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80542c6: lea 0xffffffe8(%ebp),%eax : 80542c9: addl $0x10,(%eax) : 80542cc: lea 0xffffffec(%ebp),%eax : 80542cf: incl (%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80542d1: jmp 8053f01 : } : : num_cl = 0; : 80542d6: movl $0x0,0xffffffe8(%ebp) : : pe = ParticleEffect_Add (); : 80542dd: call 80556c5 : 80542e2: mov %eax,0xffffffe0(%ebp) : : pe->origin[0] = origin[0]; : 80542e5: mov 0xffffffe0(%ebp),%edx : 80542e8: mov 0x8(%ebp),%eax : 80542eb: fldl (%eax) : 80542ed: fstps 0xc(%edx) : pe->origin[1] = origin[1]; : 80542f0: mov 0xffffffe0(%ebp),%edx : 80542f3: mov 0x8(%ebp),%eax : 80542f6: add $0x8,%eax : 80542f9: fldl (%eax) : 80542fb: fstps 0x10(%edx) : pe->origin[2] = origin[2]; : 80542fe: mov 0xffffffe0(%ebp),%edx : 8054301: mov 0x8(%ebp),%eax : 8054304: add $0x10,%eax : 8054307: fldl (%eax) : 8054309: fstps 0x14(%edx) : pe->vel[0] = 0; : 805430c: mov 0xffffffe0(%ebp),%edx : 805430f: mov $0x0,%eax : 8054314: mov %eax,0x18(%edx) : pe->vel[1] = 0; : 8054317: mov 0xffffffe0(%ebp),%edx : 805431a: mov $0x0,%eax : 805431f: mov %eax,0x1c(%edx) : pe->vel[2] = 0; : 8054322: mov 0xffffffe0(%ebp),%edx : 8054325: mov $0x0,%eax : 805432a: mov %eax,0x20(%edx) : : pe->life = g_time + 2; : 805432d: mov 0xffffffe0(%ebp),%eax : 8054330: fldl 0x805aa00 : 8054336: fldl 0x8058d38 : 805433c: faddp %st,%st(1) : 805433e: fstps 0x30(%eax) : pe->fade = 1.0f; : 8054341: mov 0xffffffe0(%ebp),%edx : 8054344: mov $0x3f800000,%eax : 8054349: mov %eax,0x2c(%edx) : pe->size = 0.5f; : 805434c: mov 0xffffffe0(%ebp),%edx : 805434f: mov $0x3f000000,%eax : 8054354: mov %eax,0x34(%edx) : pe->growth = 0.0f; : 8054357: mov 0xffffffe0(%ebp),%edx : 805435a: mov $0x0,%eax : 805435f: mov %eax,0x24(%edx) : pe->alpha = 1.0f; : 8054362: mov 0xffffffe0(%ebp),%edx : 8054365: mov $0x3f800000,%eax : 805436a: mov %eax,0x28(%edx) : : pe->numparticles = size * 64; : 805436d: mov 0xffffffe0(%ebp),%edx : 8054370: mov 0xc(%ebp),%eax : 8054373: shl $0x6,%eax : 8054376: mov %eax,0x38(%edx) : pe->texture = Texture_Get ("particledot"); : 8054379: mov 0xffffffe0(%ebp),%ebx : 805437c: movl $0x8058d2c,(%esp,1) : 8054383: call 8051b06 : 8054388: mov %eax,0x3c(%ebx) : : pe->active = true; : 805438b: mov 0xffffffe0(%ebp),%eax : 805438e: movl $0x1,0x40(%eax) : : pe->frame = ParticleEffect_Explosion_Smoke_Frame; : 8054395: mov 0xffffffe0(%ebp),%eax : 8054398: movl $0x8053aa5,0x44(%eax) : : pointer = Mem_Alloc (particleeffects_zone, : 805439f: movl $0x113,0xc(%esp,1) : 80543a7: movl $0x8058d00,0x8(%esp,1) : 80543af: mov 0xffffffe0(%ebp),%eax : 80543b2: mov 0x38(%eax),%edx : 80543b5: mov %edx,%eax : 80543b7: shl $0x3,%eax : 80543ba: add %edx,%eax : 80543bc: shl $0x4,%eax : 80543bf: mov %eax,0x4(%esp,1) : 80543c3: mov 0x805a824,%eax : 80543c8: mov %eax,(%esp,1) : 80543cb: call 804b1e4 <_Mem_Alloc> : 80543d0: mov %eax,0xfffffff0(%ebp) : (sizeof(Particle) * pe->numparticles) + : (sizeof(Nfloat) * pe->numparticles * 12) + : (sizeof(Nfloat) * pe->numparticles * 16)); : : pe->particle = (Particle*) pointer; pointer += (sizeof(Particle) * pe->numparticles); : 80543d3: mov 0xffffffe0(%ebp),%edx : 80543d6: mov 0xfffffff0(%ebp),%eax : 80543d9: mov %eax,(%edx) : 80543db: mov 0xffffffe0(%ebp),%eax : 80543de: mov 0x38(%eax),%eax : 80543e1: mov %eax,%edx : 80543e3: shl $0x5,%edx : 80543e6: lea 0xfffffff0(%ebp),%eax : 80543e9: add %edx,(%eax) : pe->va = (Nfloat*) pointer; pointer += (sizeof(Nfloat) * pe->numparticles * 12); : 80543eb: mov 0xffffffe0(%ebp),%edx : 80543ee: mov 0xfffffff0(%ebp),%eax : 80543f1: mov %eax,0x4(%edx) : 80543f4: mov 0xffffffe0(%ebp),%eax : 80543f7: mov 0x38(%eax),%edx : 80543fa: mov %edx,%eax : 80543fc: add %eax,%eax : 80543fe: add %edx,%eax : 8054400: mov %eax,%edx : 8054402: shl $0x4,%edx : 8054405: lea 0xfffffff0(%ebp),%eax : 8054408: add %edx,(%eax) : pe->cl = (Nfloat*) pointer; : 805440a: mov 0xffffffe0(%ebp),%edx : 805440d: mov 0xfffffff0(%ebp),%eax : 8054410: mov %eax,0x8(%edx) : : for (i=0; inumparticles; i++) : 8054413: movl $0x0,0xffffffec(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805441a: mov 0xffffffe0(%ebp),%edx : 805441d: mov 0xffffffec(%ebp),%eax : 8054420: cmp 0x38(%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054423: jb 805442a : 8054425: jmp 80547c8 : { : VectorRandom (pe->particle[i].vel); : 805442a: mov 0xffffffe0(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805442d: mov 0xffffffec(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054430: mov %eax,%ebx : 8054432: shl $0x5,%ebx : 8054435: mov (%edx),%esi : 8054437: call 8048ff4 <_init+0x378> : 805443c: and $0x7fff,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054441: push %eax : 8054442: fildl (%esp,1) : 8054445: lea 0x4(%esp,1),%esp : 8054449: flds 0x8058d48 : 805444f: fmulp %st,%st(1) : 8054451: flds 0x8058d4c : 8054457: faddp %st,%st(1) : 8054459: fstps 0xc(%esi,%ebx,1) : 805445d: mov 0xffffffe0(%ebp),%edx : 8054460: mov 0xffffffec(%ebp),%eax : 8054463: mov %eax,%ebx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054465: shl $0x5,%ebx : 8054468: mov (%edx),%esi : 805446a: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805446f: and $0x7fff,%eax : 8054474: push %eax : 8054475: fildl (%esp,1) : 8054478: lea 0x4(%esp,1),%esp 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805447c: flds 0x8058d48 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054482: fmulp %st,%st(1) : 8054484: flds 0x8058d4c : 805448a: faddp %st,%st(1) : 805448c: fstps 0x10(%esi,%ebx,1) : 8054490: mov 0xffffffe0(%ebp),%edx : 8054493: mov 0xffffffec(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054496: mov %eax,%ebx : 8054498: shl $0x5,%ebx : 805449b: mov (%edx),%esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805449d: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80544a2: and $0x7fff,%eax : 80544a7: push %eax : 80544a8: fildl (%esp,1) : 80544ab: lea 0x4(%esp,1),%esp : 80544af: flds 0x8058d48 : 80544b5: fmulp %st,%st(1) : 80544b7: flds 0x8058d4c : 80544bd: faddp %st,%st(1) : 80544bf: fstps 0x14(%esi,%ebx,1) : 80544c3: mov 0xffffffe0(%ebp),%edx : 80544c6: mov 0xffffffec(%ebp),%eax : 80544c9: mov %eax,%esi : 80544cb: shl $0x5,%esi : 80544ce: mov (%edx),%ebx : 80544d0: mov 0xffffffe0(%ebp),%ecx : 80544d3: mov 0xffffffec(%ebp),%eax : 80544d6: mov %eax,%edx : 80544d8: shl $0x5,%edx : 80544db: mov (%ecx),%eax : 80544dd: flds 0xc(%ebx,%esi,1) : 80544e1: fmuls 0xc(%eax,%edx,1) : 80544e5: mov 0xffffffe0(%ebp),%edx : 80544e8: mov 0xffffffec(%ebp),%eax : 80544eb: mov %eax,%esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80544ed: shl $0x5,%esi : 80544f0: mov (%edx),%ebx : 80544f2: mov 0xffffffe0(%ebp),%ecx : 80544f5: mov 0xffffffec(%ebp),%eax : 80544f8: mov %eax,%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80544fa: shl $0x5,%edx : 80544fd: mov (%ecx),%eax : 80544ff: flds 0x10(%ebx,%esi,1) : 8054503: fmuls 0x10(%eax,%edx,1) : 8054507: faddp %st,%st(1) : 8054509: mov 0xffffffe0(%ebp),%edx : 805450c: mov 0xffffffec(%ebp),%eax : 805450f: mov %eax,%esi 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054511: shl $0x5,%esi : 8054514: mov (%edx),%ebx : 8054516: mov 0xffffffe0(%ebp),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054519: mov 0xffffffec(%ebp),%eax : 805451c: mov %eax,%edx : 805451e: shl $0x5,%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054521: mov (%ecx),%eax : 8054523: flds 0x14(%ebx,%esi,1) : 8054527: fmuls 0x14(%eax,%edx,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805452b: faddp %st,%st(1) : 805452d: fld1 : 805452f: fxch %st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054531: fucompp : 8054533: fnstsw %ax : 8054535: sahf 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054536: ja 805442a : : pe->particle[i].vel[0] *= size * Random (8, 32); : 805453c: mov 0xffffffe0(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805453f: mov 0xffffffec(%ebp),%eax : 8054542: mov %eax,%ebx : 8054544: shl $0x5,%ebx : 8054547: mov (%edx),%esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054549: mov 0xffffffe0(%ebp),%edx : 805454c: mov 0xffffffec(%ebp),%eax : 805454f: mov %eax,%edi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054551: shl $0x5,%edi : 8054554: mov (%edx),%edx : 8054556: mov %edx,0xffffffc0(%ebp) : 8054559: mov 0xc(%ebp),%eax : 805455c: mov $0x0,%edx : 8054561: push %edx : 8054562: push %eax : 8054563: fildll (%esp,1) : 8054566: lea 0x8(%esp,1),%esp : 805456a: fstps 0xffffffbc(%ebp) : 805456d: call 8048ff4 <_init+0x378> : 8054572: and $0x7fff,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054577: push %eax : 8054578: fildl (%esp,1) : 805457b: lea 0x4(%esp,1),%esp : 805457f: flds 0x8058d60 : 8054585: fmulp %st,%st(1) : 8054587: flds 0x8058d64 : 805458d: faddp %st,%st(1) : 805458f: flds 0xffffffbc(%ebp) : 8054592: fmulp %st,%st(1) : 8054594: mov 0xffffffc0(%ebp),%eax : 8054597: flds 0xc(%eax,%edi,1) : 805459b: fmulp %st,%st(1) : 805459d: fstps 0xc(%esi,%ebx,1) : pe->particle[i].vel[1] *= size * Random (8, 32); : 80545a1: mov 0xffffffe0(%ebp),%edx : 80545a4: mov 0xffffffec(%ebp),%eax : 80545a7: mov %eax,%ebx : 80545a9: shl $0x5,%ebx : 80545ac: mov (%edx),%esi : 80545ae: mov 0xffffffe0(%ebp),%edx : 80545b1: mov 0xffffffec(%ebp),%eax : 80545b4: mov %eax,%edi : 80545b6: shl $0x5,%edi : 80545b9: mov (%edx),%edx : 80545bb: mov %edx,0xffffffb8(%ebp) : 80545be: mov 0xc(%ebp),%eax : 80545c1: mov $0x0,%edx : 80545c6: push %edx : 80545c7: push %eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80545c8: fildll (%esp,1) : 80545cb: lea 0x8(%esp,1),%esp : 80545cf: fstps 0xffffffb4(%ebp) : 80545d2: call 8048ff4 <_init+0x378> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80545d7: and $0x7fff,%eax : 80545dc: push %eax : 80545dd: fildl (%esp,1) : 80545e0: lea 0x4(%esp,1),%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80545e4: flds 0x8058d60 : 80545ea: fmulp %st,%st(1) : 80545ec: flds 0x8058d64 : 80545f2: faddp %st,%st(1) : 80545f4: flds 0xffffffb4(%ebp) : 80545f7: fmulp %st,%st(1) : 80545f9: mov 0xffffffb8(%ebp),%eax : 80545fc: flds 0x10(%eax,%edi,1) : 8054600: fmulp %st,%st(1) : 8054602: fstps 0x10(%esi,%ebx,1) : pe->particle[i].vel[2] *= size * Random (8, 32); : 8054606: mov 0xffffffe0(%ebp),%edx : 8054609: mov 0xffffffec(%ebp),%eax : 805460c: mov %eax,%ebx : 805460e: shl $0x5,%ebx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054611: mov (%edx),%esi : 8054613: mov 0xffffffe0(%ebp),%edx : 8054616: mov 0xffffffec(%ebp),%eax : 8054619: mov %eax,%edi : 805461b: shl $0x5,%edi : 805461e: mov (%edx),%edx : 8054620: mov %edx,0xffffffb0(%ebp) : 8054623: mov 0xc(%ebp),%eax : 8054626: mov $0x0,%edx : 805462b: push %edx : 805462c: push %eax : 805462d: fildll (%esp,1) : 8054630: lea 0x8(%esp,1),%esp : 8054634: fstps 0xffffffac(%ebp) : 8054637: call 8048ff4 <_init+0x378> : 805463c: and $0x7fff,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054641: push %eax : 8054642: fildl (%esp,1) : 8054645: lea 0x4(%esp,1),%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054649: flds 0x8058d60 : 805464f: fmulp %st,%st(1) : 8054651: flds 0x8058d64 : 8054657: faddp %st,%st(1) : 8054659: flds 0xffffffac(%ebp) : 805465c: fmulp %st,%st(1) : 805465e: mov 0xffffffb0(%ebp),%eax : 8054661: flds 0x14(%eax,%edi,1) : 8054665: fmulp %st,%st(1) : 8054667: fstps 0x14(%esi,%ebx,1) : : pe->cl[num_cl+ 0] = : 805466b: mov 0xffffffe0(%ebp),%edx : 805466e: mov 0xffffffe8(%ebp),%eax : 8054671: lea 0x0(,%eax,4),%esi : 8054678: mov 0x8(%edx),%edi : 805467b: mov 0xffffffe0(%ebp),%edx : 805467e: mov 0xffffffe8(%ebp),%eax : 8054681: shl $0x2,%eax : 8054684: add 0x8(%edx),%eax : 8054687: add $0x4,%eax : 805468a: mov %eax,0xffffffa8(%ebp) : 805468d: mov 0xffffffe0(%ebp),%edx : 8054690: mov 0xffffffe8(%ebp),%eax : 8054693: shl $0x2,%eax : 8054696: add 0x8(%edx),%eax : 8054699: add $0x8,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805469c: mov %eax,0xffffffa4(%ebp) : 805469f: mov 0xffffffe0(%ebp),%edx : 80546a2: mov 0xffffffe8(%ebp),%eax : 80546a5: shl $0x2,%eax : 80546a8: add 0x8(%edx),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80546ab: add $0x10,%eax : 80546ae: mov %eax,0xffffffa0(%ebp) : 80546b1: mov 0xffffffe0(%ebp),%edx : 80546b4: mov 0xffffffe8(%ebp),%eax : 80546b7: shl $0x2,%eax : 80546ba: add 0x8(%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80546bd: add $0x14,%eax : 80546c0: mov %eax,0xffffff9c(%ebp) : 80546c3: mov 0xffffffe0(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80546c6: mov 0xffffffe8(%ebp),%eax : 80546c9: shl $0x2,%eax : 80546cc: add 0x8(%edx),%eax : 80546cf: add $0x18,%eax : 80546d2: mov %eax,0xffffff98(%ebp) : 80546d5: mov 0xffffffe0(%ebp),%edx : 80546d8: mov 0xffffffe8(%ebp),%eax : 80546db: shl $0x2,%eax : 80546de: add 0x8(%edx),%eax : 80546e1: add $0x20,%eax : 80546e4: mov %eax,0xffffff94(%ebp) : 80546e7: mov 0xffffffe0(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80546ea: mov 0xffffffe8(%ebp),%eax : 80546ed: shl $0x2,%eax : 80546f0: add 0x8(%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80546f3: add $0x24,%eax : 80546f6: mov %eax,0xffffff90(%ebp) : 80546f9: mov 0xffffffe0(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80546fc: mov 0xffffffe8(%ebp),%eax : 80546ff: shl $0x2,%eax : 8054702: add 0x8(%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054705: add $0x28,%eax : 8054708: mov %eax,0xffffff8c(%ebp) : 805470b: mov 0xffffffe0(%ebp),%edx : 805470e: mov 0xffffffe8(%ebp),%eax : 8054711: shl $0x2,%eax : 8054714: add 0x8(%edx),%eax : 8054717: lea 0x30(%eax),%ebx : 805471a: mov 0xffffffe0(%ebp),%edx : 805471d: mov 0xffffffe8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054720: shl $0x2,%eax : 8054723: add 0x8(%edx),%eax : 8054726: lea 0x34(%eax),%ecx : 8054729: mov 0xffffffe0(%ebp),%edx : 805472c: mov 0xffffffe8(%ebp),%eax : 805472f: shl $0x2,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054732: add 0x8(%edx),%eax : 8054735: lea 0x38(%eax),%edx : 8054738: mov $0x3f800000,%eax : 805473d: mov %eax,(%edx) : 805473f: mov %eax,(%ecx) : 8054741: mov %eax,(%ebx) : 8054743: mov 0xffffff8c(%ebp),%edx : 8054746: mov %eax,(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054748: mov 0xffffff90(%ebp),%edx : 805474b: mov %eax,(%edx) : 805474d: mov 0xffffff94(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054750: mov %eax,(%edx) : 8054752: mov 0xffffff98(%ebp),%edx : 8054755: mov %eax,(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054757: mov 0xffffff9c(%ebp),%edx : 805475a: mov %eax,(%edx) : 805475c: mov 0xffffffa0(%ebp),%edx : 805475f: mov %eax,(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054761: mov 0xffffffa4(%ebp),%edx : 8054764: mov %eax,(%edx) : 8054766: mov 0xffffffa8(%ebp),%edx : 8054769: mov %eax,(%edx) : 805476b: mov %eax,(%edi,%esi,1) : pe->cl[num_cl+ 1] = : pe->cl[num_cl+ 2] = : pe->cl[num_cl+ 4] = : pe->cl[num_cl+ 5] = : pe->cl[num_cl+ 6] = : pe->cl[num_cl+ 8] = : pe->cl[num_cl+ 9] = : pe->cl[num_cl+10] = : pe->cl[num_cl+12] = : pe->cl[num_cl+13] = : pe->cl[num_cl+14] = 1.0f; : : pe->cl[num_cl+ 3] = : 805476e: mov 0xffffffe0(%ebp),%edx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8054771: mov 0xffffffe8(%ebp),%eax : 8054774: shl $0x2,%eax : 8054777: add 0x8(%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805477a: lea 0xc(%eax),%esi : 805477d: mov 0xffffffe0(%ebp),%edx : 8054780: mov 0xffffffe8(%ebp),%eax : 8054783: shl $0x2,%eax : 8054786: add 0x8(%edx),%eax : 8054789: lea 0x1c(%eax),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805478c: mov 0xffffffe0(%ebp),%edx : 805478f: mov 0xffffffe8(%ebp),%eax : 8054792: shl $0x2,%eax : 8054795: add 0x8(%edx),%eax : 8054798: lea 0x2c(%eax),%ebx : 805479b: mov 0xffffffe0(%ebp),%edx : 805479e: mov 0xffffffe8(%ebp),%eax : 80547a1: shl $0x2,%eax : 80547a4: add 0x8(%edx),%eax : 80547a7: lea 0x3c(%eax),%edx : 80547aa: mov 0xffffffe0(%ebp),%eax : 80547ad: mov 0x28(%eax),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80547b0: mov %eax,(%edx) : 80547b2: mov %eax,(%ebx) : 80547b4: mov %eax,(%ecx) : 80547b6: mov %eax,(%esi) : pe->cl[num_cl+ 7] = : pe->cl[num_cl+11] = : pe->cl[num_cl+15] = pe->alpha; : : num_cl += 16; : 80547b8: lea 0xffffffe8(%ebp),%eax : 80547bb: addl $0x10,(%eax) : 80547be: lea 0xffffffec(%ebp),%eax : 80547c1: incl (%eax) : 80547c3: jmp 805441a : } :} : 80547c8: add $0x7c,%esp : 80547cb: pop %ebx : 80547cc: pop %esi : 80547cd: pop %edi : 80547ce: pop %ebp : 80547cf: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08049ca5 : /* DWGame total: 120 0.3546 1 0.1124 4 2.8571 1 0.9434 */ : DWRender_Frame(g_realtime, g_realframetime, &g_cameramatrix, fovxscale, fovyscale, 1, 65536); :} : :void DWGame(void) :{ : 8049ca5: push %ebp : 8049ca6: mov %esp,%ebp : 8049ca8: push %edi : 8049ca9: sub $0x34,%esp : double rain[3] = { 0, 0, 0 }; : 8049cac: lea 0xffffffd8(%ebp),%edi : 8049caf: cld : 8049cb0: mov $0x0,%edx : 8049cb5: mov $0x6,%eax : 8049cba: mov %eax,%ecx : 8049cbc: mov %edx,%eax : 8049cbe: repz stos %eax,%es:(%edi) : : File_Start(".", "~/.darkwar/"); : 8049cc0: movl $0x8057a40,0x4(%esp,1) : 8049cc8: movl $0x8057a4c,(%esp,1) : 8049ccf: call 804bc45 : File_AddPath("base/"); : 8049cd4: movl $0x8057a4e,(%esp,1) : 8049cdb: call 804bccd : : memset(DWInput_KeyState, 0, sizeof(DWInput_KeyState)); : 8049ce0: movl $0x400,0x8(%esp,1) : 8049ce8: movl $0x0,0x4(%esp,1) : 8049cf0: movl $0x805aa40,(%esp,1) : 8049cf7: call 8048f54 <_init+0x2d8> : memset(DWInput_MouseButtons, 0, sizeof(DWInput_MouseButtons)); : 8049cfc: movl $0x400,0x8(%esp,1) : 8049d04: movl $0x0,0x4(%esp,1) : 8049d0c: movl $0x805ae60,(%esp,1) : 8049d13: call 8048f54 <_init+0x2d8> : : DWRender_Start(); : 8049d18: call 8053544 : Console_Init (); : 8049d1d: call 804a650 : : ParticleEffect_Init(4); : 8049d22: movl $0x4,(%esp,1) : 8049d29: call 8055728 : ParticleEffect_Rain(rain, 256); : 8049d2e: movl $0x100,0x4(%esp,1) : 8049d36: lea 0xffffffd8(%ebp),%eax : 8049d39: mov %eax,(%esp,1) : 8049d3c: call 8054d71 : : dwmap_load("test.map"); : 8049d41: movl $0x8057a54,(%esp,1) : 8049d48: call 804a648 : Matrix4x4_CreateIdentity(&g_cameramatrix); : 8049d4d: movl $0x805a980,(%esp,1) : 8049d54: call 804d11e : : g_realtime = g_oldrealtime = DW_Time(); : 8049d59: call 8049f4e : 8049d5e: fstpl 0x805a8c0 : 8049d64: fldl 0x805a8c0 : 8049d6a: fstpl 0x805aa08 : g_time = g_oldtime = 0; : 8049d70: fldz : 8049d72: fstl 0x805a960 : 8049d78: fstpl 0x805aa00 : g_framecount = 0; : 8049d7e: movl $0x0,0x805a8c8 : for (;;) : { : g_framecount++; 38 0.1123 0 0.0e+00 3 2.1429 1 0.9434 : 8049d88: incl 0x805a8c8 : g_oldrealtime = g_realtime; 53 0.1566 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049d8e: fldl 0x805aa08 : 8049d94: fstpl 0x805a8c0 : g_realtime = DW_Time(); : 8049d9a: call 8049f4e : 8049d9f: fstpl 0x805aa08 : g_realframetime = g_realtime - g_oldrealtime; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049da5: fldl 0x805aa08 : 8049dab: fsubl 0x805a8c0 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049db1: fstpl 0x805a970 : g_oldtime = g_time; : 8049db7: fldl 0x805aa00 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049dbd: fstpl 0x805a960 : g_frametime = g_realframetime; : 8049dc3: fldl 0x805a970 0 0.0e+00 1 0.1124 0 0.0e+00 0 0.0e+00 : 8049dc9: fstpl 0x805a968 : g_time += g_frametime; 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049dcf: fldl 0x805aa00 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049dd5: faddl 0x805a968 : 8049ddb: fstpl 0x805aa00 : DWGame_Input(); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049de1: call 8049a14 : DWGame_Render(); : 8049de6: call 8049bc4 : 8049deb: jmp 8049d88 : 8049ded: nop : 8049dee: nop : 8049def: nop :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804cf96 : /* Matrix4x4_Normalize total: 120 0.3546 0 0.0e+00 6 4.2857 1 0.9434 */ : out->m[3][3] = 1; :} : :void Matrix4x4_Normalize(matrix4x4_t *out, const matrix4x4_t *in1) :{ : 804cf96: push %ebp 15 0.0443 0 0.0e+00 0 0.0e+00 1 0.9434 : 804cf97: mov %esp,%ebp 1 0.0030 0 0.0e+00 2 1.4286 0 0.0e+00 : 804cf99: push %ebx : 804cf9a: sub $0x24,%esp : int i; : double length; : double scale; : for (i = 0;i < 4;i++) : 804cf9d: movl $0x0,0xfffffff4(%ebp) : 804cfa4: cmpl $0x3,0xfffffff4(%ebp) : 804cfa8: jle 804cfaf : 804cfaa: jmp 804d118 : { : length = in1->m[i][0] * in1->m[i][0] + in1->m[i][1] * in1->m[i][1] + in1->m[i][2] * in1->m[i][2]; : 804cfaf: mov 0xc(%ebp),%ebx 10 0.0295 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cfb2: mov 0xfffffff4(%ebp),%eax : 804cfb5: mov %eax,%edx : 804cfb7: shl $0x5,%edx : 804cfba: mov 0xc(%ebp),%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cfbd: mov 0xfffffff4(%ebp),%eax : 804cfc0: shl $0x5,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cfc3: fldl (%ebx,%edx,1) : 804cfc6: fmull (%ecx,%eax,1) 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cfc9: mov 0xc(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cfcc: mov 0xfffffff4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cfcf: shl $0x5,%eax : 804cfd2: add %edx,%eax : 804cfd4: lea 0x8(%eax),%ecx : 804cfd7: mov 0xc(%ebp),%edx : 804cfda: mov 0xfffffff4(%ebp),%eax : 804cfdd: shl $0x5,%eax : 804cfe0: add %edx,%eax : 804cfe2: add $0x8,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cfe5: fldl (%ecx) : 804cfe7: fmull (%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cfe9: faddp %st,%st(1) : 804cfeb: mov 0xc(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cfee: mov 0xfffffff4(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cff1: shl $0x5,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cff4: add %edx,%eax : 804cff6: lea 0x10(%eax),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cff9: mov 0xc(%ebp),%edx : 804cffc: mov 0xfffffff4(%ebp),%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cfff: shl $0x5,%eax 0 0.0e+00 0 0.0e+00 2 1.4286 0 0.0e+00 : 804d002: add %edx,%eax : 804d004: add $0x10,%eax : 804d007: fldl (%ecx) : 804d009: fmull (%eax) : 804d00b: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d00d: fstpl 0xffffffe8(%ebp) : if (length) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d010: fldl 0xffffffe8(%ebp) : 804d013: fldz : 804d015: fxch %st(1) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d017: fucompp : 804d019: fnstsw %ax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d01b: sahf 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d01c: jne 804d025 : 804d01e: jp 804d025 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d020: jmp 804d0bc : { : scale = 1.0 / sqrt(length); 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d025: fldl 0xffffffe8(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d028: fstpl (%esp,1) : 804d02b: call 8048e94 <_init+0x218> : 804d030: fld1 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d032: fdivp %st,%st(1) : 804d034: fstpl 0xffffffe0(%ebp) : out->m[i][0] = in1->m[i][0] * scale; : 804d037: mov 0x8(%ebp),%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d03a: mov 0xfffffff4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d03d: mov %eax,%ebx : 804d03f: shl $0x5,%ebx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d042: mov 0xc(%ebp),%edx : 804d045: mov 0xfffffff4(%ebp),%eax : 804d048: shl $0x5,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d04b: fldl (%edx,%eax,1) : 804d04e: fmull 0xffffffe0(%ebp) : 804d051: fstpl (%ecx,%ebx,1) : out->m[i][1] = in1->m[i][1] * scale; : 804d054: mov 0x8(%ebp),%edx : 804d057: mov 0xfffffff4(%ebp),%eax : 804d05a: shl $0x5,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d05d: add %edx,%eax : 804d05f: lea 0x8(%eax),%ecx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d062: mov 0xc(%ebp),%edx : 804d065: mov 0xfffffff4(%ebp),%eax : 804d068: shl $0x5,%eax : 804d06b: add %edx,%eax : 804d06d: add $0x8,%eax : 804d070: fldl (%eax) : 804d072: fmull 0xffffffe0(%ebp) : 804d075: fstpl (%ecx) : out->m[i][2] = in1->m[i][2] * scale; : 804d077: mov 0x8(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d07a: mov 0xfffffff4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d07d: shl $0x5,%eax : 804d080: add %edx,%eax 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d082: lea 0x10(%eax),%ecx 11 0.0325 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d085: mov 0xc(%ebp),%edx : 804d088: mov 0xfffffff4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d08b: shl $0x5,%eax : 804d08e: add %edx,%eax : 804d090: add $0x10,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d093: fldl (%eax) : 804d095: fmull 0xffffffe0(%ebp) : 804d098: fstpl (%ecx) : out->m[i][3] = in1->m[i][3]; : 804d09a: mov 0x8(%ebp),%edx : 804d09d: mov 0xfffffff4(%ebp),%eax : 804d0a0: shl $0x5,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d0a3: add %edx,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d0a5: lea 0x18(%eax),%ecx : 804d0a8: mov 0xc(%ebp),%edx : 804d0ab: mov 0xfffffff4(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d0ae: shl $0x5,%eax : 804d0b1: add %edx,%eax : 804d0b3: add $0x18,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d0b6: fldl (%eax) : 804d0b8: fstpl (%ecx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d0ba: jmp 804d10e : } : else : { : out->m[i][0] = 0; : 804d0bc: mov 0x8(%ebp),%edx : 804d0bf: mov 0xfffffff4(%ebp),%eax : 804d0c2: shl $0x5,%eax : 804d0c5: fldz : 804d0c7: fstpl (%edx,%eax,1) : out->m[i][1] = 0; : 804d0ca: mov 0x8(%ebp),%edx : 804d0cd: mov 0xfffffff4(%ebp),%eax : 804d0d0: shl $0x5,%eax : 804d0d3: add %edx,%eax : 804d0d5: add $0x8,%eax : 804d0d8: fldz : 804d0da: fstpl (%eax) : out->m[i][2] = 0; : 804d0dc: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d0df: mov 0xfffffff4(%ebp),%eax : 804d0e2: shl $0x5,%eax : 804d0e5: add %edx,%eax : 804d0e7: add $0x10,%eax : 804d0ea: fldz : 804d0ec: fstpl (%eax) : out->m[i][3] = in1->m[i][3]; : 804d0ee: mov 0x8(%ebp),%edx : 804d0f1: mov 0xfffffff4(%ebp),%eax : 804d0f4: shl $0x5,%eax : 804d0f7: add %edx,%eax : 804d0f9: lea 0x18(%eax),%ecx : 804d0fc: mov 0xc(%ebp),%edx : 804d0ff: mov 0xfffffff4(%ebp),%eax : 804d102: shl $0x5,%eax : 804d105: add %edx,%eax : 804d107: add $0x18,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d10a: fldl (%eax) : 804d10c: fstpl (%ecx) : 804d10e: lea 0xfffffff4(%ebp),%eax : 804d111: incl (%eax) : 804d113: jmp 804cfa4 : } : } :} 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d118: add $0x24,%esp 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d11b: pop %ebx : 804d11c: pop %ebp : 804d11d: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804ce2d : /* Matrix4x4_Invert_Simple total: 118 0.3487 0 0.0e+00 3 2.1429 0 0.0e+00 */ : out->m[3][3] = in1->m[3][3]; :} : :void Matrix4x4_Invert_Simple(matrix4x4_t *out, const matrix4x4_t *in1) :{ : 804ce2d: push %ebp 39 0.1152 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce2e: mov %esp,%ebp : 804ce30: sub $0x8,%esp : // we only support uniform scaling, so assume the first row is enough : // (note the lack of sqrt here, because we're trying to undo the scaling, : // this means multiplying by the inverse scale twice - squaring it, which : // makes the sqrt a waste of time) :#if 1 : double scale = 1.0 / (in1->m[0][0] * in1->m[0][0] + in1->m[0][1] * in1->m[0][1] + in1->m[0][2] * in1->m[0][2]); : 804ce33: mov 0xc(%ebp),%eax : 804ce36: mov 0xc(%ebp),%edx : 804ce39: fldl (%eax) : 804ce3b: fmull (%edx) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce3d: mov 0xc(%ebp),%eax : 804ce40: mov 0xc(%ebp),%edx : 804ce43: fldl 0x8(%eax) : 804ce46: fmull 0x8(%edx) : 804ce49: faddp %st,%st(1) : 804ce4b: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce4e: mov 0xc(%ebp),%edx : 804ce51: fldl 0x10(%eax) : 804ce54: fmull 0x10(%edx) : 804ce57: faddp %st,%st(1) : 804ce59: fld1 : 804ce5b: fdivp %st,%st(1) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce5d: fstpl 0xfffffff8(%ebp) :#else : double scale = 3.0 / sqrt : (in1->m[0][0] * in1->m[0][0] + in1->m[0][1] * in1->m[0][1] + in1->m[0][2] * in1->m[0][2] : + in1->m[1][0] * in1->m[1][0] + in1->m[1][1] * in1->m[1][1] + in1->m[1][2] * in1->m[1][2] : + in1->m[2][0] * in1->m[2][0] + in1->m[2][1] * in1->m[2][1] + in1->m[2][2] * in1->m[2][2]); : scale *= scale; :#endif : : // invert the rotation by transposing and multiplying by the squared : // recipricol of the input matrix scale as described above : out->m[0][0] = (double)(in1->m[0][0] * scale); : 804ce60: mov 0x8(%ebp),%edx : 804ce63: mov 0xc(%ebp),%eax : 804ce66: fldl (%eax) : 804ce68: fmull 0xfffffff8(%ebp) : 804ce6b: fstpl (%edx) : out->m[0][1] = (double)(in1->m[1][0] * scale); : 804ce6d: mov 0x8(%ebp),%edx : 804ce70: mov 0xc(%ebp),%eax : 804ce73: fldl 0x20(%eax) : 804ce76: fmull 0xfffffff8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce79: fstpl 0x8(%edx) : out->m[0][2] = (double)(in1->m[2][0] * scale); : 804ce7c: mov 0x8(%ebp),%edx 13 0.0384 0 0.0e+00 1 0.7143 0 0.0e+00 : 804ce7f: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce82: fldl 0x40(%eax) : 804ce85: fmull 0xfffffff8(%ebp) : 804ce88: fstpl 0x10(%edx) : out->m[1][0] = (double)(in1->m[0][1] * scale); : 804ce8b: mov 0x8(%ebp),%edx 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce8e: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce91: fldl 0x8(%eax) : 804ce94: fmull 0xfffffff8(%ebp) : 804ce97: fstpl 0x20(%edx) : out->m[1][1] = (double)(in1->m[1][1] * scale); : 804ce9a: mov 0x8(%ebp),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ce9d: mov 0xc(%ebp),%eax : 804cea0: fldl 0x28(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cea3: fmull 0xfffffff8(%ebp) : 804cea6: fstpl 0x28(%edx) : out->m[1][2] = (double)(in1->m[2][1] * scale); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cea9: mov 0x8(%ebp),%edx : 804ceac: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ceaf: fldl 0x48(%eax) : 804ceb2: fmull 0xfffffff8(%ebp) : 804ceb5: fstpl 0x30(%edx) : out->m[2][0] = (double)(in1->m[0][2] * scale); : 804ceb8: mov 0x8(%ebp),%edx : 804cebb: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cebe: fldl 0x10(%eax) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cec1: fmull 0xfffffff8(%ebp) : 804cec4: fstpl 0x40(%edx) : out->m[2][1] = (double)(in1->m[1][2] * scale); : 804cec7: mov 0x8(%ebp),%edx : 804ceca: mov 0xc(%ebp),%eax : 804cecd: fldl 0x30(%eax) : 804ced0: fmull 0xfffffff8(%ebp) : 804ced3: fstpl 0x48(%edx) : out->m[2][2] = (double)(in1->m[2][2] * scale); 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ced6: mov 0x8(%ebp),%edx : 804ced9: mov 0xc(%ebp),%eax : 804cedc: fldl 0x50(%eax) : 804cedf: fmull 0xfffffff8(%ebp) : 804cee2: fstpl 0x50(%edx) : : // invert the translate : out->m[0][3] = -(in1->m[0][3] * out->m[0][0] + in1->m[1][3] * out->m[0][1] + in1->m[2][3] * out->m[0][2]); : 804cee5: mov 0x8(%ebp),%ecx : 804cee8: mov 0xc(%ebp),%eax : 804ceeb: mov 0x8(%ebp),%edx : 804ceee: fldl 0x18(%eax) : 804cef1: fmull (%edx) : 804cef3: mov 0xc(%ebp),%eax : 804cef6: mov 0x8(%ebp),%edx : 804cef9: fldl 0x38(%eax) : 804cefc: fmull 0x8(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ceff: faddp %st,%st(1) 27 0.0798 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cf01: mov 0xc(%ebp),%eax : 804cf04: mov 0x8(%ebp),%edx : 804cf07: fldl 0x58(%eax) : 804cf0a: fmull 0x10(%edx) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cf0d: faddp %st,%st(1) : 804cf0f: fchs 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cf11: fstpl 0x18(%ecx) : out->m[1][3] = -(in1->m[0][3] * out->m[1][0] + in1->m[1][3] * out->m[1][1] + in1->m[2][3] * out->m[1][2]); : 804cf14: mov 0x8(%ebp),%ecx : 804cf17: mov 0xc(%ebp),%eax : 804cf1a: mov 0x8(%ebp),%edx 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cf1d: fldl 0x18(%eax) : 804cf20: fmull 0x20(%edx) : 804cf23: mov 0xc(%ebp),%eax : 804cf26: mov 0x8(%ebp),%edx : 804cf29: fldl 0x38(%eax) : 804cf2c: fmull 0x28(%edx) : 804cf2f: faddp %st,%st(1) : 804cf31: mov 0xc(%ebp),%eax : 804cf34: mov 0x8(%ebp),%edx : 804cf37: fldl 0x58(%eax) : 804cf3a: fmull 0x30(%edx) : 804cf3d: faddp %st,%st(1) : 804cf3f: fchs : 804cf41: fstpl 0x38(%ecx) : out->m[2][3] = -(in1->m[0][3] * out->m[2][0] + in1->m[1][3] * out->m[2][1] + in1->m[2][3] * out->m[2][2]); : 804cf44: mov 0x8(%ebp),%ecx : 804cf47: mov 0xc(%ebp),%eax : 804cf4a: mov 0x8(%ebp),%edx : 804cf4d: fldl 0x18(%eax) : 804cf50: fmull 0x40(%edx) : 804cf53: mov 0xc(%ebp),%eax : 804cf56: mov 0x8(%ebp),%edx : 804cf59: fldl 0x38(%eax) : 804cf5c: fmull 0x48(%edx) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cf5f: faddp %st,%st(1) : 804cf61: mov 0xc(%ebp),%eax : 804cf64: mov 0x8(%ebp),%edx : 804cf67: fldl 0x58(%eax) : 804cf6a: fmull 0x50(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cf6d: faddp %st,%st(1) : 804cf6f: fchs : 804cf71: fstpl 0x58(%ecx) : : // don't know if there's anything worth doing here : out->m[3][0] = 0; : 804cf74: mov 0x8(%ebp),%eax : 804cf77: fldz : 804cf79: fstpl 0x60(%eax) : out->m[3][1] = 0; : 804cf7c: mov 0x8(%ebp),%eax : 804cf7f: fldz : 804cf81: fstpl 0x68(%eax) : out->m[3][2] = 0; : 804cf84: mov 0x8(%ebp),%eax : 804cf87: fldz : 804cf89: fstpl 0x70(%eax) : out->m[3][3] = 1; : 804cf8c: mov 0x8(%ebp),%eax : 804cf8f: fld1 : 804cf91: fstpl 0x78(%eax) :} : 804cf94: leave : 804cf95: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804ad1f : /* AllocStats_Update total: 109 0.3221 0 0.0e+00 4 2.8571 6 5.6604 */ :AllocStats_Update :======================== :*/ :void AllocStats_Update( AllocStats_Info *info, Nsize size, Nsize overhead, Nbool free ) :{ 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad1f: push %ebp 42 0.1241 0 0.0e+00 1 0.7143 1 0.9434 : 804ad20: mov %esp,%ebp : if (free) : 804ad22: cmpl $0x0,0x14(%ebp) : 804ad26: je 804ad4a : { : info->totalsize -= size; : 804ad28: mov 0x8(%ebp),%ecx 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad2b: mov 0x8(%ebp),%eax : 804ad2e: mov 0xc(%ebp),%edx : 804ad31: mov (%eax),%eax : 804ad33: sub %edx,%eax : 804ad35: mov %eax,(%ecx) : info->overhead -= overhead; : 804ad37: mov 0x8(%ebp),%ecx : 804ad3a: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad3d: mov 0x10(%ebp),%edx : 804ad40: mov 0x8(%eax),%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 804ad43: sub %edx,%eax : 804ad45: mov %eax,0x8(%ecx) : 804ad48: jmp 804ad66 : } else { : info->totalsize += size; : 804ad4a: mov 0x8(%ebp),%ecx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad4d: mov 0x8(%ebp),%edx : 804ad50: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad53: add (%edx),%eax : 804ad55: mov %eax,(%ecx) : info->overhead += overhead; : 804ad57: mov 0x8(%ebp),%ecx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad5a: mov 0x8(%ebp),%edx : 804ad5d: mov 0x10(%ebp),%eax : 804ad60: add 0x8(%edx),%eax : 804ad63: mov %eax,0x8(%ecx) : } : : if ( !size ) 4 0.0118 0 0.0e+00 1 0.7143 0 0.0e+00 : 804ad66: cmpl $0x0,0xc(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad6a: jne 804ad71 : return; : 804ad6c: jmp 804adf9 : else if( free ) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad71: cmpl $0x0,0x14(%ebp) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad75: je 804ad7f : { : info->alloc_count--; : 804ad77: mov 0x8(%ebp),%eax : 804ad7a: decl 0x10(%eax) : return; 0 0.0e+00 0 0.0e+00 2 1.4286 0 0.0e+00 : 804ad7d: jmp 804adf9 : } else : info->alloc_count++; : 804ad7f: mov 0x8(%ebp),%eax 13 0.0384 0 0.0e+00 0 0.0e+00 3 2.8302 : 804ad82: incl 0x10(%eax) : : // update the biggest/smallest stuff : if( info->overhead_biggest < info->overhead ) : 804ad85: mov 0x8(%ebp),%eax : 804ad88: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ad8b: mov 0xc(%eax),%eax : 804ad8e: cmp 0x8(%edx),%eax : 804ad91: jae 804ad9f : info->overhead_biggest = info->overhead; : 804ad93: mov 0x8(%ebp),%eax : 804ad96: mov 0x8(%ebp),%edx : 804ad99: mov 0x8(%edx),%edx : 804ad9c: mov %edx,0xc(%eax) : : if( info->alloc_smallest > size ) : 804ad9f: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ada2: mov 0x1c(%eax),%eax : 804ada5: cmp 0xc(%ebp),%eax : 804ada8: jbe 804adb3 : info->alloc_smallest = size; : 804adaa: mov 0x8(%ebp),%edx : 804adad: mov 0xc(%ebp),%eax : 804adb0: mov %eax,0x1c(%edx) : : if( info->alloc_biggest < size ) : 804adb3: mov 0x8(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804adb6: mov 0x18(%eax),%eax : 804adb9: cmp 0xc(%ebp),%eax : 804adbc: jae 804adc7 : info->alloc_biggest = size; : 804adbe: mov 0x8(%ebp),%edx : 804adc1: mov 0xc(%ebp),%eax : 804adc4: mov %eax,0x18(%edx) : : if( info->alloc_count_biggest < info->alloc_count ) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804adc7: mov 0x8(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804adca: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804adcd: mov 0x14(%eax),%eax : 804add0: cmp 0x10(%edx),%eax : 804add3: jae 804ade1 : info->alloc_count_biggest = info->alloc_count; : 804add5: mov 0x8(%ebp),%eax : 804add8: mov 0x8(%ebp),%edx : 804addb: mov 0x10(%edx),%edx : 804adde: mov %edx,0x14(%eax) : : if( info->total_biggest < info->totalsize ) 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 804ade1: mov 0x8(%ebp),%eax 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ade4: mov 0x8(%ebp),%edx : 804ade7: mov 0x4(%eax),%eax : 804adea: cmp (%edx),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804adec: jae 804adf9 : info->total_biggest = info->totalsize; : 804adee: mov 0x8(%ebp),%eax : 804adf1: mov 0x8(%ebp),%edx : 804adf4: mov (%edx),%edx : 804adf6: mov %edx,0x4(%eax) :} 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804adf9: pop %ebp 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804adfa: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804b4e7 <_Mem_Free>: /* _Mem_Free total: 106 0.3132 0 0.0e+00 3 2.1429 4 3.7736 */ :_Mem_Free :======================== :*/ :void _Mem_Free( void *p, const char *filename, int line ) :{ : 804b4e7: push %ebp 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b4e8: mov %esp,%ebp : 804b4ea: sub $0x28,%esp : Mem_Zone *zone; : Alloc_Header *header; : Alloc_Trail *trail; : : if ( !p ) : 804b4ed: cmpl $0x0,0x8(%ebp) : 804b4f1: jne 804b50d <_Mem_Free+0x26> : wrap_cerror( "Null pointer (%s %i)!", filename, line ); : 804b4f3: mov 0x10(%ebp),%eax : 804b4f6: mov %eax,0x8(%esp,1) : 804b4fa: mov 0xc(%ebp),%eax : 804b4fd: mov %eax,0x4(%esp,1) : 804b501: movl $0x8057dbd,(%esp,1) : 804b508: call 804a769 : : // check the first sentinel : header = (Alloc_Header*) p - 1; : 804b50d: mov 0x8(%ebp),%eax 28 0.0827 0 0.0e+00 0 0.0e+00 1 0.9434 : 804b510: sub $0x8,%eax : 804b513: mov %eax,0xfffffff8(%ebp) : if ( header->sentinel != SENTINEL ) : 804b516: mov 0xfffffff8(%ebp),%eax : 804b519: cmpb $0x85,0x4(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b51d: je 804b540 <_Mem_Free+0x59> : wrap_cerror( "Header sentinel (alloc at %p) bad (%s %i)!", p, filename, line ); : 804b51f: mov 0x10(%ebp),%eax : 804b522: mov %eax,0xc(%esp,1) : 804b526: mov 0xc(%ebp),%eax : 804b529: mov %eax,0x8(%esp,1) : 804b52d: mov 0x8(%ebp),%eax : 804b530: mov %eax,0x4(%esp,1) : 804b534: movl $0x8057de0,(%esp,1) : 804b53b: call 804a769 : : zone = *( (Mem_Zone**) header->alloc ); : 804b540: mov 0xfffffff8(%ebp),%eax 4 0.0118 0 0.0e+00 1 0.7143 0 0.0e+00 : 804b543: mov (%eax),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b545: mov (%eax),%eax : 804b547: mov %eax,0xfffffffc(%ebp) : : if ( zone->flag & MEM_ZONE_CLUMP ) : 804b54a: mov 0xfffffffc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b54d: mov 0xc(%eax),%eax : 804b550: and $0x1,%eax : 804b553: test %eax,%eax : 804b555: je 804b589 <_Mem_Free+0xa2> : { : Clump *clump; : : clump = (Clump*) header->alloc; : 804b557: mov 0xfffffff8(%ebp),%eax : 804b55a: mov (%eax),%eax : 804b55c: mov %eax,0xfffffff0(%ebp) : clump->alloc_count--; : 804b55f: mov 0xfffffff0(%ebp),%eax : 804b562: decl 0xc(%eax) : : if ( !clump->alloc_count ) : 804b565: mov 0xfffffff0(%ebp),%eax : 804b568: cmpl $0x0,0xc(%eax) : 804b56c: jne 804b67f <_Mem_Free+0x198> : Clump_Free( zone, clump ); : 804b572: mov 0xfffffff0(%ebp),%eax : 804b575: mov %eax,0x4(%esp,1) : 804b579: mov 0xfffffffc(%ebp),%eax : 804b57c: mov %eax,(%esp,1) : 804b57f: call 804aeb4 : 804b584: jmp 804b67f <_Mem_Free+0x198> : } else { : Alloc *alloc; : : alloc = (Alloc*) header->alloc; : 804b589: mov 0xfffffff8(%ebp),%eax 24 0.0709 0 0.0e+00 1 0.7143 0 0.0e+00 : 804b58c: mov (%eax),%eax : 804b58e: mov %eax,0xfffffff0(%ebp) : : // check the second sentinel : trail = (Alloc_Trail*) ( (char*) p + alloc->size ); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b591: mov 0xfffffff0(%ebp),%eax : 804b594: mov 0xc(%eax),%eax : 804b597: add 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b59a: mov %eax,0xfffffff4(%ebp) : if ( trail->sentinel != SENTINEL ) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b59d: mov 0xfffffff4(%ebp),%eax : 804b5a0: cmpb $0x85,(%eax) : 804b5a3: je 804b5da <_Mem_Free+0xf3> : wrap_cerror( "Trail sentinel (alloc at %p by %s:%i) bad (%s:%i)!", p, alloc->filename, alloc->line, filename, line ); : 804b5a5: mov 0x10(%ebp),%eax : 804b5a8: mov %eax,0x14(%esp,1) : 804b5ac: mov 0xc(%ebp),%eax : 804b5af: mov %eax,0x10(%esp,1) : 804b5b3: mov 0xfffffff0(%ebp),%eax : 804b5b6: mov 0x8(%eax),%eax : 804b5b9: mov %eax,0xc(%esp,1) : 804b5bd: mov 0xfffffff0(%ebp),%eax : 804b5c0: mov 0x4(%eax),%eax : 804b5c3: mov %eax,0x8(%esp,1) : 804b5c7: mov 0x8(%ebp),%eax : 804b5ca: mov %eax,0x4(%esp,1) : 804b5ce: movl $0x8057e20,(%esp,1) : 804b5d5: call 804a769 : : // unlink the alloc struct : if ( alloc->prev ) : 804b5da: mov 0xfffffff0(%ebp),%eax 13 0.0384 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b5dd: cmpl $0x0,0x14(%eax) : 804b5e1: je 804b5f4 <_Mem_Free+0x10d> : alloc->prev->next = alloc->next; : 804b5e3: mov 0xfffffff0(%ebp),%eax : 804b5e6: mov 0x14(%eax),%edx : 804b5e9: mov 0xfffffff0(%ebp),%eax : 804b5ec: mov 0x18(%eax),%eax : 804b5ef: mov %eax,0x18(%edx) : 804b5f2: jmp 804b600 <_Mem_Free+0x119> : else : zone->list = alloc->next; : 804b5f4: mov 0xfffffffc(%ebp),%eax 3 0.0089 0 0.0e+00 1 0.7143 0 0.0e+00 : 804b5f7: mov 0xfffffff0(%ebp),%edx : 804b5fa: mov 0x18(%edx),%edx 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b5fd: mov %edx,0x38(%eax) : if ( alloc->next ) : 804b600: mov 0xfffffff0(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b603: cmpl $0x0,0x18(%eax) : 804b607: je 804b618 <_Mem_Free+0x131> : alloc->next->prev = alloc->prev; : 804b609: mov 0xfffffff0(%ebp),%eax : 804b60c: mov 0x18(%eax),%edx : 804b60f: mov 0xfffffff0(%ebp),%eax : 804b612: mov 0x14(%eax),%eax : 804b615: mov %eax,0x14(%edx) : : AllocStats_Update( &zone->info, alloc->size, ZONE_ALLOC_OVERHEAD, true ); : 804b618: movl $0x1,0xc(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b620: movl $0x25,0x8(%esp,1) : 804b628: mov 0xfffffff0(%ebp),%eax : 804b62b: mov 0xc(%eax),%eax : 804b62e: mov %eax,0x4(%esp,1) : 804b632: mov 0xfffffffc(%ebp),%eax : 804b635: add $0x18,%eax : 804b638: mov %eax,(%esp,1) : 804b63b: call 804ad1f : AllocStats_Update( &GlobalStats, alloc->size, ZONE_ALLOC_OVERHEAD, true ); : 804b640: movl $0x1,0xc(%esp,1) 5 0.0148 0 0.0e+00 0 0.0e+00 1 0.9434 : 804b648: movl $0x25,0x8(%esp,1) : 804b650: mov 0xfffffff0(%ebp),%eax : 804b653: mov 0xc(%eax),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b656: mov %eax,0x4(%esp,1) : 804b65a: movl $0x805a600,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b661: call 804ad1f : : wrap_free( alloc->data ); : 804b666: mov 0xfffffff0(%ebp),%eax : 804b669: mov 0x10(%eax),%eax : 804b66c: mov %eax,(%esp,1) : 804b66f: call 8048f44 <_init+0x2c8> : wrap_free( alloc ); : 804b674: mov 0xfffffff0(%ebp),%eax : 804b677: mov %eax,(%esp,1) 0 0.0e+00 0 0.0e+00 0 0.0e+00 2 1.8868 : 804b67a: call 8048f44 <_init+0x2c8> : } :} : 804b67f: leave 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b680: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08049a14 : /* DWGame_Input total: 99 0.2925 3 0.3371 6 4.2857 0 0.0e+00 */ :double g_realtime, g_oldrealtime, g_realframetime; :NUint g_framecount; : :void DWGame_Input(void) :{ : 8049a14: push %ebp 16 0.0473 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049a15: mov %esp,%ebp : 8049a17: sub $0x98,%esp : double sensitivity; : double speed; : double movement[3], turn[3]; : : DWInput_Frame(g_realtime, g_realframetime); 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049a1d: fldl 0x805a970 : 8049a23: fstpl 0x8(%esp,1) : 8049a27: fldl 0x805aa08 : 8049a2d: fstpl (%esp,1) : 8049a30: call 8049df0 : : if (g_framecount > 2) : 8049a35: cmpl $0x2,0x805a8c8 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049a3c: jbe 8049bae : { : sensitivity = 0.5; 5 0.0148 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049a42: fldl 0x8057a18 : 8049a48: fstpl 0xfffffff0(%ebp) : speed = 200; : 8049a4b: fldl 0x8057a20 : 8049a51: fstpl 0xffffffe8(%ebp) : movement[0] = 0; : 8049a54: fldz : 8049a56: fstpl 0xffffffc8(%ebp) : movement[1] = 0; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049a59: fldz : 8049a5b: fstpl 0xffffffd0(%ebp) : movement[2] = 0; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049a5e: fldz : 8049a60: fstpl 0xffffffd8(%ebp) : turn[0] = 0; : 8049a63: fldz : 8049a65: fstpl 0xffffffa8(%ebp) : turn[1] = 0; : 8049a68: fldz : 8049a6a: fstpl 0xffffffb0(%ebp) : turn[2] = 0; : 8049a6d: fldz : 8049a6f: fstpl 0xffffffb8(%ebp) : : if (DWInput_KeyState[SDLK_UP] || DWInput_KeyState[SDLK_w]) movement[0] += speed * g_frametime; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049a72: cmpb $0x0,0x805ab51 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049a79: jne 8049a86 : 8049a7b: cmpb $0x0,0x805aab7 10 0.0295 1 0.1124 1 0.7143 0 0.0e+00 : 8049a82: jne 8049a86 : 8049a84: jmp 8049a97 : 8049a86: fldl 0xffffffe8(%ebp) : 8049a89: fmull 0x805a968 : 8049a8f: fldl 0xffffffc8(%ebp) : 8049a92: faddp %st,%st(1) : 8049a94: fstpl 0xffffffc8(%ebp) : if (DWInput_KeyState[SDLK_DOWN] || DWInput_KeyState[SDLK_s]) movement[0] -= speed * g_frametime; : 8049a97: cmpb $0x0,0x805ab52 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049a9e: jne 8049aab : 8049aa0: cmpb $0x0,0x805aab3 : 8049aa7: jne 8049aab : 8049aa9: jmp 8049abc : 8049aab: fldl 0xffffffe8(%ebp) : 8049aae: fmull 0x805a968 : 8049ab4: fldl 0xffffffc8(%ebp) : 8049ab7: fsubp %st,%st(1) : 8049ab9: fstpl 0xffffffc8(%ebp) : if (DWInput_KeyState[SDLK_LEFT] || DWInput_KeyState[SDLK_a]) movement[1] += speed * g_frametime; : 8049abc: cmpb $0x0,0x805ab54 6 0.0177 2 0.2247 0 0.0e+00 0 0.0e+00 : 8049ac3: jne 8049ad0 : 8049ac5: cmpb $0x0,0x805aaa1 14 0.0414 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049acc: jne 8049ad0 : 8049ace: jmp 8049ae1 : 8049ad0: fldl 0xffffffe8(%ebp) : 8049ad3: fmull 0x805a968 : 8049ad9: fldl 0xffffffd0(%ebp) : 8049adc: faddp %st,%st(1) : 8049ade: fstpl 0xffffffd0(%ebp) : if (DWInput_KeyState[SDLK_RIGHT] || DWInput_KeyState[SDLK_d]) movement[1] -= speed * g_frametime; : 8049ae1: cmpb $0x0,0x805ab53 : 8049ae8: jne 8049af5 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049aea: cmpb $0x0,0x805aaa4 : 8049af1: jne 8049af5 : 8049af3: jmp 8049b06 : 8049af5: fldl 0xffffffe8(%ebp) : 8049af8: fmull 0x805a968 : 8049afe: fldl 0xffffffd0(%ebp) : 8049b01: fsubp %st,%st(1) : 8049b03: fstpl 0xffffffd0(%ebp) : if (DWInput_KeyState[SDLK_LSHIFT] || DWInput_KeyState[SDLK_RSHIFT]) movement[2] += speed * g_frametime; : 8049b06: cmpb $0x0,0x805ab70 11 0.0325 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049b0d: jne 8049b1a : 8049b0f: cmpb $0x0,0x805ab6f 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b16: jne 8049b1a : 8049b18: jmp 8049b2b : 8049b1a: fldl 0xffffffe8(%ebp) : 8049b1d: fmull 0x805a968 : 8049b23: fldl 0xffffffd8(%ebp) : 8049b26: faddp %st,%st(1) : 8049b28: fstpl 0xffffffd8(%ebp) : if (DWInput_KeyState[SDLK_LCTRL] || DWInput_KeyState[SDLK_RCTRL]) movement[2] -= speed * g_frametime; : 8049b2b: cmpb $0x0,0x805ab72 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049b32: jne 8049b3f : 8049b34: cmpb $0x0,0x805ab71 : 8049b3b: jne 8049b3f 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b3d: jmp 8049b50 : 8049b3f: fldl 0xffffffe8(%ebp) : 8049b42: fmull 0x805a968 : 8049b48: fldl 0xffffffd8(%ebp) : 8049b4b: fsubp %st,%st(1) : 8049b4d: fstpl 0xffffffd8(%ebp) : : turn[0] += DWInput_MouseMove[1] * sensitivity; : 8049b50: fildl 0x805ae44 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b56: fmull 0xfffffff0(%ebp) : 8049b59: fldl 0xffffffa8(%ebp) : 8049b5c: faddp %st,%st(1) : 8049b5e: fstpl 0xffffffa8(%ebp) : turn[1] -= DWInput_MouseMove[0] * sensitivity; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b61: fildl 0x805ae40 : 8049b67: fmull 0xfffffff0(%ebp) : 8049b6a: fldl 0xffffffb0(%ebp) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b6d: fsubp %st,%st(1) : 8049b6f: fstpl 0xffffffb0(%ebp) : : Matrix4x4_ConcatQuakeEntity(&g_cameramatrix, movement[0], movement[1], movement[2], turn[0], turn[1], turn[2], 1); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b72: fld1 : 8049b74: fstpl 0x34(%esp,1) : 8049b78: fldl 0xffffffb8(%ebp) : 8049b7b: fstpl 0x2c(%esp,1) 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b7f: fldl 0xffffffb0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b82: fstpl 0x24(%esp,1) : 8049b86: fldl 0xffffffa8(%ebp) : 8049b89: fstpl 0x1c(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049b8d: fldl 0xffffffd8(%ebp) : 8049b90: fstpl 0x14(%esp,1) : 8049b94: fldl 0xffffffd0(%ebp) : 8049b97: fstpl 0xc(%esp,1) : 8049b9b: fldl 0xffffffc8(%ebp) : 8049b9e: fstpl 0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049ba2: movl $0x805a980,(%esp,1) : 8049ba9: call 804de33 : } : Matrix4x4_Normalize(&g_cameramatrix, &g_cameramatrix); : 8049bae: movl $0x805a980,0x4(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049bb6: movl $0x805a980,(%esp,1) : 8049bbd: call 804cf96 :} : 8049bc2: leave : 8049bc3: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08051b06 : /* Texture_Get total: 98 0.2896 1 0.1124 2 1.4286 3 2.8302 */ :} : :GLuint :Texture_Get (char *name) :{ : 8051b06: push %ebp 34 0.1005 1 0.1124 1 0.7143 1 0.9434 : 8051b07: mov %esp,%ebp : 8051b09: sub $0x4a8,%esp : Nbool alpha; : GLuint i, pixels_width, pixels_height, width, height; : void *filedata; : NUint filesize; : NUint8 *pixels, *texturepixels; : char nametga[1024]; : char *errormessage; : texture_t *texture; : hash_data_t tmp; : : tmp.name = name; 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051b0f: mov 0x8(%ebp),%eax : 8051b12: mov %eax,0xfffffbb8(%ebp) : tmp.name_len = strlen(name) + 1; : 8051b18: mov 0x8(%ebp),%eax : 8051b1b: mov %eax,(%esp,1) : 8051b1e: call 8048dd4 <_init+0x158> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051b23: inc %eax 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 8051b24: mov %eax,0xfffffbbc(%ebp) : if ((texture = (texture_t *) hash_get (textures, &tmp))) : 8051b2a: lea 0xfffffbb8(%ebp),%eax : 8051b30: mov %eax,0x4(%esp,1) : 8051b34: mov 0x805a804,%eax : 8051b39: mov %eax,(%esp,1) : 8051b3c: call 8049817 : 8051b41: mov %eax,0xfffffbc0(%ebp) : 8051b47: mov 0xfffffbc0(%ebp),%eax : 8051b4d: test %eax,%eax : 8051b4f: je 8051b65 : return texture->texnum; : 8051b51: mov 0xfffffbc0(%ebp),%eax : 8051b57: mov 0x8(%eax),%eax : 8051b5a: mov %eax,0xfffffba0(%ebp) : 8051b60: jmp 80521ba : texture = Texture_new (name, false); : 8051b65: movl $0x0,0x4(%esp,1) : 8051b6d: mov 0x8(%ebp),%eax : 8051b70: mov %eax,(%esp,1) : 8051b73: call 8051a0f : 8051b78: mov %eax,0xfffffbc0(%ebp) : hash_add (textures, &texture->h); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051b7e: mov 0xfffffbc0(%ebp),%eax : 8051b84: mov %eax,0x4(%esp,1) : 8051b88: mov 0x805a804,%eax : 8051b8d: mov %eax,(%esp,1) : 8051b90: call 80498a8 : : if (strstr(name, "particledot")) : 8051b95: movl $0x8058b91,0x4(%esp,1) : 8051b9d: mov 0x8(%ebp),%eax : 8051ba0: mov %eax,(%esp,1) : 8051ba3: call 8048dc4 <_init+0x148> : 8051ba8: test %eax,%eax : 8051baa: je 8051e17 : { : NUint8 x, y; : Nfloat dx, dy; : pixels_width = 64; : 8051bb0: movl $0x40,0xffffffec(%ebp) : pixels_height = 64; : 8051bb7: movl $0x40,0xffffffe8(%ebp) : pixels = Mem_Alloc (tex_zone, pixels_width * pixels_height * 4); : 8051bbe: movl $0x59,0xc(%esp,1) : 8051bc6: movl $0x8058b6c,0x8(%esp,1) : 8051bce: mov 0xffffffec(%ebp),%eax : 8051bd1: imul 0xffffffe8(%ebp),%eax : 8051bd5: shl $0x2,%eax : 8051bd8: mov %eax,0x4(%esp,1) : 8051bdc: mov 0x805a808,%eax : 8051be1: mov %eax,(%esp,1) : 8051be4: call 804b1e4 <_Mem_Alloc> : 8051be9: mov %eax,0xffffffd4(%ebp) : : for (x=0; x<64; x++) : 8051bec: movb $0x0,0xfffffbb7(%ebp) : 8051bf3: cmpb $0x3f,0xfffffbb7(%ebp) : 8051bfa: jbe 8051c01 : 8051bfc: jmp 8051ef1 : { : dx = x - 32.0f; : 8051c01: movzbl 0xfffffbb7(%ebp),%eax : 8051c08: push %eax : 8051c09: fildl (%esp,1) : 8051c0c: lea 0x4(%esp,1),%esp : 8051c10: flds 0x8058bc0 : 8051c16: fsubrp %st,%st(1) : 8051c18: fstps 0xfffffbb0(%ebp) : for (y=0; y<64; y++) : 8051c1e: movb $0x0,0xfffffbb6(%ebp) : 8051c25: cmpb $0x3f,0xfffffbb6(%ebp) : 8051c2c: jbe 8051c33 : 8051c2e: jmp 8051e0a : { : dy = y - 32.0f; : 8051c33: movzbl 0xfffffbb6(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051c3a: push %eax : 8051c3b: fildl (%esp,1) : 8051c3e: lea 0x4(%esp,1),%esp : 8051c42: flds 0x8058bc0 : 8051c48: fsubrp %st,%st(1) : 8051c4a: fstps 0xfffffbac(%ebp) : pixels[((x*64)+y)*4+0] = 255; : 8051c50: movzbl 0xfffffbb7(%ebp),%eax : 8051c57: movzbl 0xfffffbb6(%ebp),%edx : 8051c5e: shl $0x6,%eax : 8051c61: add %edx,%eax : 8051c63: lea 0x0(,%eax,4),%edx : 8051c6a: mov 0xffffffd4(%ebp),%eax : 8051c6d: movb $0xff,(%eax,%edx,1) : pixels[((x*64)+y)*4+1] = 255; : 8051c71: movzbl 0xfffffbb7(%ebp),%eax : 8051c78: movzbl 0xfffffbb6(%ebp),%edx : 8051c7f: shl $0x6,%eax : 8051c82: add %edx,%eax : 8051c84: shl $0x2,%eax : 8051c87: add 0xffffffd4(%ebp),%eax : 8051c8a: inc %eax : 8051c8b: movb $0xff,(%eax) : pixels[((x*64)+y)*4+2] = 255; : 8051c8e: movzbl 0xfffffbb7(%ebp),%eax : 8051c95: movzbl 0xfffffbb6(%ebp),%edx : 8051c9c: shl $0x6,%eax : 8051c9f: add %edx,%eax : 8051ca1: shl $0x2,%eax : 8051ca4: add 0xffffffd4(%ebp),%eax : 8051ca7: add $0x2,%eax : 8051caa: movb $0xff,(%eax) : pixels[((x*64)+y)*4+3] = (NUint8) Bound(0, (256 - (dx*dx+dy*dy) / 4), 255); : 8051cad: movzbl 0xfffffbb7(%ebp),%eax : 8051cb4: movzbl 0xfffffbb6(%ebp),%edx : 8051cbb: shl $0x6,%eax : 8051cbe: add %edx,%eax : 8051cc0: shl $0x2,%eax : 8051cc3: add 0xffffffd4(%ebp),%eax : 8051cc6: add $0x3,%eax : 8051cc9: mov %eax,0xfffffb9c(%ebp) : 8051ccf: flds 0xfffffbb0(%ebp) : 8051cd5: fmuls 0xfffffbb0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051cdb: flds 0xfffffbac(%ebp) : 8051ce1: fmuls 0xfffffbac(%ebp) : 8051ce7: faddp %st,%st(1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051ce9: flds 0x8058bc4 : 8051cef: fdivrp %st,%st(1) : 8051cf1: flds 0x8058bc8 : 8051cf7: fsubp %st,%st(1) : 8051cf9: flds 0x8058bcc : 8051cff: fucompp : 8051d01: fnstsw %ax : 8051d03: sahf 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051d04: ja 8051d08 : 8051d06: jmp 8051d42 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051d08: flds 0xfffffbb0(%ebp) : 8051d0e: fmuls 0xfffffbb0(%ebp) : 8051d14: flds 0xfffffbac(%ebp) : 8051d1a: fmuls 0xfffffbac(%ebp) : 8051d20: faddp %st,%st(1) : 8051d22: flds 0x8058bc4 : 8051d28: fdivrp %st,%st(1) : 8051d2a: flds 0x8058bc8 : 8051d30: fsubp %st,%st(1) : 8051d32: fldz : 8051d34: fxch %st(1) : 8051d36: fucompp : 8051d38: fnstsw %ax : 8051d3a: sahf : 8051d3b: ja 8051d42 : 8051d3d: jmp 8051de7 : 8051d42: flds 0xfffffbb0(%ebp) : 8051d48: fmuls 0xfffffbb0(%ebp) : 8051d4e: flds 0xfffffbac(%ebp) : 8051d54: fmuls 0xfffffbac(%ebp) : 8051d5a: faddp %st,%st(1) : 8051d5c: flds 0x8058bc4 : 8051d62: fdivrp %st,%st(1) : 8051d64: flds 0x8058bc8 : 8051d6a: fsubp %st,%st(1) : 8051d6c: flds 0x8058bcc : 8051d72: fucompp : 8051d74: fnstsw %ax : 8051d76: sahf : 8051d77: ja 8051d7b : 8051d79: jmp 8051dde 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051d7b: flds 0xfffffbb0(%ebp) : 8051d81: fmuls 0xfffffbb0(%ebp) : 8051d87: flds 0xfffffbac(%ebp) : 8051d8d: fmuls 0xfffffbac(%ebp) : 8051d93: faddp %st,%st(1) : 8051d95: flds 0x8058bc4 : 8051d9b: fdivrp %st,%st(1) : 8051d9d: flds 0x8058bc8 : 8051da3: fsubp %st,%st(1) : 8051da5: fnstcw 0xfffffbaa(%ebp) : 8051dab: movzwl 0xfffffbaa(%ebp),%eax : 8051db2: or $0xc00,%ax : 8051db6: mov %ax,0xfffffba8(%ebp) : 8051dbd: fldcw 0xfffffba8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051dc3: fistp 0xfffffba6(%ebp) : 8051dc9: fldcw 0xfffffbaa(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051dcf: movzwl 0xfffffba6(%ebp),%eax : 8051dd6: mov %al,0xfffffb9b(%ebp) : 8051ddc: jmp 8051dee : 8051dde: movb $0xff,0xfffffb9b(%ebp) : 8051de5: jmp 8051dee : 8051de7: movb $0x0,0xfffffb9b(%ebp) : 8051dee: movzbl 0xfffffb9b(%ebp),%edx : 8051df5: mov 0xfffffb9c(%ebp),%eax : 8051dfb: mov %dl,(%eax) : 8051dfd: lea 0xfffffbb6(%ebp),%eax : 8051e03: incb (%eax) : 8051e05: jmp 8051c25 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051e0a: lea 0xfffffbb7(%ebp),%eax : 8051e10: incb (%eax) : 8051e12: jmp 8051bf3 : } : } : } : else : { : if (!(filedata = File_LoadFile(name, &filesize))) : 8051e17: lea 0xffffffd8(%ebp),%eax : 8051e1a: mov %eax,0x4(%esp,1) : 8051e1e: mov 0x8(%ebp),%eax : 8051e21: mov %eax,(%esp,1) : 8051e24: call 804bdb0 : 8051e29: mov %eax,0xffffffdc(%ebp) : 8051e2c: cmpl $0x0,0xffffffdc(%ebp) : 8051e30: jne 8051e99 : { : sprintf(nametga, "%s.tga", name); : 8051e32: mov 0x8(%ebp),%eax : 8051e35: mov %eax,0x8(%esp,1) : 8051e39: movl $0x8058b9d,0x4(%esp,1) : 8051e41: lea 0xfffffbc8(%ebp),%eax : 8051e47: mov %eax,(%esp,1) : 8051e4a: call 8048fa4 <_init+0x328> : if (!(filedata = File_LoadFile(nametga, &filesize))) : 8051e4f: lea 0xffffffd8(%ebp),%eax : 8051e52: mov %eax,0x4(%esp,1) : 8051e56: lea 0xfffffbc8(%ebp),%eax : 8051e5c: mov %eax,(%esp,1) : 8051e5f: call 804bdb0 : 8051e64: mov %eax,0xffffffdc(%ebp) : 8051e67: cmpl $0x0,0xffffffdc(%ebp) : 8051e6b: jne 8051e99 : { : Console_Printf("failed both %s and %s\n", name, nametga); : 8051e6d: lea 0xfffffbc8(%ebp),%eax : 8051e73: mov %eax,0x8(%esp,1) : 8051e77: mov 0x8(%ebp),%eax : 8051e7a: mov %eax,0x4(%esp,1) : 8051e7e: movl $0x8058ba4,(%esp,1) : 8051e85: call 804a769 : return 0; : 8051e8a: movl $0x0,0xfffffba0(%ebp) : 8051e94: jmp 80521ba : } : } : : pixels = Image_LoadTargaRGBA(filedata, filesize, &pixels_width, &pixels_height, &errormessage); : 8051e99: lea 0xfffffbc4(%ebp),%eax : 8051e9f: mov %eax,0x10(%esp,1) : 8051ea3: lea 0xffffffe8(%ebp),%eax : 8051ea6: mov %eax,0xc(%esp,1) : 8051eaa: lea 0xffffffec(%ebp),%eax : 8051ead: mov %eax,0x8(%esp,1) : 8051eb1: mov 0xffffffd8(%ebp),%eax : 8051eb4: mov %eax,0x4(%esp,1) : 8051eb8: mov 0xffffffdc(%ebp),%eax : 8051ebb: mov %eax,(%esp,1) : 8051ebe: call 804bf37 : 8051ec3: mov %eax,0xffffffd4(%ebp) : if (!pixels) : 8051ec6: cmpl $0x0,0xffffffd4(%ebp) : 8051eca: jne 8051ef1 : { : Console_Printf("%s\n", errormessage); : 8051ecc: mov 0xfffffbc4(%ebp),%eax : 8051ed2: mov %eax,0x4(%esp,1) : 8051ed6: movl $0x8058bbb,(%esp,1) : 8051edd: call 804a769 : return 0; : 8051ee2: movl $0x0,0xfffffba0(%ebp) : 8051eec: jmp 80521ba : } : } : : qglGenTextures (1, &texture->texnum); : 8051ef1: mov 0xfffffbc0(%ebp),%eax : 8051ef7: add $0x8,%eax : 8051efa: mov %eax,0x4(%esp,1) : 8051efe: movl $0x1,(%esp,1) : 8051f05: mov 0x805a6b8,%eax : 8051f0a: call *%eax : qglBindTexture (GL_TEXTURE_2D, texture->texnum); : 8051f0c: mov 0xfffffbc0(%ebp),%eax : 8051f12: mov 0x8(%eax),%eax : 8051f15: mov %eax,0x4(%esp,1) : 8051f19: movl $0xde1,(%esp,1) : 8051f20: mov 0x805a628,%eax : 8051f25: call *%eax : : for (width = 1;width < pixels_width && width < max_texture_size;width *= 2); : 8051f27: movl $0x1,0xffffffe4(%ebp) : 8051f2e: mov 0xffffffe4(%ebp),%eax : 8051f31: cmp 0xffffffec(%ebp),%eax : 8051f34: jae 8051f4d : 8051f36: mov 0xffffffe4(%ebp),%eax : 8051f39: cmp 0x805a80c,%eax : 8051f3f: jb 8051f43 : 8051f41: jmp 8051f4d : 8051f43: mov 0xffffffe4(%ebp),%eax : 8051f46: add %eax,%eax : 8051f48: mov %eax,0xffffffe4(%ebp) : 8051f4b: jmp 8051f2e : for (height = 1;height < pixels_height && height < max_texture_size;height *= 2); : 8051f4d: movl $0x1,0xffffffe0(%ebp) : 8051f54: mov 0xffffffe0(%ebp),%eax : 8051f57: cmp 0xffffffe8(%ebp),%eax : 8051f5a: jae 8051f73 : 8051f5c: mov 0xffffffe0(%ebp),%eax : 8051f5f: cmp 0x805a80c,%eax : 8051f65: jb 8051f69 : 8051f67: jmp 8051f73 : 8051f69: mov 0xffffffe0(%ebp),%eax : 8051f6c: add %eax,%eax : 8051f6e: mov %eax,0xffffffe0(%ebp) : 8051f71: jmp 8051f54 : texturepixels = Mem_Alloc(tex_zone, width * height * 4); : 8051f73: movl $0x81,0xc(%esp,1) : 8051f7b: movl $0x8058b6c,0x8(%esp,1) : 8051f83: mov 0xffffffe4(%ebp),%eax : 8051f86: imul 0xffffffe0(%ebp),%eax : 8051f8a: shl $0x2,%eax : 8051f8d: mov %eax,0x4(%esp,1) : 8051f91: mov 0x805a808,%eax : 8051f96: mov %eax,(%esp,1) : 8051f99: call 804b1e4 <_Mem_Alloc> : 8051f9e: mov %eax,0xffffffd0(%ebp) : Image_ResampleRGBA(pixels, pixels_width, pixels_height, texturepixels, width, height); : 8051fa1: mov 0xffffffe0(%ebp),%eax : 8051fa4: mov %eax,0x14(%esp,1) : 8051fa8: mov 0xffffffe4(%ebp),%eax : 8051fab: mov %eax,0x10(%esp,1) : 8051faf: mov 0xffffffd0(%ebp),%eax : 8051fb2: mov %eax,0xc(%esp,1) : 8051fb6: mov 0xffffffe8(%ebp),%eax : 8051fb9: mov %eax,0x8(%esp,1) : 8051fbd: mov 0xffffffec(%ebp),%eax : 8051fc0: mov %eax,0x4(%esp,1) : 8051fc4: mov 0xffffffd4(%ebp),%eax : 8051fc7: mov %eax,(%esp,1) : 8051fca: call 804c67b : alpha = false; : 8051fcf: movl $0x0,0xfffffff4(%ebp) : for (i = 3;i < width * height * 4;i += 4) : 8051fd6: movl $0x3,0xfffffff0(%ebp) : 8051fdd: mov 0xffffffe4(%ebp),%eax : 8051fe0: imul 0xffffffe0(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051fe4: shl $0x2,%eax : 8051fe7: cmp %eax,0xfffffff0(%ebp) : 8051fea: jb 8051fee : 8051fec: jmp 8052008 : if (texturepixels[i] < 255) : 8051fee: mov 0xfffffff0(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051ff1: add 0xffffffd0(%ebp),%eax : 8051ff4: cmpb $0xff,(%eax) : 8051ff7: je 8052000 : alpha = true; 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8051ff9: movl $0x1,0xfffffff4(%ebp) : 8052000: lea 0xfffffff0(%ebp),%eax : 8052003: addl $0x4,(%eax) : 8052006: jmp 8051fdd : CheckGLError(); : 8052008: mov 0x805a6c0,%eax : 805200d: call *%eax : 805200f: mov %eax,0x89df2c8 : 8052014: mov 0x89df2c8,%eax : 8052019: test %eax,%eax : 805201b: je 805203a : 805201d: movl $0x87,0x8(%esp,1) : 8052025: movl $0x8058b6c,0x4(%esp,1) : 805202d: mov 0x89df2c8,%eax : 8052032: mov %eax,(%esp,1) : 8052035: call 8051860 : qglTexImage2D(GL_TEXTURE_2D, 0, alpha ? 4 : 3, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturepixels);CheckGLError(); : 805203a: mov 0xffffffd0(%ebp),%eax : 805203d: mov %eax,0x20(%esp,1) : 8052041: movl $0x1401,0x1c(%esp,1) : 8052049: movl $0x1908,0x18(%esp,1) : 8052051: movl $0x0,0x14(%esp,1) : 8052059: mov 0xffffffe0(%ebp),%eax : 805205c: mov %eax,0x10(%esp,1) : 8052060: mov 0xffffffe4(%ebp),%eax : 8052063: mov %eax,0xc(%esp,1) : 8052067: cmpl $0x0,0xfffffff4(%ebp) : 805206b: je 8052079 : 805206d: movl $0x4,0xfffffb94(%ebp) : 8052077: jmp 8052083 : 8052079: movl $0x3,0xfffffb94(%ebp) : 8052083: mov 0xfffffb94(%ebp),%edx : 8052089: mov %edx,0x8(%esp,1) : 805208d: movl $0x0,0x4(%esp,1) : 8052095: movl $0xde1,(%esp,1) : 805209c: mov 0x805a738,%eax : 80520a1: call *%eax : 80520a3: mov 0x805a6c0,%eax : 80520a8: call *%eax : 80520aa: mov %eax,0x89df2c8 : 80520af: mov 0x89df2c8,%eax : 80520b4: test %eax,%eax : 80520b6: je 80520d5 : 80520b8: movl $0x88,0x8(%esp,1) : 80520c0: movl $0x8058b6c,0x4(%esp,1) : 80520c8: mov 0x89df2c8,%eax : 80520cd: mov %eax,(%esp,1) : 80520d0: call 8051860 : qglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);CheckGLError(); : 80520d5: movl $0x2601,0x8(%esp,1) : 80520dd: movl $0x2801,0x4(%esp,1) : 80520e5: movl $0xde1,(%esp,1) : 80520ec: mov 0x805a740,%eax : 80520f1: call *%eax : 80520f3: mov 0x805a6c0,%eax : 80520f8: call *%eax : 80520fa: mov %eax,0x89df2c8 : 80520ff: mov 0x89df2c8,%eax : 8052104: test %eax,%eax : 8052106: je 8052125 : 8052108: movl $0x89,0x8(%esp,1) : 8052110: movl $0x8058b6c,0x4(%esp,1) : 8052118: mov 0x89df2c8,%eax : 805211d: mov %eax,(%esp,1) : 8052120: call 8051860 : qglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);CheckGLError(); : 8052125: movl $0x2601,0x8(%esp,1) : 805212d: movl $0x2800,0x4(%esp,1) : 8052135: movl $0xde1,(%esp,1) : 805213c: mov 0x805a740,%eax : 8052141: call *%eax : 8052143: mov 0x805a6c0,%eax : 8052148: call *%eax : 805214a: mov %eax,0x89df2c8 : 805214f: mov 0x89df2c8,%eax : 8052154: test %eax,%eax : 8052156: je 8052175 : 8052158: movl $0x8a,0x8(%esp,1) : 8052160: movl $0x8058b6c,0x4(%esp,1) : 8052168: mov 0x89df2c8,%eax : 805216d: mov %eax,(%esp,1) : 8052170: call 8051860 : Mem_Free(texturepixels); : 8052175: movl $0x8b,0x8(%esp,1) : 805217d: movl $0x8058b6c,0x4(%esp,1) : 8052185: mov 0xffffffd0(%ebp),%eax : 8052188: mov %eax,(%esp,1) : 805218b: call 804b4e7 <_Mem_Free> : Mem_Free(pixels); : 8052190: movl $0x8c,0x8(%esp,1) : 8052198: movl $0x8058b6c,0x4(%esp,1) : 80521a0: mov 0xffffffd4(%ebp),%eax : 80521a3: mov %eax,(%esp,1) : 80521a6: call 804b4e7 <_Mem_Free> : : return texture->texnum; : 80521ab: mov 0xfffffbc0(%ebp),%eax : 80521b1: mov 0x8(%eax),%eax : 80521b4: mov %eax,0xfffffba0(%ebp) :} : 80521ba: mov 0xfffffba0(%ebp),%eax 41 0.1211 0 0.0e+00 1 0.7143 1 0.9434 : 80521c0: leave : 80521c1: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804d536 : /* Matrix4x4_CreateFromQuakeEntity total: 86 0.2541 0 0.0e+00 6 4.2857 0 0.0e+00 */ : out->m[3][3]=1.0f; :} : :void Matrix4x4_CreateFromQuakeEntity(matrix4x4_t *out, double x, double y, double z, double pitch, double yaw, double roll, double scale) :{ : 804d536: push %ebp 9 0.0266 0 0.0e+00 2 1.4286 0 0.0e+00 : 804d537: mov %esp,%ebp : 804d539: sub $0x78,%esp : 804d53c: fldl 0xc(%ebp) 7 0.0207 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d53f: fstpl 0xfffffff8(%ebp) 1 0.0030 0 0.0e+00 2 1.4286 0 0.0e+00 : 804d542: fldl 0x14(%ebp) : 804d545: fstpl 0xfffffff0(%ebp) : 804d548: fldl 0x1c(%ebp) : 804d54b: fstpl 0xffffffe8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d54e: fldl 0x24(%ebp) : 804d551: fstpl 0xffffffe0(%ebp) : 804d554: fldl 0x2c(%ebp) : 804d557: fstpl 0xffffffd8(%ebp) : 804d55a: fldl 0x34(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d55d: fstpl 0xffffffd0(%ebp) : 804d560: fldl 0x3c(%ebp) : 804d563: fstpl 0xffffffc8(%ebp) : double angle, sr, sp, sy, cr, cp, cy; : : angle = yaw * (M_PI*2 / 360); : 804d566: fldl 0xffffffd8(%ebp) : 804d569: fldl 0x8058300 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d56f: fmulp %st,%st(1) : 804d571: fstpl 0xffffffc0(%ebp) : sy = sin(angle); : 804d574: fldl 0xffffffc0(%ebp) : 804d577: fstpl (%esp,1) : 804d57a: call 8048fc4 <_init+0x348> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d57f: fstpl 0xffffffa8(%ebp) : cy = cos(angle); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d582: fldl 0xffffffc0(%ebp) : 804d585: fstpl (%esp,1) : 804d588: call 8048cb4 <_init+0x38> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d58d: fstpl 0xffffff90(%ebp) : angle = pitch * (M_PI*2 / 360); : 804d590: fldl 0xffffffe0(%ebp) : 804d593: fldl 0x8058300 : 804d599: fmulp %st,%st(1) : 804d59b: fstpl 0xffffffc0(%ebp) : sp = sin(angle); : 804d59e: fldl 0xffffffc0(%ebp) : 804d5a1: fstpl (%esp,1) : 804d5a4: call 8048fc4 <_init+0x348> : 804d5a9: fstpl 0xffffffb0(%ebp) : cp = cos(angle); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d5ac: fldl 0xffffffc0(%ebp) : 804d5af: fstpl (%esp,1) : 804d5b2: call 8048cb4 <_init+0x38> : 804d5b7: fstpl 0xffffff98(%ebp) : angle = roll * (M_PI*2 / 360); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d5ba: fldl 0xffffffd0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d5bd: fldl 0x8058300 : 804d5c3: fmulp %st,%st(1) : 804d5c5: fstpl 0xffffffc0(%ebp) : sr = sin(angle); : 804d5c8: fldl 0xffffffc0(%ebp) : 804d5cb: fstpl (%esp,1) : 804d5ce: call 8048fc4 <_init+0x348> : 804d5d3: fstpl 0xffffffb8(%ebp) : cr = cos(angle); 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d5d6: fldl 0xffffffc0(%ebp) : 804d5d9: fstpl (%esp,1) : 804d5dc: call 8048cb4 <_init+0x38> : 804d5e1: fstpl 0xffffffa0(%ebp) : out->m[0][0] = (double)((cp*cy) * scale); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d5e4: mov 0x8(%ebp),%eax : 804d5e7: fldl 0xffffff98(%ebp) : 804d5ea: fmull 0xffffff90(%ebp) : 804d5ed: fmull 0xffffffc8(%ebp) : 804d5f0: fstpl (%eax) : out->m[0][1] = (double)((sr*sp*cy+cr*-sy) * scale); : 804d5f2: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d5f5: fldl 0xffffffb8(%ebp) : 804d5f8: fmull 0xffffffb0(%ebp) : 804d5fb: fmull 0xffffff90(%ebp) 16 0.0473 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d5fe: fldl 0xffffffa8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d601: fchs : 804d603: fmull 0xffffffa0(%ebp) : 804d606: faddp %st,%st(1) : 804d608: fmull 0xffffffc8(%ebp) : 804d60b: fstpl 0x8(%eax) : out->m[0][2] = (double)((cr*sp*cy+-sr*-sy) * scale); 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d60e: mov 0x8(%ebp),%eax : 804d611: fldl 0xffffffa0(%ebp) : 804d614: fmull 0xffffffb0(%ebp) : 804d617: fmull 0xffffff90(%ebp) : 804d61a: fldl 0xffffffb8(%ebp) : 804d61d: fmull 0xffffffa8(%ebp) : 804d620: faddp %st,%st(1) : 804d622: fmull 0xffffffc8(%ebp) : 804d625: fstpl 0x10(%eax) : out->m[0][3] = x; : 804d628: mov 0x8(%ebp),%eax : 804d62b: fldl 0xfffffff8(%ebp) : 804d62e: fstpl 0x18(%eax) : out->m[1][0] = (double)((cp*sy) * scale); : 804d631: mov 0x8(%ebp),%eax : 804d634: fldl 0xffffff98(%ebp) : 804d637: fmull 0xffffffa8(%ebp) : 804d63a: fmull 0xffffffc8(%ebp) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d63d: fstpl 0x20(%eax) : out->m[1][1] = (double)((sr*sp*sy+cr*cy) * scale); : 804d640: mov 0x8(%ebp),%eax : 804d643: fldl 0xffffffb8(%ebp) : 804d646: fmull 0xffffffb0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d649: fmull 0xffffffa8(%ebp) : 804d64c: fldl 0xffffffa0(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d64f: fmull 0xffffff90(%ebp) : 804d652: faddp %st,%st(1) : 804d654: fmull 0xffffffc8(%ebp) : 804d657: fstpl 0x28(%eax) : out->m[1][2] = (double)((cr*sp*sy+-sr*cy) * scale); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d65a: mov 0x8(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d65d: fldl 0xffffffa0(%ebp) : 804d660: fmull 0xffffffb0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d663: fmull 0xffffffa8(%ebp) : 804d666: fldl 0xffffffb8(%ebp) : 804d669: fchs : 804d66b: fmull 0xffffff90(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d66e: faddp %st,%st(1) : 804d670: fmull 0xffffffc8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d673: fstpl 0x30(%eax) : out->m[1][3] = y; : 804d676: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d679: fldl 0xfffffff0(%ebp) : 804d67c: fstpl 0x38(%eax) : out->m[2][0] = (double)((-sp) * scale); 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d67f: mov 0x8(%ebp),%eax 3 0.0089 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d682: fldl 0xffffffb0(%ebp) : 804d685: fchs : 804d687: fmull 0xffffffc8(%ebp) : 804d68a: fstpl 0x40(%eax) : out->m[2][1] = (double)((sr*cp) * scale); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d68d: mov 0x8(%ebp),%eax : 804d690: fldl 0xffffffb8(%ebp) : 804d693: fmull 0xffffff98(%ebp) : 804d696: fmull 0xffffffc8(%ebp) : 804d699: fstpl 0x48(%eax) : out->m[2][2] = (double)((cr*cp) * scale); : 804d69c: mov 0x8(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d69f: fldl 0xffffffa0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d6a2: fmull 0xffffff98(%ebp) : 804d6a5: fmull 0xffffffc8(%ebp) : 804d6a8: fstpl 0x50(%eax) : out->m[2][3] = z; : 804d6ab: mov 0x8(%ebp),%eax : 804d6ae: fldl 0xffffffe8(%ebp) : 804d6b1: fstpl 0x58(%eax) : out->m[3][0] = 0; : 804d6b4: mov 0x8(%ebp),%eax : 804d6b7: fldz : 804d6b9: fstpl 0x60(%eax) : out->m[3][1] = 0; : 804d6bc: mov 0x8(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d6bf: fldz 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d6c1: fstpl 0x68(%eax) : out->m[3][2] = 0; : 804d6c4: mov 0x8(%ebp),%eax : 804d6c7: fldz : 804d6c9: fstpl 0x70(%eax) : out->m[3][3] = 1; : 804d6cc: mov 0x8(%ebp),%eax : 804d6cf: fld1 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d6d1: fstpl 0x78(%eax) :} : 804d6d4: leave : 804d6d5: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080534c3 : /* DWRender_Frame total: 85 0.2512 0 0.0e+00 3 2.1429 2 1.8868 */ : R_DrawString(tempstring, 0, 0, 480 - 8, 8, 8); :} : :void DWRender_Frame(double newtime, double frametime, matrix4x4_t *cameramatrix, float fovxscale, float fovyscale, float znear, float zfar) :{ : 80534c3: push %ebp 6 0.0177 0 0.0e+00 0 0.0e+00 1 0.9434 : 80534c4: mov %esp,%ebp : 80534c6: push %edi : 80534c7: push %esi : 80534c8: sub $0x20,%esp 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 80534cb: fldl 0x8(%ebp) : 80534ce: fstpl 0xfffffff0(%ebp) : 80534d1: fldl 0x10(%ebp) : 80534d4: fstpl 0xffffffe8(%ebp) : r_time = newtime; : 80534d7: fldl 0xfffffff0(%ebp) : 80534da: fstpl 0x89df5c0 : r_frametime = frametime; : 80534e0: fldl 0xffffffe8(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80534e3: fstpl 0x89df660 : r_cameramatrix = *cameramatrix; : 80534e9: mov 0x18(%ebp),%eax : 80534ec: mov $0x89df540,%edi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80534f1: mov %eax,%esi : 80534f3: mov $0x80,%eax : 80534f8: cld : 80534f9: mov %eax,%ecx : 80534fb: shr $0x2,%ecx 42 0.1241 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80534fe: repz movsl %ds:(%esi),%es:(%edi) : r_znear = znear; 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053500: mov 0x24(%ebp),%eax : 8053503: mov %eax,0x89df52c : r_zfar = zfar; : 8053508: mov 0x28(%ebp),%eax : 805350b: mov %eax,0x89df524 : r_xmax = fovxscale; : 8053510: mov 0x1c(%ebp),%eax : 8053513: mov %eax,0x89df528 : r_ymax = fovyscale; : 8053518: mov 0x20(%ebp),%eax : 805351b: mov %eax,0x89df520 : qglClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); : 8053520: movl $0x4100,(%esp,1) : 8053527: mov 0x805a638,%eax : 805352c: call *%eax : R_DrawView(); 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 805352e: call 8053292 : R_Draw2D(); : 8053533: call 80532ae : // note: SDL_GL_SwapBuffers does a qglFinish for us : SDL_GL_SwapBuffers(); : 8053538: call 8048e24 <_init+0x1a8> :} : 805353d: add $0x20,%esp 29 0.0857 0 0.0e+00 2 1.4286 0 0.0e+00 : 8053540: pop %esi : 8053541: pop %edi : 8053542: pop %ebp : 8053543: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804b976 : /* String_Compare total: 83 0.2453 0 0.0e+00 1 0.7143 0 0.0e+00 */ : return tlen; :} : :int String_Compare(const char *s, const char *t) :{ 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b976: push %ebp 65 0.1921 0 0.0e+00 1 0.7143 0 0.0e+00 : 804b977: mov %esp,%ebp : 804b979: sub $0x18,%esp : return strcmp(s ? s : "", t ? t : ""); : 804b97c: mov 0xc(%ebp),%eax 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b97f: mov %eax,0xfffffffc(%ebp) : 804b982: cmpl $0x0,0xc(%ebp) : 804b986: jne 804b98f : 804b988: movl $0x8057f00,0xfffffffc(%ebp) : 804b98f: mov 0x8(%ebp),%eax 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b992: mov %eax,0xfffffff8(%ebp) : 804b995: cmpl $0x0,0x8(%ebp) : 804b999: jne 804b9a2 : 804b99b: movl $0x8057f00,0xfffffff8(%ebp) : 804b9a2: mov 0xfffffffc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b9a5: mov %eax,0x4(%esp,1) : 804b9a9: mov 0xfffffff8(%ebp),%eax : 804b9ac: mov %eax,(%esp,1) : 804b9af: call 8048d14 <_init+0x98> :} : 804b9b4: leave 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804b9b5: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08049678 : /* hash_hash total: 81 0.2393 0 0.0e+00 3 2.1429 0 0.0e+00 */ :#include "nstring.h" : :static NUint32 :hash_hash (UNUSED hash_t *hash, hash_data_t *what) :{ : 8049678: push %ebp 74 0.2187 0 0.0e+00 3 2.1429 0 0.0e+00 : 8049679: mov %esp,%ebp : 804967b: sub $0x8,%esp : return CRC16_Block (what->name, what->name_len); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804967e: mov 0xc(%ebp),%eax : 8049681: mov 0x4(%eax),%eax : 8049684: mov %eax,0x4(%esp,1) : 8049688: mov 0xc(%ebp),%eax : 804968b: mov (%eax),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804968d: mov %eax,(%esp,1) : 8049690: call 80490e4 : 8049695: movzwl %ax,%eax :} 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049698: leave 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049699: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08049bc4 : /* DWGame_Render total: 77 0.2275 0 0.0e+00 3 2.1429 2 1.8868 */ : Matrix4x4_Normalize(&g_cameramatrix, &g_cameramatrix); :} : :void DWGame_Render(void) :{ 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049bc4: push %ebp : 8049bc5: mov %esp,%ebp : 8049bc7: push %edi : 8049bc8: push %esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049bc9: sub $0xb0,%esp : static double testtime = 0; : float fov, fovxscale, fovyscale; : fov = 90; : 8049bcf: mov $0x42b40000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049bd4: mov %eax,0xfffffff4(%ebp) : fovxscale = tan (fov * (M_PI / 360.0)); : 8049bd7: flds 0xfffffff4(%ebp) : 8049bda: fldl 0x8057a28 : 8049be0: fmulp %st,%st(1) : 8049be2: fstpl (%esp,1) : 8049be5: call 8048e64 <_init+0x1e8> : 8049bea: fstps 0xfffffff0(%ebp) : fovyscale = fovxscale; : 8049bed: mov 0xfffffff0(%ebp),%eax : 8049bf0: mov %eax,0xffffffec(%ebp) : if(testtime < g_time) : 8049bf3: fldl 0x805a590 : 8049bf9: fldl 0x805aa00 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049bff: fucompp : 8049c01: fnstsw %ax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049c03: sahf : 8049c04: ja 8049c08 : 8049c06: jmp 8049c42 : { : double origin[3] = { 200, 0, 0 }; : 8049c08: fldl 0x8057a30 : 8049c0e: fstpl 0xffffffc8(%ebp) : 8049c11: fldz : 8049c13: fstpl 0xffffffd0(%ebp) : 8049c16: fldz : 8049c18: fstpl 0xffffffd8(%ebp) : testtime = g_time + 3; : 8049c1b: fldl 0x805aa00 : 8049c21: fldl 0x8057a38 : 8049c27: faddp %st,%st(1) : 8049c29: fstpl 0x805a590 : ParticleEffect_Explosion (origin, 8); : 8049c2f: movl $0x8,0x4(%esp,1) : 8049c37: lea 0xffffffc8(%ebp),%eax : 8049c3a: mov %eax,(%esp,1) : 8049c3d: call 8053da6 : } : ParticleEffect_Frame (g_cameramatrix); : 8049c42: mov %esp,%edi 14 0.0414 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049c44: mov $0x805a980,%esi : 8049c49: mov $0x80,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049c4e: cld : 8049c4f: mov %eax,%ecx : 8049c51: shr $0x2,%ecx 9 0.0266 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049c54: repz movsl %ds:(%esi),%es:(%edi) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049c56: call 80553f2 : DWRender_Frame(g_realtime, g_realframetime, &g_cameramatrix, fovxscale, fovyscale, 1, 65536); : 8049c5b: mov $0x47800000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049c60: mov %eax,0x20(%esp,1) : 8049c64: mov $0x3f800000,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049c69: mov %eax,0x1c(%esp,1) : 8049c6d: mov 0xffffffec(%ebp),%eax : 8049c70: mov %eax,0x18(%esp,1) : 8049c74: mov 0xfffffff0(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049c77: mov %eax,0x14(%esp,1) : 8049c7b: movl $0x805a980,0x10(%esp,1) : 8049c83: fldl 0x805a970 : 8049c89: fstpl 0x8(%esp,1) : 8049c8d: fldl 0x805aa08 : 8049c93: fstpl (%esp,1) : 8049c96: call 80534c3 :} 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049c9b: add $0xb0,%esp 40 0.1182 0 0.0e+00 2 1.4286 2 1.8868 : 8049ca1: pop %esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049ca2: pop %edi : 8049ca3: pop %ebp : 8049ca4: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08049df0 : /* DWInput_Frame total: 77 0.2275 0 0.0e+00 2 1.4286 1 0.9434 */ :NUint DWInput_MouseButtons[256]; :NUint8 DWInput_KeyState[1024]; : :void DWInput_Frame(UNUSED double newtime, UNUSED double frametime) :{ 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049df0: push %ebp : 8049df1: mov %esp,%ebp : 8049df3: sub $0x58,%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049df6: fldl 0x8(%ebp) : 8049df9: fstpl 0xfffffff0(%ebp) : 8049dfc: fldl 0x10(%ebp) : 8049dff: fstpl 0xffffffe8(%ebp) : SDL_Event event; :// Uint8 *keystate; :// int keystatesize; : : DWInput_MouseMove[0] = DWInput_MouseMove[1] = 0; 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049e02: movl $0x0,0x805ae44 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049e0c: movl $0x0,0x805ae40 : while(SDL_PollEvent(&event)) 14 0.0414 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049e16: lea 0xffffffc8(%ebp),%eax : 8049e19: mov %eax,(%esp,1) : 8049e1c: call 8048f34 <_init+0x2b8> : 8049e21: test %eax,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 1 0.9434 : 8049e23: jne 8049e2a : 8049e25: jmp 8049ee8 : { : switch(event.type) : 8049e2a: movzbl 0xffffffc8(%ebp),%eax : 8049e2e: mov %eax,0xffffffc4(%ebp) : 8049e31: cmpl $0xc,0xffffffc4(%ebp) : 8049e35: ja 8049e16 : 8049e37: mov 0xffffffc4(%ebp),%edx : 8049e3a: mov 0x8057a60(,%edx,4),%eax : 8049e41: jmp *%eax : { : case SDL_QUIT: : DW_Quit(); : 8049e43: call 8049f3c : break; : 8049e48: jmp 8049e16 : case SDL_KEYDOWN: : if(event.key.keysym.sym == SDLK_ESCAPE) : 8049e4a: cmpl $0x1b,0xffffffd0(%ebp) : 8049e4e: jne 8049e55 : DW_Quit(); : 8049e50: call 8049f3c : if(event.key.keysym.sym == SDLK_m) : 8049e55: cmpl $0x6d,0xffffffd0(%ebp) : 8049e59: jne 8049e9e : { : if(SDL_WM_GrabInput(SDL_GRAB_QUERY) == SDL_GRAB_ON) : 8049e5b: movl $0xffffffff,(%esp,1) : 8049e62: call 8048df4 <_init+0x178> : 8049e67: cmp $0x1,%eax : 8049e6a: jne 8049e86 : { : SDL_WM_GrabInput(SDL_GRAB_OFF); : 8049e6c: movl $0x0,(%esp,1) : 8049e73: call 8048df4 <_init+0x178> : SDL_ShowCursor(1); : 8049e78: movl $0x1,(%esp,1) : 8049e7f: call 8048f94 <_init+0x318> : 8049e84: jmp 8049e9e : } : else : { : SDL_WM_GrabInput(SDL_GRAB_ON); : 8049e86: movl $0x1,(%esp,1) : 8049e8d: call 8048df4 <_init+0x178> : SDL_ShowCursor(0); : 8049e92: movl $0x0,(%esp,1) : 8049e99: call 8048f94 <_init+0x318> : } : } : case SDL_KEYUP: : DWInput_KeyState[event.key.keysym.sym] = (event.key.state == SDL_PRESSED); : 8049e9e: mov 0xffffffd0(%ebp),%edx : 8049ea1: add $0x805aa40,%edx : 8049ea7: cmpb $0x1,0xffffffca(%ebp) : 8049eab: sete %al : 8049eae: mov %al,(%edx) : break; : 8049eb0: jmp 8049e16 : case SDL_MOUSEMOTION: : DWInput_MouseMove[0] += event.motion.xrel; : 8049eb5: movswl 0xffffffd0(%ebp),%eax : 8049eb9: add %eax,0x805ae40 : DWInput_MouseMove[1] += event.motion.yrel; : 8049ebf: movswl 0xffffffd2(%ebp),%eax : 8049ec3: add %eax,0x805ae44 : break; : 8049ec9: jmp 8049e16 : case SDL_MOUSEBUTTONDOWN: : case SDL_MOUSEBUTTONUP: : DWInput_MouseButtons[event.button.button] = (event.button.state == SDL_PRESSED); : 8049ece: movzbl 0xffffffca(%ebp),%eax : 8049ed2: cmpb $0x1,0xffffffcb(%ebp) : 8049ed6: sete %dl : 8049ed9: movzbl %dl,%edx : 8049edc: mov %edx,0x805ae60(,%eax,4) : break; : 8049ee3: jmp 8049e16 : default: : break; : } : } :} : 8049ee8: leave 48 0.1418 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049ee9: ret : 8049eea: nop : 8049eeb: nop :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804de33 : /* Matrix4x4_ConcatQuakeEntity total: 75 0.2216 4 0.4494 0 0.0e+00 0 0.0e+00 */ :} : :// FIXME: optimize? :void Matrix4x4_ConcatQuakeEntity(matrix4x4_t *out, double x, double y, double z, double pitch, double yaw, double roll, double scale) :{ : 804de33: push %ebp 19 0.0561 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804de34: mov %esp,%ebp : 804de36: push %edi : 804de37: push %esi 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804de38: sub $0x180,%esp 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804de3e: fldl 0xc(%ebp) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804de41: fstpl 0xfffffff0(%ebp) : 804de44: fldl 0x14(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804de47: fstpl 0xffffffe8(%ebp) : 804de4a: fldl 0x1c(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804de4d: fstpl 0xffffffe0(%ebp) : 804de50: fldl 0x24(%ebp) : 804de53: fstpl 0xffffffd8(%ebp) : 804de56: fldl 0x2c(%ebp) : 804de59: fstpl 0xffffffd0(%ebp) : 804de5c: fldl 0x34(%ebp) : 804de5f: fstpl 0xffffffc8(%ebp) : 804de62: fldl 0x3c(%ebp) : 804de65: fstpl 0xffffffc0(%ebp) : matrix4x4_t base, temp; : base = *out; : 804de68: mov 0x8(%ebp),%eax : 804de6b: lea 0xffffff38(%ebp),%edi : 804de71: mov %eax,%esi : 804de73: mov $0x80,%eax : 804de78: cld : 804de79: mov %eax,%ecx : 804de7b: shr $0x2,%ecx 31 0.0916 4 0.4494 0 0.0e+00 0 0.0e+00 : 804de7e: repz movsl %ds:(%esi),%es:(%edi) : Matrix4x4_CreateFromQuakeEntity(&temp, x, y, z, pitch, yaw, roll, scale); 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804de80: fldl 0xffffffc0(%ebp) : 804de83: fstpl 0x34(%esp,1) : 804de87: fldl 0xffffffc8(%ebp) : 804de8a: fstpl 0x2c(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804de8e: fldl 0xffffffd0(%ebp) : 804de91: fstpl 0x24(%esp,1) : 804de95: fldl 0xffffffd8(%ebp) : 804de98: fstpl 0x1c(%esp,1) : 804de9c: fldl 0xffffffe0(%ebp) : 804de9f: fstpl 0x14(%esp,1) : 804dea3: fldl 0xffffffe8(%ebp) : 804dea6: fstpl 0xc(%esp,1) : 804deaa: fldl 0xfffffff0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dead: fstpl 0x4(%esp,1) : 804deb1: lea 0xfffffeb8(%ebp),%eax : 804deb7: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804deba: call 804d536 : Matrix4x4_Concat(out, &base, &temp); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804debf: lea 0xfffffeb8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dec5: mov %eax,0x8(%esp,1) : 804dec9: lea 0xffffff38(%ebp),%eax : 804decf: mov %eax,0x4(%esp,1) : 804ded3: mov 0x8(%ebp),%eax : 804ded6: mov %eax,(%esp,1) : 804ded9: call 804c8eb :} : 804dede: add $0x180,%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dee4: pop %esi : 804dee5: pop %edi : 804dee6: pop %ebp : 804dee7: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804cca7 : /* Matrix4x4_Transpose total: 72 0.2127 0 0.0e+00 2 1.4286 0 0.0e+00 */ : out->m[3][3] = in1->m[3][0] * in2->m[0][3] + in1->m[3][1] * in2->m[1][3] + in1->m[3][2] * in2->m[2][3] + in1->m[3][3] * in2->m[3][3]; :} : :void Matrix4x4_Transpose(matrix4x4_t *out, const matrix4x4_t *in1) :{ : 804cca7: push %ebp 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cca8: mov %esp,%ebp : out->m[0][0] = in1->m[0][0]; : 804ccaa: mov 0x8(%ebp),%edx : 804ccad: mov 0xc(%ebp),%eax : 804ccb0: fldl (%eax) : 804ccb2: fstpl (%edx) : out->m[0][1] = in1->m[1][0]; : 804ccb4: mov 0x8(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ccb7: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ccba: fldl 0x20(%eax) 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ccbd: fstpl 0x8(%edx) : out->m[0][2] = in1->m[2][0]; : 804ccc0: mov 0x8(%ebp),%edx : 804ccc3: mov 0xc(%ebp),%eax : 804ccc6: fldl 0x40(%eax) : 804ccc9: fstpl 0x10(%edx) : out->m[0][3] = in1->m[3][0]; : 804cccc: mov 0x8(%ebp),%edx : 804cccf: mov 0xc(%ebp),%eax : 804ccd2: fldl 0x60(%eax) : 804ccd5: fstpl 0x18(%edx) : out->m[1][0] = in1->m[0][1]; : 804ccd8: mov 0x8(%ebp),%edx : 804ccdb: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ccde: fldl 0x8(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cce1: fstpl 0x20(%edx) : out->m[1][1] = in1->m[1][1]; : 804cce4: mov 0x8(%ebp),%edx : 804cce7: mov 0xc(%ebp),%eax : 804ccea: fldl 0x28(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cced: fstpl 0x28(%edx) : out->m[1][2] = in1->m[2][1]; : 804ccf0: mov 0x8(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ccf3: mov 0xc(%ebp),%eax : 804ccf6: fldl 0x48(%eax) : 804ccf9: fstpl 0x30(%edx) : out->m[1][3] = in1->m[3][1]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804ccfc: mov 0x8(%ebp),%edx : 804ccff: mov 0xc(%ebp),%eax 28 0.0827 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd02: fldl 0x68(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd05: fstpl 0x38(%edx) : out->m[2][0] = in1->m[0][2]; : 804cd08: mov 0x8(%ebp),%edx : 804cd0b: mov 0xc(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd0e: fldl 0x10(%eax) : 804cd11: fstpl 0x40(%edx) : out->m[2][1] = in1->m[1][2]; : 804cd14: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd17: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd1a: fldl 0x30(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd1d: fstpl 0x48(%edx) : out->m[2][2] = in1->m[2][2]; : 804cd20: mov 0x8(%ebp),%edx : 804cd23: mov 0xc(%ebp),%eax : 804cd26: fldl 0x50(%eax) : 804cd29: fstpl 0x50(%edx) : out->m[2][3] = in1->m[3][2]; : 804cd2c: mov 0x8(%ebp),%edx : 804cd2f: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cd32: fldl 0x70(%eax) : 804cd35: fstpl 0x58(%edx) : out->m[3][0] = in1->m[0][3]; : 804cd38: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd3b: mov 0xc(%ebp),%eax 8 0.0236 0 0.0e+00 1 0.7143 0 0.0e+00 : 804cd3e: fldl 0x18(%eax) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd41: fstpl 0x60(%edx) : out->m[3][1] = in1->m[1][3]; : 804cd44: mov 0x8(%ebp),%edx : 804cd47: mov 0xc(%ebp),%eax : 804cd4a: fldl 0x38(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd4d: fstpl 0x68(%edx) : out->m[3][2] = in1->m[2][3]; : 804cd50: mov 0x8(%ebp),%edx : 804cd53: mov 0xc(%ebp),%eax : 804cd56: fldl 0x58(%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd59: fstpl 0x70(%edx) : out->m[3][3] = in1->m[3][3]; : 804cd5c: mov 0x8(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd5f: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd62: fldl 0x78(%eax) : 804cd65: fstpl 0x78(%edx) :} : 804cd68: pop %ebp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804cd69: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080530fe : /* R_SetupView total: 66 0.1950 0 0.0e+00 1 0.7143 1 0.9434 */ : qglEnable (GL_TEXTURE_2D); :} : :void R_SetupView(void) :{ : 80530fe: push %ebp 33 0.0975 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80530ff: mov %esp,%ebp 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053101: sub $0x158,%esp : double znear, zfar, xmax, ymax; : matrix4x4_t invviewmatrix, basematrix; : : Matrix4x4_CreateTranslate(&r_skymatrix, r_cameramatrix.m[0][0], r_cameramatrix.m[1][0], r_cameramatrix.m[2][0]); : 8053107: fldl 0x89df580 : 805310d: fstpl 0x14(%esp,1) : 8053111: fldl 0x89df560 : 8053117: fstpl 0xc(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805311b: fldl 0x89df540 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053121: fstpl 0x4(%esp,1) : 8053125: movl $0x89df4a0,(%esp,1) : 805312c: call 804d1a2 : : Matrix4x4_Invert_Simple(&invviewmatrix, &r_cameramatrix); : 8053131: movl $0x89df540,0x4(%esp,1) : 8053139: lea 0xffffff58(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805313f: mov %eax,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053142: call 804ce2d : Matrix4x4_CreateRotate(&basematrix, -90, 1, 0, 0); : 8053147: fldz : 8053149: fstpl 0x1c(%esp,1) : 805314d: fldz : 805314f: fstpl 0x14(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053153: fld1 : 8053155: fstpl 0xc(%esp,1) : 8053159: fldl 0x8058bf0 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805315f: fstpl 0x4(%esp,1) : 8053163: lea 0xfffffed8(%ebp),%eax : 8053169: mov %eax,(%esp,1) : 805316c: call 804d23e : Matrix4x4_ConcatRotate(&basematrix, 90, 0, 0, 1); : 8053171: fld1 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053173: fstpl 0x1c(%esp,1) : 8053177: fldz : 8053179: fstpl 0x14(%esp,1) : 805317d: fldz : 805317f: fstpl 0xc(%esp,1) : 8053183: fldl 0x8058bf8 : 8053189: fstpl 0x4(%esp,1) : 805318d: lea 0xfffffed8(%ebp),%eax : 8053193: mov %eax,(%esp,1) : 8053196: call 804dcbd : Matrix4x4_Concat(&r_backend_worldviewmatrix, &basematrix, &invviewmatrix); : 805319b: lea 0xffffff58(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80531a1: mov %eax,0x8(%esp,1) : 80531a5: lea 0xfffffed8(%ebp),%eax : 80531ab: mov %eax,0x4(%esp,1) : 80531af: movl $0x89df380,(%esp,1) : 80531b6: call 804c8eb : //Matrix4x4_Print(&r_backend_worldviewmatrix); : : znear = r_znear; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80531bb: flds 0x89df52c : 80531c1: fstpl 0xfffffff0(%ebp) : zfar = r_zfar; : 80531c4: flds 0x89df524 : 80531ca: fstpl 0xffffffe8(%ebp) : xmax = r_xmax * znear; : 80531cd: flds 0x89df528 : 80531d3: fmull 0xfffffff0(%ebp) : 80531d6: fstpl 0xffffffe0(%ebp) : ymax = r_ymax * znear; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80531d9: flds 0x89df520 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80531df: fmull 0xfffffff0(%ebp) : 80531e2: fstpl 0xffffffd8(%ebp) : qglMatrixMode(GL_PROJECTION); : 80531e5: movl $0x1701,(%esp,1) : 80531ec: mov 0x805a6f8,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80531f1: call *%eax : qglLoadIdentity(); : 80531f3: mov 0x805a6d8,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80531f8: call *%eax : qglFrustum(-xmax, xmax, -ymax, ymax, znear, zfar); : 80531fa: fldl 0xffffffe8(%ebp) : 80531fd: fstpl 0x28(%esp,1) : 8053201: fldl 0xfffffff0(%ebp) : 8053204: fstpl 0x20(%esp,1) : 8053208: fldl 0xffffffd8(%ebp) : 805320b: fstpl 0x18(%esp,1) : 805320f: fldl 0xffffffd8(%ebp) : 8053212: fchs : 8053214: fstpl 0x10(%esp,1) : 8053218: fldl 0xffffffe0(%ebp) : 805321b: fstpl 0x8(%esp,1) : 805321f: fldl 0xffffffe0(%ebp) : 8053222: fchs : 8053224: fstpl (%esp,1) : 8053227: mov 0x805a6b0,%eax : 805322c: call *%eax : qglMatrixMode(GL_MODELVIEW); : 805322e: movl $0x1700,(%esp,1) : 8053235: mov 0x805a6f8,%eax : 805323a: call *%eax : qglEnable(GL_DEPTH_TEST); : 805323c: movl $0xb71,(%esp,1) : 8053243: mov 0x805a690,%eax : 8053248: call *%eax : qglEnable(GL_CULL_FACE); : 805324a: movl $0xb44,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053251: mov 0x805a690,%eax : 8053256: call *%eax : qglEnable(GL_TEXTURE_2D); : 8053258: movl $0xde1,(%esp,1) : 805325f: mov 0x805a690,%eax : 8053264: call *%eax : qglColor4f(1,1,1,1); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053266: mov $0x3f800000,%eax 0 0.0e+00 0 0.0e+00 0 0.0e+00 1 0.9434 : 805326b: mov %eax,0xc(%esp,1) : 805326f: mov $0x3f800000,%eax : 8053274: mov %eax,0x8(%esp,1) : 8053278: mov $0x3f800000,%eax : 805327d: mov %eax,0x4(%esp,1) : 8053281: mov $0x3f800000,%eax : 8053286: mov %eax,(%esp,1) : 8053289: mov 0x805a640,%eax 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 805328e: call *%eax :} 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053290: leave : 8053291: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08049817 : /* hash_get total: 62 0.1832 1 0.1124 1 0.7143 1 0.9434 */ :} : :hash_data_t * :hash_get (hash_t *hash, hash_data_t *data) :{ 1 0.0030 0 0.0e+00 1 0.7143 0 0.0e+00 : 8049817: push %ebp 24 0.0709 0 0.0e+00 0 0.0e+00 1 0.9434 : 8049818: mov %esp,%ebp : 804981a: sub $0x28,%esp : hash_value_t *value; : NUint32 i; : : i = hash->do_hash(hash, data) % hash->length; 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804981d: mov 0x8(%ebp),%edx : 8049820: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049823: mov %eax,0x4(%esp,1) : 8049827: mov 0x8(%ebp),%eax : 804982a: mov %eax,(%esp,1) : 804982d: mov 0x4(%edx),%eax : 8049830: call *%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049832: mov %eax,%edx : 8049834: mov 0x8(%ebp),%eax : 8049837: mov %eax,0xfffffff0(%ebp) : 804983a: mov %edx,%eax : 804983c: mov 0xfffffff0(%ebp),%ecx : 804983f: mov $0x0,%edx : 8049844: divl 0x10(%ecx) 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049847: mov %edx,0xfffffff8(%ebp) : : for (value = hash->values[i]; value; value = value->next) { : 804984a: mov 0x8(%ebp),%ecx : 804984d: mov 0xfffffff8(%ebp),%eax : 8049850: lea 0x0(,%eax,4),%edx : 8049857: mov 0x18(%ecx),%eax : 804985a: mov (%eax,%edx,1),%eax : 804985d: mov %eax,0xfffffffc(%ebp) : 8049860: cmpl $0x0,0xfffffffc(%ebp) : 8049864: jne 8049868 : 8049866: jmp 804989c : if (!hash_compare(hash, value->data, data)) { : 8049868: mov 0xc(%ebp),%eax 23 0.0680 1 0.1124 0 0.0e+00 0 0.0e+00 : 804986b: mov %eax,0x8(%esp,1) : 804986f: mov 0xfffffffc(%ebp),%eax : 8049872: mov (%eax),%eax : 8049874: mov %eax,0x4(%esp,1) : 8049878: mov 0x8(%ebp),%eax : 804987b: mov %eax,(%esp,1) : 804987e: call 804969a 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049883: test %eax,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049885: jne 8049891 : return value->data; : 8049887: mov 0xfffffffc(%ebp),%eax : 804988a: mov (%eax),%eax : 804988c: mov %eax,0xfffffff4(%ebp) : 804988f: jmp 80498a3 : 8049891: mov 0xfffffffc(%ebp),%eax : 8049894: mov 0x4(%eax),%eax : 8049897: mov %eax,0xfffffffc(%ebp) : 804989a: jmp 8049860 : } : } : : return NULL; : 804989c: movl $0x0,0xfffffff4(%ebp) :} : 80498a3: mov 0xfffffff4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80498a6: leave : 80498a7: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: : 08048c94 <.plt>: /* anonymous symbol from section .plt total: 47 0.1389 1 0.1124 2 1.4286 1 0.9434 */ : 8048c94: pushl 0x805a494 : 8048c9a: jmp *0x805a498 : 8048ca0: add %al,(%eax) : 8048ca2: add %al,(%eax) : 8048ca4: jmp *0x805a49c : 8048caa: push $0x0 : 8048caf: jmp 8048c94 <_init+0x18> 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048cb4: jmp *0x805a4a0 : 8048cba: push $0x8 : 8048cbf: jmp 8048c94 <_init+0x18> : 8048cc4: jmp *0x805a4a4 : 8048cca: push $0x10 : 8048ccf: jmp 8048c94 <_init+0x18> : 8048cd4: jmp *0x805a4a8 : 8048cda: push $0x18 : 8048cdf: jmp 8048c94 <_init+0x18> : 8048ce4: jmp *0x805a4ac : 8048cea: push $0x20 : 8048cef: jmp 8048c94 <_init+0x18> : 8048cf4: jmp *0x805a4b0 : 8048cfa: push $0x28 : 8048cff: jmp 8048c94 <_init+0x18> : 8048d04: jmp *0x805a4b4 : 8048d0a: push $0x30 : 8048d0f: jmp 8048c94 <_init+0x18> : 8048d14: jmp *0x805a4b8 : 8048d1a: push $0x38 : 8048d1f: jmp 8048c94 <_init+0x18> : 8048d24: jmp *0x805a4bc : 8048d2a: push $0x40 : 8048d2f: jmp 8048c94 <_init+0x18> : 8048d34: jmp *0x805a4c0 : 8048d3a: push $0x48 : 8048d3f: jmp 8048c94 <_init+0x18> : 8048d44: jmp *0x805a4c4 : 8048d4a: push $0x50 : 8048d4f: jmp 8048c94 <_init+0x18> : 8048d54: jmp *0x805a4c8 : 8048d5a: push $0x58 : 8048d5f: jmp 8048c94 <_init+0x18> : 8048d64: jmp *0x805a4cc : 8048d6a: push $0x60 : 8048d6f: jmp 8048c94 <_init+0x18> : 8048d74: jmp *0x805a4d0 : 8048d7a: push $0x68 : 8048d7f: jmp 8048c94 <_init+0x18> : 8048d84: jmp *0x805a4d4 : 8048d8a: push $0x70 : 8048d8f: jmp 8048c94 <_init+0x18> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048d94: jmp *0x805a4d8 : 8048d9a: push $0x78 : 8048d9f: jmp 8048c94 <_init+0x18> : 8048da4: jmp *0x805a4dc : 8048daa: push $0x80 : 8048daf: jmp 8048c94 <_init+0x18> : 8048db4: jmp *0x805a4e0 : 8048dba: push $0x88 : 8048dbf: jmp 8048c94 <_init+0x18> : 8048dc4: jmp *0x805a4e4 : 8048dca: push $0x90 : 8048dcf: jmp 8048c94 <_init+0x18> : 8048dd4: jmp *0x805a4e8 : 8048dda: push $0x98 : 8048ddf: jmp 8048c94 <_init+0x18> : 8048de4: jmp *0x805a4ec : 8048dea: push $0xa0 : 8048def: jmp 8048c94 <_init+0x18> : 8048df4: jmp *0x805a4f0 : 8048dfa: push $0xa8 : 8048dff: jmp 8048c94 <_init+0x18> : 8048e04: jmp *0x805a4f4 : 8048e0a: push $0xb0 : 8048e0f: jmp 8048c94 <_init+0x18> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048e14: jmp *0x805a4f8 : 8048e1a: push $0xb8 : 8048e1f: jmp 8048c94 <_init+0x18> 6 0.0177 0 0.0e+00 0 0.0e+00 1 0.9434 : 8048e24: jmp *0x805a4fc : 8048e2a: push $0xc0 : 8048e2f: jmp 8048c94 <_init+0x18> : 8048e34: jmp *0x805a500 : 8048e3a: push $0xc8 : 8048e3f: jmp 8048c94 <_init+0x18> : 8048e44: jmp *0x805a504 : 8048e4a: push $0xd0 : 8048e4f: jmp 8048c94 <_init+0x18> : 8048e54: jmp *0x805a508 : 8048e5a: push $0xd8 : 8048e5f: jmp 8048c94 <_init+0x18> 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8048e64: jmp *0x805a50c : 8048e6a: push $0xe0 : 8048e6f: jmp 8048c94 <_init+0x18> : 8048e74: jmp *0x805a510 : 8048e7a: push $0xe8 : 8048e7f: jmp 8048c94 <_init+0x18> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048e84: jmp *0x805a514 : 8048e8a: push $0xf0 : 8048e8f: jmp 8048c94 <_init+0x18> : 8048e94: jmp *0x805a518 : 8048e9a: push $0xf8 : 8048e9f: jmp 8048c94 <_init+0x18> : 8048ea4: jmp *0x805a51c : 8048eaa: push $0x100 : 8048eaf: jmp 8048c94 <_init+0x18> : 8048eb4: jmp *0x805a520 : 8048eba: push $0x108 : 8048ebf: jmp 8048c94 <_init+0x18> : 8048ec4: jmp *0x805a524 : 8048eca: push $0x110 : 8048ecf: jmp 8048c94 <_init+0x18> 8 0.0236 0 0.0e+00 1 0.7143 0 0.0e+00 : 8048ed4: jmp *0x805a528 : 8048eda: push $0x118 : 8048edf: jmp 8048c94 <_init+0x18> : 8048ee4: jmp *0x805a52c : 8048eea: push $0x120 : 8048eef: jmp 8048c94 <_init+0x18> : 8048ef4: jmp *0x805a530 : 8048efa: push $0x128 : 8048eff: jmp 8048c94 <_init+0x18> : 8048f04: jmp *0x805a534 : 8048f0a: push $0x130 : 8048f0f: jmp 8048c94 <_init+0x18> 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048f14: jmp *0x805a538 : 8048f1a: push $0x138 : 8048f1f: jmp 8048c94 <_init+0x18> : 8048f24: jmp *0x805a53c : 8048f2a: push $0x140 : 8048f2f: jmp 8048c94 <_init+0x18> : 8048f34: jmp *0x805a540 : 8048f3a: push $0x148 : 8048f3f: jmp 8048c94 <_init+0x18> 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048f44: jmp *0x805a544 : 8048f4a: push $0x150 : 8048f4f: jmp 8048c94 <_init+0x18> 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048f54: jmp *0x805a548 : 8048f5a: push $0x158 : 8048f5f: jmp 8048c94 <_init+0x18> : 8048f64: jmp *0x805a54c : 8048f6a: push $0x160 : 8048f6f: jmp 8048c94 <_init+0x18> : 8048f74: jmp *0x805a550 : 8048f7a: push $0x168 : 8048f7f: jmp 8048c94 <_init+0x18> : 8048f84: jmp *0x805a554 : 8048f8a: push $0x170 : 8048f8f: jmp 8048c94 <_init+0x18> : 8048f94: jmp *0x805a558 : 8048f9a: push $0x178 : 8048f9f: jmp 8048c94 <_init+0x18> : 8048fa4: jmp *0x805a55c 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048faa: push $0x180 : 8048faf: jmp 8048c94 <_init+0x18> : 8048fb4: jmp *0x805a560 : 8048fba: push $0x188 : 8048fbf: jmp 8048c94 <_init+0x18> 4 0.0118 1 0.1124 0 0.0e+00 0 0.0e+00 : 8048fc4: jmp *0x805a564 : 8048fca: push $0x190 : 8048fcf: jmp 8048c94 <_init+0x18> : 8048fd4: jmp *0x805a568 : 8048fda: push $0x198 : 8048fdf: jmp 8048c94 <_init+0x18> : 8048fe4: jmp *0x805a56c : 8048fea: push $0x1a0 : 8048fef: jmp 8048c94 <_init+0x18> 10 0.0295 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8048ff4: jmp *0x805a570 : 8048ffa: push $0x1a8 : 8048fff: jmp 8048c94 <_init+0x18> : 8049004: jmp *0x805a574 : 804900a: push $0x1b0 : 804900f: jmp 8048c94 <_init+0x18> :Disassembly of section .text: :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08053292 : /* R_DrawView total: 43 0.1271 0 0.0e+00 2 1.4286 2 1.8868 */ : qglColor4f(1,1,1,1); :} : :void R_DrawView(void) :{ 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8053292: push %ebp 8 0.0236 0 0.0e+00 0 0.0e+00 2 1.8868 : 8053293: mov %esp,%ebp : 8053295: sub $0x8,%esp : R_SetupView(); : 8053298: call 80530fe : R_DrawSky(); : 805329d: call 80524ba : R_DrawMap(); : 80532a2: call 80524ce : ParticleEffect_Draw (); 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80532a7: call 805545b :} : 80532ac: leave 29 0.0857 0 0.0e+00 2 1.4286 0 0.0e+00 : 80532ad: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804d1a2 : /* Matrix4x4_CreateTranslate total: 42 0.1241 0 0.0e+00 5 3.5714 0 0.0e+00 */ : out->m[3][3]=1.0f; :} : :void Matrix4x4_CreateTranslate(matrix4x4_t *out, double x, double y, double z) :{ 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d1a2: push %ebp 10 0.0295 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d1a3: mov %esp,%ebp : 804d1a5: sub $0x18,%esp : 804d1a8: fldl 0xc(%ebp) : 804d1ab: fstpl 0xfffffff8(%ebp) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d1ae: fldl 0x14(%ebp) : 804d1b1: fstpl 0xfffffff0(%ebp) : 804d1b4: fldl 0x1c(%ebp) : 804d1b7: fstpl 0xffffffe8(%ebp) : out->m[0][0]=1.0f; : 804d1ba: mov 0x8(%ebp),%eax 5 0.0148 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d1bd: fld1 : 804d1bf: fstpl (%eax) : out->m[0][1]=0.0f; 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d1c1: mov 0x8(%ebp),%eax : 804d1c4: fldz : 804d1c6: fstpl 0x8(%eax) : out->m[0][2]=0.0f; : 804d1c9: mov 0x8(%ebp),%eax : 804d1cc: fldz 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d1ce: fstpl 0x10(%eax) : out->m[0][3]=x; : 804d1d1: mov 0x8(%ebp),%eax : 804d1d4: fldl 0xfffffff8(%ebp) : 804d1d7: fstpl 0x18(%eax) : out->m[1][0]=0.0f; : 804d1da: mov 0x8(%ebp),%eax : 804d1dd: fldz : 804d1df: fstpl 0x20(%eax) : out->m[1][1]=1.0f; : 804d1e2: mov 0x8(%ebp),%eax : 804d1e5: fld1 : 804d1e7: fstpl 0x28(%eax) : out->m[1][2]=0.0f; : 804d1ea: mov 0x8(%ebp),%eax : 804d1ed: fldz : 804d1ef: fstpl 0x30(%eax) : out->m[1][3]=y; : 804d1f2: mov 0x8(%ebp),%eax : 804d1f5: fldl 0xfffffff0(%ebp) : 804d1f8: fstpl 0x38(%eax) : out->m[2][0]=0.0f; : 804d1fb: mov 0x8(%ebp),%eax : 804d1fe: fldz : 804d200: fstpl 0x40(%eax) : out->m[2][1]=0.0f; 10 0.0295 0 0.0e+00 1 0.7143 0 0.0e+00 : 804d203: mov 0x8(%ebp),%eax : 804d206: fldz : 804d208: fstpl 0x48(%eax) : out->m[2][2]=1.0f; 0 0.0e+00 0 0.0e+00 2 1.4286 0 0.0e+00 : 804d20b: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d20e: fld1 : 804d210: fstpl 0x50(%eax) : out->m[2][3]=z; : 804d213: mov 0x8(%ebp),%eax : 804d216: fldl 0xffffffe8(%ebp) : 804d219: fstpl 0x58(%eax) : out->m[3][0]=0.0f; : 804d21c: mov 0x8(%ebp),%eax : 804d21f: fldz 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d221: fstpl 0x60(%eax) : out->m[3][1]=0.0f; : 804d224: mov 0x8(%ebp),%eax : 804d227: fldz : 804d229: fstpl 0x68(%eax) : out->m[3][2]=0.0f; : 804d22c: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d22f: fldz : 804d231: fstpl 0x70(%eax) : out->m[3][3]=1.0f; : 804d234: mov 0x8(%ebp),%eax : 804d237: fld1 : 804d239: fstpl 0x78(%eax) :} : 804d23c: leave 7 0.0207 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804d23d: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080524ba : /* R_DrawSky total: 42 0.1241 0 0.0e+00 2 1.4286 2 1.8868 */ :int DWVideo_FullScreen = false; :SDL_Surface *DWVideo_Surface = NULL; : :void R_DrawSky(void) :{ 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524ba: push %ebp 29 0.0857 0 0.0e+00 1 0.7143 0 0.0e+00 : 80524bb: mov %esp,%ebp 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524bd: sub $0x8,%esp : R_SetMatrix(&r_skymatrix); : 80524c0: movl $0x89df4a0,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 80524c7: call 8052475 :} 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 80524cc: leave 2 0.0059 0 0.0e+00 1 0.7143 0 0.0e+00 : 80524cd: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080521c2 : /* Texture_Bind total: 42 0.1241 0 0.0e+00 1 0.7143 1 0.9434 */ :} : :void :Texture_Bind (char *name) :{ : 80521c2: push %ebp 22 0.0650 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80521c3: mov %esp,%ebp : 80521c5: sub $0x18,%esp : CheckGLError(); : 80521c8: mov 0x805a6c0,%eax : 80521cd: call *%eax : 80521cf: mov %eax,0x89df2c8 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80521d4: mov 0x89df2c8,%eax : 80521d9: test %eax,%eax : 80521db: je 80521fa : 80521dd: movl $0x94,0x8(%esp,1) : 80521e5: movl $0x8058b6c,0x4(%esp,1) : 80521ed: mov 0x89df2c8,%eax : 80521f2: mov %eax,(%esp,1) : 80521f5: call 8051860 : qglBindTexture (GL_TEXTURE_2D, Texture_Get (name)); : 80521fa: mov 0x8(%ebp),%eax 8 0.0236 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80521fd: mov %eax,(%esp,1) : 8052200: call 8051b06 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052205: mov %eax,0x4(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052209: movl $0xde1,(%esp,1) : 8052210: mov 0x805a628,%eax : 8052215: call *%eax : CheckGLError(); 0 0.0e+00 0 0.0e+00 1 0.7143 0 0.0e+00 : 8052217: mov 0x805a6c0,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805221c: call *%eax : 805221e: mov %eax,0x89df2c8 : 8052223: mov 0x89df2c8,%eax : 8052228: test %eax,%eax : 805222a: je 8052249 : 805222c: movl $0x96,0x8(%esp,1) : 8052234: movl $0x8058b6c,0x4(%esp,1) : 805223c: mov 0x89df2c8,%eax : 8052241: mov %eax,(%esp,1) : 8052244: call 8051860 :} : 8052249: leave 7 0.0207 0 0.0e+00 0 0.0e+00 1 0.9434 : 805224a: ret : 805224b: nop :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804969a : /* hash_compare total: 30 0.0886 0 0.0e+00 2 1.4286 0 0.0e+00 */ :} : :static Nbool :hash_compare (hash_t *hash, hash_data_t *one, hash_data_t *two) :{ : 804969a: push %ebp : 804969b: mov %esp,%ebp : 804969d: sub $0x18,%esp : if ((one->name_len - two->name_len) || String_Compare(one->name, two->name)) : 80496a0: mov 0xc(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80496a3: mov 0x10(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80496a6: mov 0x4(%eax),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80496a9: cmp 0x4(%edx),%eax : 80496ac: jne 80496ca 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80496ae: mov 0x10(%ebp),%eax : 80496b1: mov (%eax),%eax : 80496b3: mov %eax,0x4(%esp,1) : 80496b7: mov 0xc(%ebp),%eax : 80496ba: mov (%eax),%eax : 80496bc: mov %eax,(%esp,1) 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80496bf: call 804b976 : 80496c4: test %eax,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80496c6: jne 80496ca : 80496c8: jmp 80496d3 : return false; : 80496ca: movl $0x0,0xfffffffc(%ebp) : 80496d1: jmp 8049702 : : if (hash->do_compare) : 80496d3: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80496d6: cmpl $0x0,(%eax) : 80496d9: je 80496fb : return hash->do_compare(hash, one, two); : 80496db: mov 0x8(%ebp),%edx : 80496de: mov 0x10(%ebp),%eax : 80496e1: mov %eax,0x8(%esp,1) : 80496e5: mov 0xc(%ebp),%eax : 80496e8: mov %eax,0x4(%esp,1) : 80496ec: mov 0x8(%ebp),%eax : 80496ef: mov %eax,(%esp,1) : 80496f2: mov (%edx),%eax : 80496f4: call *%eax : 80496f6: mov %eax,0xfffffffc(%ebp) : 80496f9: jmp 8049702 : : return false; : 80496fb: movl $0x0,0xfffffffc(%ebp) :} 12 0.0355 0 0.0e+00 2 1.4286 0 0.0e+00 : 8049702: mov 0xfffffffc(%ebp),%eax : 8049705: leave : 8049706: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804dcbd : /* Matrix4x4_ConcatRotate total: 27 0.0798 0 0.0e+00 0 0.0e+00 1 0.9434 */ :} : :// FIXME: optimize :void Matrix4x4_ConcatRotate(matrix4x4_t *out, double angle, double x, double y, double z) :{ : 804dcbd: push %ebp 1 0.0030 0 0.0e+00 0 0.0e+00 1 0.9434 : 804dcbe: mov %esp,%ebp : 804dcc0: push %edi : 804dcc1: push %esi : 804dcc2: sub $0x150,%esp : 804dcc8: fldl 0xc(%ebp) : 804dccb: fstpl 0xfffffff0(%ebp) : 804dcce: fldl 0x14(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dcd1: fstpl 0xffffffe8(%ebp) : 804dcd4: fldl 0x1c(%ebp) : 804dcd7: fstpl 0xffffffe0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dcda: fldl 0x24(%ebp) : 804dcdd: fstpl 0xffffffd8(%ebp) : matrix4x4_t base, temp; : base = *out; : 804dce0: mov 0x8(%ebp),%eax : 804dce3: lea 0xffffff58(%ebp),%edi : 804dce9: mov %eax,%esi : 804dceb: mov $0x80,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dcf0: cld : 804dcf1: mov %eax,%ecx : 804dcf3: shr $0x2,%ecx 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dcf6: repz movsl %ds:(%esi),%es:(%edi) : Matrix4x4_CreateRotate(&temp, angle, x, y, z); 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dcf8: fldl 0xffffffd8(%ebp) : 804dcfb: fstpl 0x1c(%esp,1) 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dcff: fldl 0xffffffe0(%ebp) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dd02: fstpl 0x14(%esp,1) : 804dd06: fldl 0xffffffe8(%ebp) : 804dd09: fstpl 0xc(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dd0d: fldl 0xfffffff0(%ebp) : 804dd10: fstpl 0x4(%esp,1) : 804dd14: lea 0xfffffed8(%ebp),%eax : 804dd1a: mov %eax,(%esp,1) : 804dd1d: call 804d23e : Matrix4x4_Concat(out, &base, &temp); : 804dd22: lea 0xfffffed8(%ebp),%eax 6 0.0177 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dd28: mov %eax,0x8(%esp,1) : 804dd2c: lea 0xffffff58(%ebp),%eax : 804dd32: mov %eax,0x4(%esp,1) : 804dd36: mov 0x8(%ebp),%eax : 804dd39: mov %eax,(%esp,1) : 804dd3c: call 804c8eb :} : 804dd41: add $0x150,%esp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804dd47: pop %esi : 804dd48: pop %edi : 804dd49: pop %ebp : 804dd4a: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08049f4e : /* DW_Time total: 26 0.0768 2 0.2247 1 0.7143 0 0.0e+00 */ : } :} : :double DW_Time(void) :{ 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049f4e: push %ebp 18 0.0532 2 0.2247 1 0.7143 0 0.0e+00 : 8049f4f: mov %esp,%ebp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049f51: sub $0x8,%esp : int curtime; : static int oldtime = 0; : static double doubletime = 0; : curtime = SDL_GetTicks(); : 8049f54: call 8048d84 <_init+0x108> : 8049f59: mov %eax,0xfffffffc(%ebp) : if (curtime >= oldtime) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049f5c: mov 0xfffffffc(%ebp),%eax : 8049f5f: cmp 0x805a59c,%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049f65: jl 8049f88 : doubletime += curtime - oldtime; : 8049f67: mov 0x805a59c,%edx : 8049f6d: mov 0xfffffffc(%ebp),%eax : 8049f70: sub %edx,%eax : 8049f72: push %eax : 8049f73: fildl (%esp,1) : 8049f76: lea 0x4(%esp,1),%esp : 8049f7a: fldl 0x805a5a0 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049f80: faddp %st,%st(1) : 8049f82: fstpl 0x805a5a0 : oldtime = curtime; : 8049f88: mov 0xfffffffc(%ebp),%eax : 8049f8b: mov %eax,0x805a59c : return doubletime / 1000.0; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049f90: fldl 0x805a5a0 : 8049f96: fldl 0x8057ab0 : 8049f9c: fdivrp %st,%st(1) :} : 8049f9e: leave 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8049f9f: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804bf37 : /* Image_LoadTargaRGBA total: 25 0.0739 0 0.0e+00 0 0.0e+00 0 0.0e+00 */ : return String_APrintf(Global_Zone, "LoadTarga error: %s\nTargaHeader:\nuint8 id_length = %i;\nuint8 colormap_type = %i;\nuint8 image_type = %i;\nuint16 colormap_index = %i;\nuint16 colormap_length = %i;\nuint8 colormap_size = %i;\nuint16 x_origin = %i;\nuint16 y_origin = %i;\nuint16 width = %i;\nuint16 height = %i;\nuint8 pixel_size = %i;\nuint8 attributes = %i;\n", message, t->id_length, t->colormap_type, t->image_type, t->colormap_index, t->colormap_length, t->colormap_size, t->x_origin, t->y_origin, t->width, t->height, t->pixel_size, t->attributes); :} : :NUint8 *Image_LoadTargaRGBA(const NUint8 *f, Nsize filesize, NUint *outwidth, NUint *outheight, char **errormessage) :{ : 804bf37: push %ebp : 804bf38: mov %esp,%ebp : 804bf3a: sub $0x488,%esp : NUint x, y, row_inc, compressed, readpixelcount, red, green, blue, alpha, runlen; : NUint8 *pixbuf, *outpixels; : const NUint8 *fin, *enddata; : TargaHeader targa_header; : NUint8 palette[256*4], *p; : if (filesize < 19) : 804bf40: cmpl $0x12,0xc(%ebp) : 804bf44: ja 804bf71 : { : *errormessage = String_APrintf(Global_Zone, "LoadTarga error: file too small to be a targa image\n"); : 804bf46: movl $0x8058080,0x4(%esp,1) : 804bf4e: mov 0x89df2a0,%eax : 804bf53: mov %eax,(%esp,1) : 804bf56: call 804b9f6 : 804bf5b: mov %eax,%edx : 804bf5d: mov 0x18(%ebp),%eax : 804bf60: mov %edx,(%eax) : return NULL; : 804bf62: movl $0x0,0xfffffb90(%ebp) : 804bf6c: jmp 804c673 : } : enddata = f + filesize; : 804bf71: mov 0xc(%ebp),%eax : 804bf74: add 0x8(%ebp),%eax : 804bf77: mov %eax,0xffffffc0(%ebp) : targa_header.id_length = f[0]; : 804bf7a: mov 0x8(%ebp),%eax : 804bf7d: movzbl (%eax),%eax : 804bf80: mov %al,0xffffff98(%ebp) : targa_header.colormap_type = f[1]; : 804bf83: mov 0x8(%ebp),%eax : 804bf86: inc %eax : 804bf87: movzbl (%eax),%eax : 804bf8a: mov %al,0xffffff99(%ebp) : targa_header.image_type = f[2]; : 804bf8d: mov 0x8(%ebp),%eax : 804bf90: add $0x2,%eax : 804bf93: movzbl (%eax),%eax : 804bf96: mov %al,0xffffff9a(%ebp) : targa_header.colormap_index = f[3] + f[4] * 256; : 804bf99: mov 0x8(%ebp),%eax : 804bf9c: add $0x3,%eax : 804bf9f: movzbw (%eax),%dx : 804bfa3: mov 0x8(%ebp),%eax : 804bfa6: add $0x4,%eax : 804bfa9: movzbl (%eax),%eax : 804bfac: shl $0x8,%eax : 804bfaf: lea (%eax,%edx,1),%eax : 804bfb2: mov %ax,0xffffff9c(%ebp) : targa_header.colormap_length = f[5] + f[6] * 256; : 804bfb6: mov 0x8(%ebp),%eax : 804bfb9: add $0x5,%eax : 804bfbc: movzbw (%eax),%dx : 804bfc0: mov 0x8(%ebp),%eax : 804bfc3: add $0x6,%eax : 804bfc6: movzbl (%eax),%eax : 804bfc9: shl $0x8,%eax : 804bfcc: lea (%eax,%edx,1),%eax : 804bfcf: mov %ax,0xffffff9e(%ebp) : targa_header.colormap_size = f[7]; : 804bfd3: mov 0x8(%ebp),%eax : 804bfd6: add $0x7,%eax : 804bfd9: movzbl (%eax),%eax : 804bfdc: mov %al,0xffffffa0(%ebp) : targa_header.x_origin = f[8] + f[9] * 256; : 804bfdf: mov 0x8(%ebp),%eax : 804bfe2: add $0x8,%eax : 804bfe5: movzbw (%eax),%dx : 804bfe9: mov 0x8(%ebp),%eax : 804bfec: add $0x9,%eax : 804bfef: movzbl (%eax),%eax : 804bff2: shl $0x8,%eax : 804bff5: lea (%eax,%edx,1),%eax : 804bff8: mov %ax,0xffffffa2(%ebp) : targa_header.y_origin = f[10] + f[11] * 256; : 804bffc: mov 0x8(%ebp),%eax : 804bfff: add $0xa,%eax : 804c002: movzbw (%eax),%dx : 804c006: mov 0x8(%ebp),%eax : 804c009: add $0xb,%eax : 804c00c: movzbl (%eax),%eax : 804c00f: shl $0x8,%eax : 804c012: lea (%eax,%edx,1),%eax : 804c015: mov %ax,0xffffffa4(%ebp) : targa_header.width = f[12] + f[13] * 256; : 804c019: mov 0x8(%ebp),%eax : 804c01c: add $0xc,%eax : 804c01f: movzbw (%eax),%dx : 804c023: mov 0x8(%ebp),%eax : 804c026: add $0xd,%eax : 804c029: movzbl (%eax),%eax : 804c02c: shl $0x8,%eax : 804c02f: lea (%eax,%edx,1),%eax : 804c032: mov %ax,0xffffffa6(%ebp) : targa_header.height = f[14] + f[15] * 256; : 804c036: mov 0x8(%ebp),%eax : 804c039: add $0xe,%eax : 804c03c: movzbw (%eax),%dx : 804c040: mov 0x8(%ebp),%eax : 804c043: add $0xf,%eax : 804c046: movzbl (%eax),%eax : 804c049: shl $0x8,%eax : 804c04c: lea (%eax,%edx,1),%eax : 804c04f: mov %ax,0xffffffa8(%ebp) : targa_header.pixel_size = f[16]; : 804c053: mov 0x8(%ebp),%eax : 804c056: add $0x10,%eax : 804c059: movzbl (%eax),%eax : 804c05c: mov %al,0xffffffaa(%ebp) : targa_header.attributes = f[17]; : 804c05f: mov 0x8(%ebp),%eax : 804c062: add $0x11,%eax : 804c065: movzbl (%eax),%eax : 804c068: mov %al,0xffffffab(%ebp) : if (targa_header.width > 4096 || targa_header.height > 4096 || targa_header.width <= 0 || targa_header.height <= 0) : 804c06b: cmpw $0x1000,0xffffffa6(%ebp) : 804c071: ja 804c089 : 804c073: cmpw $0x1000,0xffffffa8(%ebp) : 804c079: ja 804c089 : 804c07b: cmpw $0x0,0xffffffa6(%ebp) : 804c080: je 804c089 : 804c082: cmpw $0x0,0xffffffa8(%ebp) : 804c087: jne 804c0b2 : { : *errormessage = TargaErrorMessage(&targa_header, "invalid image size"); : 804c089: movl $0x80580b5,0x4(%esp,1) : 804c091: lea 0xffffff98(%ebp),%eax : 804c094: mov %eax,(%esp,1) : 804c097: call 804be90 : 804c09c: mov %eax,%edx : 804c09e: mov 0x18(%ebp),%eax : 804c0a1: mov %edx,(%eax) : return NULL; : 804c0a3: movl $0x0,0xfffffb90(%ebp) : 804c0ad: jmp 804c673 : } : fin = f + 18; : 804c0b2: mov 0x8(%ebp),%eax : 804c0b5: add $0x12,%eax : 804c0b8: mov %eax,0xffffffc4(%ebp) : if (targa_header.id_length != 0) : 804c0bb: cmpb $0x0,0xffffff98(%ebp) : 804c0bf: je 804c0ca : fin += targa_header.id_length; // skip comment : 804c0c1: movzbl 0xffffff98(%ebp),%edx : 804c0c5: lea 0xffffffc4(%ebp),%eax : 804c0c8: add %edx,(%eax) : if (targa_header.image_type == 2 || targa_header.image_type == 10) : 804c0ca: cmpb $0x2,0xffffff9a(%ebp) : 804c0ce: je 804c0d8 : 804c0d0: cmpb $0xa,0xffffff9a(%ebp) : 804c0d4: je 804c0d8 : 804c0d6: jmp 804c115 : { : if (targa_header.pixel_size != 24 && targa_header.pixel_size != 32) : 804c0d8: cmpb $0x18,0xffffffaa(%ebp) : 804c0dc: je 804c335 : 804c0e2: cmpb $0x20,0xffffffaa(%ebp) : 804c0e6: je 804c335 : { : *errormessage = TargaErrorMessage(&targa_header, "only 24bit and 32bit pixel sizes supported for type 2 and type 10 images"); : 804c0ec: movl $0x80580e0,0x4(%esp,1) : 804c0f4: lea 0xffffff98(%ebp),%eax : 804c0f7: mov %eax,(%esp,1) : 804c0fa: call 804be90 : 804c0ff: mov %eax,%edx : 804c101: mov 0x18(%ebp),%eax : 804c104: mov %edx,(%eax) : return NULL; : 804c106: movl $0x0,0xfffffb90(%ebp) : 804c110: jmp 804c673 : } : } : else if (targa_header.image_type == 1 || targa_header.image_type == 9) : 804c115: cmpb $0x1,0xffffff9a(%ebp) : 804c119: je 804c126 : 804c11b: cmpb $0x9,0xffffff9a(%ebp) : 804c11f: je 804c126 : 804c121: jmp 804c2cf : { : if (targa_header.pixel_size != 8) : 804c126: cmpb $0x8,0xffffffaa(%ebp) : 804c12a: je 804c155 : { : *errormessage = TargaErrorMessage(&targa_header, "only 8bit pixel size for type 1, 3, 9, and 11 images supported"); : 804c12c: movl $0x8058140,0x4(%esp,1) : 804c134: lea 0xffffff98(%ebp),%eax : 804c137: mov %eax,(%esp,1) : 804c13a: call 804be90 : 804c13f: mov %eax,%edx : 804c141: mov 0x18(%ebp),%eax : 804c144: mov %edx,(%eax) : return NULL; : 804c146: movl $0x0,0xfffffb90(%ebp) : 804c150: jmp 804c673 : } : if (targa_header.colormap_length != 256) : 804c155: cmpw $0x100,0xffffff9e(%ebp) : 804c15b: je 804c186 : { : *errormessage = TargaErrorMessage(&targa_header, "only 256 colormap_length supported"); : 804c15d: movl $0x8058180,0x4(%esp,1) : 804c165: lea 0xffffff98(%ebp),%eax : 804c168: mov %eax,(%esp,1) : 804c16b: call 804be90 : 804c170: mov %eax,%edx : 804c172: mov 0x18(%ebp),%eax : 804c175: mov %edx,(%eax) : return NULL; : 804c177: movl $0x0,0xfffffb90(%ebp) : 804c181: jmp 804c673 : } : if (targa_header.colormap_index) : 804c186: cmpw $0x0,0xffffff9c(%ebp) : 804c18b: je 804c1b6 : { : *errormessage = TargaErrorMessage(&targa_header, "colormap_index not supported"); : 804c18d: movl $0x80581a3,0x4(%esp,1) : 804c195: lea 0xffffff98(%ebp),%eax : 804c198: mov %eax,(%esp,1) : 804c19b: call 804be90 : 804c1a0: mov %eax,%edx : 804c1a2: mov 0x18(%ebp),%eax : 804c1a5: mov %edx,(%eax) : return NULL; : 804c1a7: movl $0x0,0xfffffb90(%ebp) : 804c1b1: jmp 804c673 : } : if (targa_header.colormap_size == 24) : 804c1b6: cmpb $0x18,0xffffffa0(%ebp) : 804c1ba: jne 804c228 : { : for (x = 0;x < targa_header.colormap_length;x++) : 804c1bc: movl $0x0,0xfffffff4(%ebp) : 804c1c3: movzwl 0xffffff9e(%ebp),%eax : 804c1c7: cmp %eax,0xfffffff4(%ebp) : 804c1ca: jb 804c1d1 : 804c1cc: jmp 804c335 : { : palette[x*4+2] = *fin++; : 804c1d1: mov 0xfffffff4(%ebp),%ecx : 804c1d4: mov 0xffffffc4(%ebp),%eax : 804c1d7: mov %eax,%edx : 804c1d9: lea 0xffffffc4(%ebp),%eax : 804c1dc: incl (%eax) : 804c1de: movzbl (%edx),%eax : 804c1e1: mov %al,0xfffffb9a(%ebp,%ecx,4) : palette[x*4+1] = *fin++; : 804c1e8: mov 0xfffffff4(%ebp),%ecx : 804c1eb: mov 0xffffffc4(%ebp),%eax : 804c1ee: mov %eax,%edx : 804c1f0: lea 0xffffffc4(%ebp),%eax : 804c1f3: incl (%eax) : 804c1f5: movzbl (%edx),%eax : 804c1f8: mov %al,0xfffffb99(%ebp,%ecx,4) : palette[x*4+0] = *fin++; : 804c1ff: mov 0xfffffff4(%ebp),%ecx : 804c202: mov 0xffffffc4(%ebp),%eax : 804c205: mov %eax,%edx : 804c207: lea 0xffffffc4(%ebp),%eax : 804c20a: incl (%eax) : 804c20c: movzbl (%edx),%eax : 804c20f: mov %al,0xfffffb98(%ebp,%ecx,4) : palette[x*4+3] = 255; : 804c216: mov 0xfffffff4(%ebp),%eax : 804c219: movb $0xff,0xfffffb9b(%ebp,%eax,4) : 804c221: lea 0xfffffff4(%ebp),%eax : 804c224: incl (%eax) : 804c226: jmp 804c1c3 : } : } : else if (targa_header.colormap_size == 32) : 804c228: cmpb $0x20,0xffffffa0(%ebp) : 804c22c: jne 804c2a6 : { : for (x = 0;x < targa_header.colormap_length;x++) : 804c22e: movl $0x0,0xfffffff4(%ebp) : 804c235: movzwl 0xffffff9e(%ebp),%eax : 804c239: cmp %eax,0xfffffff4(%ebp) : 804c23c: jb 804c243 : 804c23e: jmp 804c335 : { : palette[x*4+2] = *fin++; : 804c243: mov 0xfffffff4(%ebp),%ecx : 804c246: mov 0xffffffc4(%ebp),%eax : 804c249: mov %eax,%edx : 804c24b: lea 0xffffffc4(%ebp),%eax : 804c24e: incl (%eax) : 804c250: movzbl (%edx),%eax : 804c253: mov %al,0xfffffb9a(%ebp,%ecx,4) : palette[x*4+1] = *fin++; : 804c25a: mov 0xfffffff4(%ebp),%ecx : 804c25d: mov 0xffffffc4(%ebp),%eax : 804c260: mov %eax,%edx : 804c262: lea 0xffffffc4(%ebp),%eax : 804c265: incl (%eax) : 804c267: movzbl (%edx),%eax : 804c26a: mov %al,0xfffffb99(%ebp,%ecx,4) : palette[x*4+0] = *fin++; : 804c271: mov 0xfffffff4(%ebp),%ecx : 804c274: mov 0xffffffc4(%ebp),%eax : 804c277: mov %eax,%edx : 804c279: lea 0xffffffc4(%ebp),%eax : 804c27c: incl (%eax) : 804c27e: movzbl (%edx),%eax : 804c281: mov %al,0xfffffb98(%ebp,%ecx,4) : palette[x*4+3] = *fin++; : 804c288: mov 0xfffffff4(%ebp),%ecx : 804c28b: mov 0xffffffc4(%ebp),%eax : 804c28e: mov %eax,%edx : 804c290: lea 0xffffffc4(%ebp),%eax : 804c293: incl (%eax) : 804c295: movzbl (%edx),%eax : 804c298: mov %al,0xfffffb9b(%ebp,%ecx,4) : 804c29f: lea 0xfffffff4(%ebp),%eax : 804c2a2: incl (%eax) : 804c2a4: jmp 804c235 : } : } : else : { : *errormessage = TargaErrorMessage(&targa_header, "only 32 and 24 bit colormap_size supported"); : 804c2a6: movl $0x80581c0,0x4(%esp,1) : 804c2ae: lea 0xffffff98(%ebp),%eax : 804c2b1: mov %eax,(%esp,1) : 804c2b4: call 804be90 : 804c2b9: mov %eax,%edx : 804c2bb: mov 0x18(%ebp),%eax : 804c2be: mov %edx,(%eax) : return NULL; : 804c2c0: movl $0x0,0xfffffb90(%ebp) : 804c2ca: jmp 804c673 : } : } : else if (targa_header.image_type == 3 || targa_header.image_type == 11) : 804c2cf: cmpb $0x3,0xffffff9a(%ebp) : 804c2d3: je 804c2dd : 804c2d5: cmpb $0xb,0xffffff9a(%ebp) : 804c2d9: je 804c2dd : 804c2db: jmp 804c30c : { : if (targa_header.pixel_size != 8) : 804c2dd: cmpb $0x8,0xffffffaa(%ebp) : 804c2e1: je 804c335 : { : *errormessage = TargaErrorMessage(&targa_header, "only 8bit pixel size for type 1, 3, 9, and 11 images supported"); : 804c2e3: movl $0x8058140,0x4(%esp,1) : 804c2eb: lea 0xffffff98(%ebp),%eax : 804c2ee: mov %eax,(%esp,1) : 804c2f1: call 804be90 : 804c2f6: mov %eax,%edx : 804c2f8: mov 0x18(%ebp),%eax : 804c2fb: mov %edx,(%eax) : return NULL; : 804c2fd: movl $0x0,0xfffffb90(%ebp) : 804c307: jmp 804c673 : } : } : else : { : *errormessage = TargaErrorMessage(&targa_header, "only type 1, 2, 3, 9, 10, and 11 targa RGB images supported"); : 804c30c: movl $0x8058200,0x4(%esp,1) : 804c314: lea 0xffffff98(%ebp),%eax : 804c317: mov %eax,(%esp,1) : 804c31a: call 804be90 : 804c31f: mov %eax,%edx : 804c321: mov 0x18(%ebp),%eax : 804c324: mov %edx,(%eax) : return NULL; : 804c326: movl $0x0,0xfffffb90(%ebp) : 804c330: jmp 804c673 : } : if (targa_header.attributes & 0x10) : 804c335: movzbl 0xffffffab(%ebp),%eax : 804c339: and $0x10,%eax : 804c33c: test %eax,%eax : 804c33e: je 804c369 : { : *errormessage = TargaErrorMessage(&targa_header, "origin must be in top left or bottom left, top right and bottom right are not supported"); : 804c340: movl $0x8058240,0x4(%esp,1) : 804c348: lea 0xffffff98(%ebp),%eax : 804c34b: mov %eax,(%esp,1) : 804c34e: call 804be90 : 804c353: mov %eax,%edx : 804c355: mov 0x18(%ebp),%eax : 804c358: mov %edx,(%eax) : return NULL; : 804c35a: movl $0x0,0xfffffb90(%ebp) : 804c364: jmp 804c673 : } : outpixels = Mem_Alloc(Global_Zone, targa_header.width * targa_header.height * 4); : 804c369: movl $0x81,0xc(%esp,1) : 804c371: movl $0x8058298,0x8(%esp,1) : 804c379: movzwl 0xffffffa6(%ebp),%edx : 804c37d: movzwl 0xffffffa8(%ebp),%eax : 804c381: imul %edx,%eax : 804c384: shl $0x2,%eax : 804c387: mov %eax,0x4(%esp,1) : 804c38b: mov 0x89df2a0,%eax : 804c390: mov %eax,(%esp,1) : 804c393: call 804b1e4 <_Mem_Alloc> : 804c398: mov %eax,0xffffffc8(%ebp) : if (!outpixels) : 804c39b: cmpl $0x0,0xffffffc8(%ebp) : 804c39f: jne 804c3ca : { : *errormessage = TargaErrorMessage(&targa_header, "not enough memory for image"); : 804c3a1: movl $0x80582a1,0x4(%esp,1) : 804c3a9: lea 0xffffff98(%ebp),%eax : 804c3ac: mov %eax,(%esp,1) : 804c3af: call 804be90 : 804c3b4: mov %eax,%edx : 804c3b6: mov 0x18(%ebp),%eax : 804c3b9: mov %edx,(%eax) : return NULL; : 804c3bb: movl $0x0,0xfffffb90(%ebp) : 804c3c5: jmp 804c673 : } : // If bit 5 of attributes isn't set, the image has been stored from bottom to top : if ((targa_header.attributes & 0x20) == 0) : 804c3ca: movzbl 0xffffffab(%ebp),%eax : 804c3ce: and $0x20,%eax : 804c3d1: test %eax,%eax : 804c3d3: jne 804c3fa : { : pixbuf = outpixels + (targa_header.height - 1)*targa_header.width*4; : 804c3d5: movzwl 0xffffffa8(%ebp),%eax : 804c3d9: shl $0x2,%eax : 804c3dc: lea 0xfffffffc(%eax),%edx : 804c3df: movzwl 0xffffffa6(%ebp),%eax : 804c3e3: imul %edx,%eax : 804c3e6: add 0xffffffc8(%ebp),%eax : 804c3e9: mov %eax,0xffffffcc(%ebp) : row_inc = -targa_header.width*4*2; : 804c3ec: movzwl 0xffffffa6(%ebp),%eax : 804c3f0: neg %eax : 804c3f2: shl $0x3,%eax : 804c3f5: mov %eax,0xffffffec(%ebp) : 804c3f8: jmp 804c407 : } : else : { : pixbuf = outpixels; : 804c3fa: mov 0xffffffc8(%ebp),%eax : 804c3fd: mov %eax,0xffffffcc(%ebp) : row_inc = 0; : 804c400: movl $0x0,0xffffffec(%ebp) : } : compressed = targa_header.image_type == 9 || targa_header.image_type == 10 || targa_header.image_type == 11; : 804c407: movl $0x0,0xffffffe8(%ebp) : 804c40e: cmpb $0x9,0xffffff9a(%ebp) : 804c412: je 804c422 : 804c414: cmpb $0xa,0xffffff9a(%ebp) : 804c418: je 804c422 : 804c41a: cmpb $0xb,0xffffff9a(%ebp) : 804c41e: je 804c422 : 804c420: jmp 804c429 : 804c422: movl $0x1,0xffffffe8(%ebp) : x = 0; : 804c429: movl $0x0,0xfffffff4(%ebp) : y = 0; : 804c430: movl $0x0,0xfffffff0(%ebp) : red = green = blue = alpha = 255; : 804c437: movl $0xff,0xffffffd4(%ebp) : 804c43e: movl $0xff,0xffffffd8(%ebp) : 804c445: movl $0xff,0xffffffdc(%ebp) : 804c44c: movl $0xff,0xffffffe0(%ebp) : while (y < targa_header.height) : 804c453: movzwl 0xffffffa8(%ebp),%eax : 804c457: cmp %eax,0xfffffff0(%ebp) : 804c45a: jb 804c461 : 804c45c: jmp 804c64c : { : // decoder is mostly the same whether it's compressed or not : readpixelcount = 1000000; : 804c461: movl $0xf4240,0xffffffe4(%ebp) : runlen = 1000000; : 804c468: movl $0xf4240,0xffffffd0(%ebp) : if (compressed && fin < enddata) : 804c46f: cmpl $0x0,0xffffffe8(%ebp) : 804c473: je 804c4a6 : 804c475: mov 0xffffffc4(%ebp),%eax : 804c478: cmp 0xffffffc0(%ebp),%eax : 804c47b: jae 804c4a6 : { : runlen = *fin++; : 804c47d: mov 0xffffffc4(%ebp),%eax : 804c480: movzbl (%eax),%eax : 804c483: mov %eax,0xffffffd0(%ebp) : 804c486: lea 0xffffffc4(%ebp),%eax : 804c489: incl (%eax) : // high bit indicates this is an RLE compressed run : if (runlen & 0x80) : 804c48b: movzbl 0xffffffd0(%ebp),%eax : 804c48f: and $0x80,%al : 804c491: test %al,%al : 804c493: je 804c49c : readpixelcount = 1; : 804c495: movl $0x1,0xffffffe4(%ebp) : runlen = 1 + (runlen & 0x7f); : 804c49c: mov 0xffffffd0(%ebp),%eax : 804c49f: and $0x7f,%eax : 804c4a2: inc %eax : 804c4a3: mov %eax,0xffffffd0(%ebp) : 804c4a6: nop : } : while((runlen--) && y < targa_header.height) : 804c4a7: lea 0xffffffd0(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c4aa: decl (%eax) : 804c4ac: cmpl $0xffffffff,0xffffffd0(%ebp) : 804c4b0: je 804c453 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c4b2: movzwl 0xffffffa8(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c4b6: cmp %eax,0xfffffff0(%ebp) : 804c4b9: jb 804c4bd : 804c4bb: jmp 804c453 : { : if (readpixelcount > 0) : 804c4bd: cmpl $0x0,0xffffffe4(%ebp) : 804c4c1: je 804c5e1 : { : readpixelcount--; : 804c4c7: lea 0xffffffe4(%ebp),%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c4ca: decl (%eax) : red = green = blue = alpha = 255; : 804c4cc: movl $0xff,0xffffffd4(%ebp) : 804c4d3: movl $0xff,0xffffffd8(%ebp) : 804c4da: movl $0xff,0xffffffdc(%ebp) : 804c4e1: movl $0xff,0xffffffe0(%ebp) : if (fin < enddata) : 804c4e8: mov 0xffffffc4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c4eb: cmp 0xffffffc0(%ebp),%eax : 804c4ee: jae 804c5e1 : { : switch(targa_header.image_type) : 804c4f4: movzbl 0xffffff9a(%ebp),%eax : 804c4f8: mov %eax,0xfffffb8c(%ebp) : 804c4fe: cmpl $0xb,0xfffffb8c(%ebp) : 804c505: ja 804c5e1 : 804c50b: mov 0xfffffb8c(%ebp),%edx : 804c511: mov 0x80582c0(,%edx,4),%eax : 804c518: jmp *%eax : { : case 1: : case 9: : // colormapped : p = palette + (*fin++) * 4; : 804c51a: lea 0xfffffb98(%ebp),%edx : 804c520: mov 0xffffffc4(%ebp),%eax : 804c523: movzbl (%eax),%eax : 804c526: shl $0x2,%eax : 804c529: lea (%eax,%edx,1),%eax : 804c52c: mov %eax,0xfffffb94(%ebp) : 804c532: lea 0xffffffc4(%ebp),%eax : 804c535: incl (%eax) : red = p[0]; : 804c537: mov 0xfffffb94(%ebp),%eax : 804c53d: movzbl (%eax),%eax : 804c540: mov %eax,0xffffffe0(%ebp) : green = p[1]; : 804c543: mov 0xfffffb94(%ebp),%eax : 804c549: inc %eax : 804c54a: movzbl (%eax),%eax : 804c54d: mov %eax,0xffffffdc(%ebp) : blue = p[2]; : 804c550: mov 0xfffffb94(%ebp),%eax : 804c556: add $0x2,%eax : 804c559: movzbl (%eax),%eax : 804c55c: mov %eax,0xffffffd8(%ebp) : alpha = p[3]; : 804c55f: mov 0xfffffb94(%ebp),%eax : 804c565: add $0x3,%eax : 804c568: movzbl (%eax),%eax : 804c56b: mov %eax,0xffffffd4(%ebp) : break; : 804c56e: jmp 804c5e1 : case 2: : case 10: : // BGR or BGRA : blue = *fin++; : 804c570: mov 0xffffffc4(%ebp),%eax : 804c573: movzbl (%eax),%eax : 804c576: mov %eax,0xffffffd8(%ebp) : 804c579: lea 0xffffffc4(%ebp),%eax : 804c57c: incl (%eax) : if (fin < enddata) : 804c57e: mov 0xffffffc4(%ebp),%eax : 804c581: cmp 0xffffffc0(%ebp),%eax : 804c584: jae 804c594 : green = *fin++; : 804c586: mov 0xffffffc4(%ebp),%eax : 804c589: movzbl (%eax),%eax : 804c58c: mov %eax,0xffffffdc(%ebp) : 804c58f: lea 0xffffffc4(%ebp),%eax : 804c592: incl (%eax) : if (fin < enddata) : 804c594: mov 0xffffffc4(%ebp),%eax : 804c597: cmp 0xffffffc0(%ebp),%eax : 804c59a: jae 804c5aa : red = *fin++; : 804c59c: mov 0xffffffc4(%ebp),%eax : 804c59f: movzbl (%eax),%eax : 804c5a2: mov %eax,0xffffffe0(%ebp) : 804c5a5: lea 0xffffffc4(%ebp),%eax : 804c5a8: incl (%eax) : if (targa_header.pixel_size == 32 && fin < enddata) : 804c5aa: cmpb $0x20,0xffffffaa(%ebp) : 804c5ae: jne 804c5e1 : 804c5b0: mov 0xffffffc4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c5b3: cmp 0xffffffc0(%ebp),%eax : 804c5b6: jae 804c5e1 : alpha = *fin++; : 804c5b8: mov 0xffffffc4(%ebp),%eax : 804c5bb: movzbl (%eax),%eax : 804c5be: mov %eax,0xffffffd4(%ebp) : 804c5c1: lea 0xffffffc4(%ebp),%eax : 804c5c4: incl (%eax) : break; : 804c5c6: jmp 804c5e1 : case 3: : case 11: : // greyscale : red = green = blue = *fin++; : 804c5c8: mov 0xffffffc4(%ebp),%eax : 804c5cb: movzbl (%eax),%eax : 804c5ce: mov %eax,0xffffffd8(%ebp) : 804c5d1: mov 0xffffffd8(%ebp),%eax : 804c5d4: mov %eax,%edx : 804c5d6: lea 0xffffffc4(%ebp),%eax : 804c5d9: incl (%eax) : 804c5db: mov %edx,0xffffffdc(%ebp) : 804c5de: mov %edx,0xffffffe0(%ebp) : break; : } : } : } : *pixbuf++ = red; : 804c5e1: mov 0xffffffcc(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c5e4: mov %eax,%edx : 804c5e6: movzbl 0xffffffe0(%ebp),%eax : 804c5ea: mov %al,(%edx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c5ec: lea 0xffffffcc(%ebp),%eax : 804c5ef: incl (%eax) : *pixbuf++ = green; : 804c5f1: mov 0xffffffcc(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c5f4: mov %eax,%edx : 804c5f6: movzbl 0xffffffdc(%ebp),%eax : 804c5fa: mov %al,(%edx) : 804c5fc: lea 0xffffffcc(%ebp),%eax : 804c5ff: incl (%eax) : *pixbuf++ = blue; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c601: mov 0xffffffcc(%ebp),%eax : 804c604: mov %eax,%edx : 804c606: movzbl 0xffffffd8(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c60a: mov %al,(%edx) : 804c60c: lea 0xffffffcc(%ebp),%eax : 804c60f: incl (%eax) : *pixbuf++ = alpha; : 804c611: mov 0xffffffcc(%ebp),%eax : 804c614: mov %eax,%edx : 804c616: movzbl 0xffffffd4(%ebp),%eax : 804c61a: mov %al,(%edx) : 804c61c: lea 0xffffffcc(%ebp),%eax : 804c61f: incl (%eax) : x++; : 804c621: lea 0xfffffff4(%ebp),%eax : 804c624: incl (%eax) : if (x == targa_header.width) : 804c626: movzwl 0xffffffa6(%ebp),%eax 5 0.0148 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c62a: cmp %eax,0xfffffff4(%ebp) : 804c62d: jne 804c4a7 : { : // end of line, advance to next : x = 0; : 804c633: movl $0x0,0xfffffff4(%ebp) : y++; : 804c63a: lea 0xfffffff0(%ebp),%eax : 804c63d: incl (%eax) : pixbuf += row_inc; : 804c63f: mov 0xffffffec(%ebp),%edx : 804c642: lea 0xffffffcc(%ebp),%eax : 804c645: add %edx,(%eax) : 804c647: jmp 804c4a7 : } : } : } : if (outwidth) : 804c64c: cmpl $0x0,0x10(%ebp) : 804c650: je 804c65b : *outwidth = targa_header.width; : 804c652: mov 0x10(%ebp),%edx : 804c655: movzwl 0xffffffa6(%ebp),%eax : 804c659: mov %eax,(%edx) : if (outheight) : 804c65b: cmpl $0x0,0x14(%ebp) : 804c65f: je 804c66a : *outheight = targa_header.height; : 804c661: mov 0x14(%ebp),%edx : 804c664: movzwl 0xffffffa8(%ebp),%eax : 804c668: mov %eax,(%edx) : return outpixels; : 804c66a: mov 0xffffffc8(%ebp),%eax : 804c66d: mov %eax,0xfffffb90(%ebp) :} : 804c673: mov 0xfffffb90(%ebp),%eax : 804c679: leave : 804c67a: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08052475 : /* R_SetMatrix total: 24 0.0709 1 0.1124 1 0.7143 0 0.0e+00 */ :// transpose of backend_modelviewmatrix :matrix4x4_t r_backend_glmodelviewmatrix; : :void R_SetMatrix(matrix4x4_t *matrix) :{ : 8052475: push %ebp 12 0.0355 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052476: mov %esp,%ebp : 8052478: sub $0x18,%esp : Matrix4x4_Concat(&r_backend_modelviewmatrix, &r_backend_worldviewmatrix, matrix); : 805247b: mov 0x8(%ebp),%eax 1 0.0030 0 0.0e+00 1 0.7143 0 0.0e+00 : 805247e: mov %eax,0x8(%esp,1) : 8052482: movl $0x89df380,0x4(%esp,1) : 805248a: movl $0x89df420,(%esp,1) 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 8052491: call 804c8eb : Matrix4x4_Transpose(&r_backend_glmodelviewmatrix, &r_backend_modelviewmatrix); : 8052496: movl $0x89df420,0x4(%esp,1) 3 0.0089 1 0.1124 0 0.0e+00 0 0.0e+00 : 805249e: movl $0x89df5e0,(%esp,1) : 80524a5: call 804cca7 : qglLoadMatrixd(&r_backend_glmodelviewmatrix.m[0][0]); : 80524aa: movl $0x89df5e0,(%esp,1) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524b1: mov 0x805a6e0,%eax : 80524b6: call *%eax :} 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524b8: leave 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80524b9: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804c67b : /* Image_ResampleRGBA total: 17 0.0502 0 0.0e+00 0 0.0e+00 0 0.0e+00 */ : return outpixels; :} : :void Image_ResampleRGBA(NUint8 *inpixels, NUint32 inwidth, NUint32 inheight, NUint8 *outpixels, NUint32 outwidth, NUint32 outheight) :{ : 804c67b: push %ebp : 804c67c: mov %esp,%ebp : 804c67e: sub $0x30,%esp : // FIXME: if this function is needed at all, add bilinear filter code : NUint8 *inrow, *inpix; : NUint x, y, xf, xfstep; : xfstep = (NUint) (inwidth * 65536.0f / outwidth); : 804c681: mov 0xc(%ebp),%eax : 804c684: mov $0x0,%edx : 804c689: push %edx : 804c68a: push %eax : 804c68b: fildll (%esp,1) : 804c68e: lea 0x8(%esp,1),%esp : 804c692: flds 0x80582f0 : 804c698: fmulp %st,%st(1) : 804c69a: mov 0x18(%ebp),%eax : 804c69d: mov $0x0,%edx : 804c6a2: push %edx : 804c6a3: push %eax : 804c6a4: fildll (%esp,1) : 804c6a7: lea 0x8(%esp,1),%esp : 804c6ab: fdivrp %st,%st(1) : 804c6ad: fnstcw 0xffffffe6(%ebp) : 804c6b0: movzwl 0xffffffe6(%ebp),%eax : 804c6b4: or $0xc00,%ax : 804c6b8: mov %ax,0xffffffe4(%ebp) : 804c6bc: fldcw 0xffffffe4(%ebp) : 804c6bf: fistpll 0xffffffd8(%ebp) : 804c6c2: fldcw 0xffffffe6(%ebp) : 804c6c5: mov 0xffffffd8(%ebp),%eax : 804c6c8: mov 0xffffffdc(%ebp),%edx : 804c6cb: mov %eax,0xffffffe8(%ebp) : for (y = 0;y < outheight;y++) : 804c6ce: movl $0x0,0xfffffff0(%ebp) : 804c6d5: mov 0xfffffff0(%ebp),%eax : 804c6d8: cmp 0x1c(%ebp),%eax : 804c6db: jb 804c6e2 : 804c6dd: jmp 804c790 : { : inrow = inpixels + ((y * inheight / outheight) * inwidth * 4); : 804c6e2: mov 0xfffffff0(%ebp),%eax : 804c6e5: mov %eax,%edx : 804c6e7: imul 0x10(%ebp),%edx : 804c6eb: lea 0x1c(%ebp),%eax : 804c6ee: mov %eax,0xffffffd4(%ebp) : 804c6f1: mov %edx,%eax : 804c6f3: mov 0xffffffd4(%ebp),%ecx : 804c6f6: mov $0x0,%edx : 804c6fb: divl (%ecx) : 804c6fd: mov %eax,0xffffffd4(%ebp) : 804c700: mov 0xffffffd4(%ebp),%eax : 804c703: imul 0xc(%ebp),%eax : 804c707: shl $0x2,%eax : 804c70a: add 0x8(%ebp),%eax : 804c70d: mov %eax,0xfffffffc(%ebp) : for (x = 0, xf = 0;x < outwidth;x++, xf += xfstep) : 804c710: movl $0x0,0xfffffff4(%ebp) : 804c717: movl $0x0,0xffffffec(%ebp) : 804c71e: mov 0xfffffff4(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c721: cmp 0x18(%ebp),%eax : 804c724: jb 804c728 : 804c726: jmp 804c786 : { : inpix = inrow + (xf >> 16) * 4; : 804c728: mov 0xffffffec(%ebp),%eax : 804c72b: shr $0x10,%eax : 804c72e: shl $0x2,%eax 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c731: add 0xfffffffc(%ebp),%eax : 804c734: mov %eax,0xfffffff8(%ebp) : outpixels[0] = inpix[0]; : 804c737: mov 0x14(%ebp),%edx 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c73a: mov 0xfffffff8(%ebp),%eax : 804c73d: movzbl (%eax),%eax : 804c740: mov %al,(%edx) : outpixels[1] = inpix[1]; 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c742: mov 0x14(%ebp),%edx : 804c745: inc %edx : 804c746: mov 0xfffffff8(%ebp),%eax : 804c749: inc %eax : 804c74a: movzbl (%eax),%eax : 804c74d: mov %al,(%edx) : outpixels[2] = inpix[2]; : 804c74f: mov 0x14(%ebp),%edx : 804c752: add $0x2,%edx : 804c755: mov 0xfffffff8(%ebp),%eax : 804c758: add $0x2,%eax : 804c75b: movzbl (%eax),%eax : 804c75e: mov %al,(%edx) : outpixels[3] = inpix[3]; : 804c760: mov 0x14(%ebp),%edx 4 0.0118 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c763: add $0x3,%edx : 804c766: mov 0xfffffff8(%ebp),%eax : 804c769: add $0x3,%eax : 804c76c: movzbl (%eax),%eax : 804c76f: mov %al,(%edx) : outpixels += 4; : 804c771: lea 0x14(%ebp),%eax 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c774: addl $0x4,(%eax) : 804c777: lea 0xfffffff4(%ebp),%eax : 804c77a: incl (%eax) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c77c: mov 0xffffffe8(%ebp),%edx : 804c77f: lea 0xffffffec(%ebp),%eax 3 0.0089 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c782: add %edx,(%eax) : 804c784: jmp 804c71e 2 0.0059 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804c786: lea 0xfffffff0(%ebp),%eax : 804c789: incl (%eax) : 804c78b: jmp 804c6d5 : } : } :} : 804c790: leave : 804c791: ret : 804c792: nop : 804c793: nop :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 0804acfc : /* AllocStats_Init total: 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 */ :AllocStats_Init :======================== :*/ :void AllocStats_Init( AllocStats_Info *info ) :{ : 804acfc: push %ebp 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 804acfd: mov %esp,%ebp : 804acff: sub $0x18,%esp : memset( info, 0, sizeof(AllocStats_Info) ); : 804ad02: movl $0x20,0x8(%esp,1) : 804ad0a: movl $0x0,0x4(%esp,1) : 804ad12: mov 0x8(%ebp),%eax : 804ad15: mov %eax,(%esp,1) : 804ad18: call 8048f54 <_init+0x2d8> :} : 804ad1d: leave : 804ad1e: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 080556c5 : /* ParticleEffect_Add total: 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 */ :ParticleEffect_Add :================== :*/ :ParticleEffect* ParticleEffect_Add (void) :{ : 80556c5: push %ebp : 80556c6: mov %esp,%ebp : 80556c8: sub $0x8,%esp : NUint32 i; : : for (i=0; i : 80556dd: jmp 805571b : { : if (!particleeffects[i].active) : 80556df: mov 0xfffffffc(%ebp),%edx : 80556e2: mov %edx,%eax : 80556e4: shl $0x3,%eax : 80556e7: add %edx,%eax : 80556e9: lea 0x0(,%eax,8),%edx : 80556f0: mov 0x805a820,%eax : 80556f5: cmpl $0x0,0x40(%eax,%edx,1) : 80556fa: jne 8055714 : { : return &particleeffects[i]; : 80556fc: mov 0xfffffffc(%ebp),%edx 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 80556ff: mov %edx,%eax : 8055701: shl $0x3,%eax : 8055704: add %edx,%eax : 8055706: shl $0x3,%eax : 8055709: add 0x805a820,%eax : 805570f: mov %eax,0xfffffff8(%ebp) : 8055712: jmp 8055723 : 8055714: lea 0xfffffffc(%ebp),%eax : 8055717: incl (%eax) : 8055719: jmp 80556d2 : } : } : : return &particleeffects[0]; : 805571b: mov 0x805a820,%eax : 8055720: mov %eax,0xfffffff8(%ebp) :} : 8055723: mov 0xfffffff8(%ebp),%eax : 8055726: leave : 8055727: ret :Disassembly of section .fini: : :/home/rain/crap/neither/darkwar/darkwar: file format elf32-i386 : :Disassembly of section .init: :Disassembly of section .plt: :Disassembly of section .text: : 08055728 : /* ParticleEffect_Init total: 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 */ :ParticlesEffect_Init :==================== :*/ :Nbool ParticleEffect_Init (const NUint32 amount) :{ : 8055728: push %ebp : 8055729: mov %esp,%ebp : 805572b: push %edi : 805572c: push %esi : 805572d: push %ebx : 805572e: sub $0x2c,%esp : NUint32 i; : NUint8* pointer; : : Console_Printf ("Initializing Particle Effects\n"); : 8055731: movl $0x8058e00,(%esp,1) : 8055738: call 804a769 : : particleeffects_max = amount; : 805573d: mov 0x8(%ebp),%eax : 8055740: mov %eax,0x805a81c : : particleeffects_zone = Mem_AllocZone ("ParticleEffects", NULL, 0); : 8055745: movl $0x291,0x14(%esp,1) : 805574d: movl $0x8058d00,0x10(%esp,1) : 8055755: movl $0x0,0xc(%esp,1) : 805575d: movl $0x0,0x8(%esp,1) : 8055765: movl $0x0,0x4(%esp,1) : 805576d: movl $0x8058e1f,(%esp,1) : 8055774: call 804af53 <_Mem_AllocZone> : 8055779: mov %eax,0x805a824 : : pointer = Mem_Alloc (particleeffects_zone, : 805577e: movl $0x295,0xc(%esp,1) : 8055786: movl $0x8058d00,0x8(%esp,1) : 805578e: mov 0x805a81c,%edx : 8055794: mov %edx,%eax : 8055796: shl $0x3,%eax : 8055799: add %edx,%eax : 805579b: shl $0x3,%eax : 805579e: add $0x4000,%eax : 80557a3: mov %eax,0x4(%esp,1) : 80557a7: mov 0x805a824,%eax : 80557ac: mov %eax,(%esp,1) : 80557af: call 804b1e4 <_Mem_Alloc> : 80557b4: mov %eax,0xffffffec(%ebp) : (sizeof(ParticleEffect) * particleeffects_max) + : (sizeof(Nfloat) * 4096)); : : particleeffects = (ParticleEffect*) (pointer); pointer += (sizeof(ParticleEffect) * particleeffects_max); : 80557b7: mov 0xffffffec(%ebp),%eax : 80557ba: mov %eax,0x805a820 : 80557bf: mov 0x805a81c,%edx : 80557c5: mov %edx,%eax : 80557c7: shl $0x3,%eax : 80557ca: add %edx,%eax : 80557cc: lea 0x0(,%eax,8),%edx : 80557d3: lea 0xffffffec(%ebp),%eax : 80557d6: add %edx,(%eax) : particleeffects_tc = (Nfloat*) (pointer); : 80557d8: mov 0xffffffec(%ebp),%eax : 80557db: mov %eax,0x805a828 : : for (i=0; i<512; i++) : 80557e0: movl $0x0,0xfffffff0(%ebp) : 80557e7: cmpl $0x1ff,0xfffffff0(%ebp) : 80557ee: jbe 80557f5 : 80557f0: jmp 8055891 : { : particleeffects_tc[(i*4+0)*2+0] = : 80557f5: mov 0xfffffff0(%ebp),%eax : 80557f8: mov %eax,%esi : 80557fa: shl $0x5,%esi : 80557fd: mov 0x805a828,%edi : 8055803: mov 0xfffffff0(%ebp),%eax : 8055806: shl $0x5,%eax : 8055809: add 0x805a828,%eax : 805580f: lea 0x4(%eax),%ebx : 8055812: mov 0xfffffff0(%ebp),%eax : 8055815: shl $0x5,%eax : 8055818: add 0x805a828,%eax : 805581e: lea 0x8(%eax),%ecx : 8055821: mov 0xfffffff0(%ebp),%eax : 8055824: shl $0x5,%eax : 8055827: add 0x805a828,%eax : 805582d: lea 0x1c(%eax),%edx : 8055830: mov $0x3f800000,%eax : 8055835: mov %eax,(%edx) : 8055837: mov %eax,(%ecx) : 8055839: mov %eax,(%ebx) 1 0.0030 0 0.0e+00 0 0.0e+00 0 0.0e+00 : 805583b: mov %eax,(%edi,%esi,1) : particleeffects_tc[(i*4+0)*2+1] = : particleeffects_tc[(i*4+1)*2+0] = : particleeffects_tc[(i*4+3)*2+1] = 1; : : particleeffects_tc[(i*4+1)*2+1] = : 805583e: mov 0xfffffff0(%ebp),%eax : 8055841: shl $0x5,%eax : 8055844: add 0x805a828,%eax : 805584a: lea 0xc(%eax),%esi : 805584d: mov 0xfffffff0(%ebp),%eax : 8055850: shl $0x5,%eax : 8055853: add 0x805a828,%eax : 8055859: lea 0x10(%eax),%ebx : 805585c: mov 0xfffffff0(%ebp),%eax : 805585f: shl $0x5,%eax : 8055862: add 0x805a828,%eax : 8055868: lea 0x14(%eax),%ecx : 805586b: mov 0xfffffff0(%ebp),%eax : 805586e: shl $0x5,%eax : 8055871: add 0x805a828,%eax : 8055877: lea 0x18(%eax),%edx : 805587a: mov $0x0,%eax : 805587f: mov %eax,(%edx) : 8055881: mov %eax,(%ecx) : 8055883: mov %eax,(%ebx) : 8055885: mov %eax,(%esi) : 8055887: lea 0xfffffff0(%ebp),%eax : 805588a: incl (%eax) : 805588c: jmp 80557e7 : particleeffects_tc[(i*4+2)*2+0] = : particleeffects_tc[(i*4+2)*2+1] = : particleeffects_tc[(i*4+3)*2+0] = 0; : } : : return true; : 8055891: mov $0x1,%eax :} : 8055896: add $0x2c,%esp : 8055899: pop %ebx : 805589a: pop %esi : 805589b: pop %edi : 805589c: pop %ebp : 805589d: ret : 805589e: nop : 805589f: nop :Disassembly of section .fini: