
FUNCTION 0x686300
00686300 push ebp
00686301 push esi
00686302 mov ebp, edx
00686304 mov esi, ecx
00686306 call 0x68d8c0
0068630b test eax, eax
0068630d je 0x68634a
0068630f movss xmm0, dword ptr [esi + 0x6c]
00686314 sub esp, 0x10
00686317 movss dword ptr [esp + 0xc], xmm0
0068631d movss xmm0, dword ptr [esi + 0x64]
00686322 movss dword ptr [esp + 8], xmm0
00686328 movss xmm0, dword ptr [esi + 0x68]
0068632d movss dword ptr [esp + 4], xmm0
00686333 movss xmm0, dword ptr [esi + 0x60]
00686338 lea ecx, [esi + 0x20]
0068633b mov edx, 0xff000000
00686340 movss dword ptr [esp], xmm0
00686345 call 0x68d8d0
0068634a cmp dword ptr [esi + 0x9c], 0
00686351 je 0x6863a7
00686353 mov eax, dword ptr [esi + 0x9c]
00686359 mov ecx, dword ptr [eax + 0x48]
0068635c test byte ptr [esi + 0xac], 0x10
00686363 push ebx
00686364 mov ebx, dword ptr [eax + 0x4c]
00686367 mov eax, 0
0068636c setne al
0068636f push edi
00686370 lea edi, [eax*4 + 4]
00686377 test ecx, ecx
00686379 je 0x686386
0068637b push edi
0068637c mov edx, 9
00686381 call 0xdce730
00686386 test ebx, ebx
00686388 je 0x686397
0068638a push edi
0068638b mov edx, 9
00686390 mov ecx, ebx
00686392 call 0xdce730
00686397 mov ecx, dword ptr [esp + 0x14]
0068639b push ecx
0068639c mov edx, ebp
0068639e mov ecx, esi
006863a0 call 0xdc0ae0
006863a5 pop edi
006863a6 pop ebx
006863a7 pop esi
006863a8 pop ebp
006863a9 ret 4

FUNCTION 0x689f10
00689f10 movss xmm0, dword ptr [esp + 0xc]
00689f16 push ebx
00689f17 push esi
00689f18 push edi
00689f19 mov edi, dword ptr [esp + 0x10]
00689f1d sub esp, 8
00689f20 movss dword ptr [esp + 4], xmm0
00689f26 movss xmm0, dword ptr [esp + 0x1c]
00689f2c movss dword ptr [esp], xmm0
00689f31 push edi
00689f32 mov ebx, edx
00689f34 mov esi, ecx
00689f36 call 0x6a53c0
00689f3b test eax, eax
00689f3d jne 0x689f80
00689f3f cmp ebx, 0x7aeb5a3d
00689f45 jne 0x689f8b
00689f47 sub edi, eax
00689f49 je 0x689f80
00689f4b call 0xdb3e10
00689f50 mov eax, dword ptr [eax + 0xc]
00689f53 movzx ecx, byte ptr [esi + 0x73]
00689f57 mov dl, al
00689f59 add dl, dl
00689f5b add dl, dl
00689f5d add dl, dl
00689f5f movzx edx, dl
00689f62 shl ecx, 8
00689f65 or ecx, edx
00689f67 mov dl, al
00689f69 add dl, dl
00689f6b shl ecx, 8
00689f6e movzx edx, dl
00689f71 shr eax, 1
00689f73 or ecx, edx
00689f75 movzx eax, al
00689f78 shl ecx, 8
00689f7b or ecx, eax
00689f7d mov dword ptr [esi + 0x70], ecx
00689f80 pop edi
00689f81 pop esi
00689f82 mov eax, 1
00689f87 pop ebx
00689f88 ret 0xc
00689f8b cmp ebx, 0x6cc61d05
00689f91 jne 0x689fbc
00689f93 cmp edi, 1
00689f96 jne 0x689fb1
00689f98 mov ecx, dword ptr [esi + 0x70]
00689f9b mov dword ptr [esi + 0x124], ecx
00689fa1 mov dl, byte ptr [esi + 0x127]
00689fa7 mov dword ptr [esi + 0x70], 0xffff0000
00689fae mov byte ptr [esi + 0x73], dl
00689fb1 pop edi
00689fb2 pop esi
00689fb3 mov eax, 1
00689fb8 pop ebx
00689fb9 ret 0xc
00689fbc cmp ebx, 0xda74e8e6
00689fc2 jne 0x689ff3
00689fc4 cmp edi, 1
00689fc7 jne 0x689fe8
00689fc9 mov ecx, 0xff6060ff

FUNCTION 0x69c840
0069c840 push ebp
0069c841 mov ebp, esp
0069c843 and esp, 0xfffffff0
0069c846 sub esp, 0x134
0069c84c push ebx
0069c84d push esi
0069c84e push edi
0069c84f mov edi, edx
0069c851 mov esi, dword ptr [edi + 0xc]
0069c854 mov ebx, ecx
0069c856 lea eax, [esp + 0x58]
0069c85a push eax
0069c85b mov edx, 0x45e79640
0069c860 mov ecx, esi
0069c862 mov dword ptr [esp + 0x30], edi
0069c866 mov dword ptr [esp + 0x34], ebx
0069c86a mov dword ptr [esp + 0x5c], 0
0069c872 call 0x69e170
0069c877 mov edx, dword ptr [esp + 0x58]
0069c87b lea ecx, [esp + 0xb4]
0069c882 push ecx
0069c883 push 0xe26c9b5d
0069c888 mov ecx, 0x1c35620
0069c88d call 0x69e430
0069c892 test eax, eax
0069c894 je 0x69c8bb
0069c896 mov ecx, dword ptr [esp + 0xb4]
0069c89d push 0
0069c89f push 0
0069c8a1 mov edx, eax
0069c8a3 mov eax, dword ptr [ecx]
0069c8a5 mov eax, dword ptr [eax + 0x18]
0069c8a8 push 0
0069c8aa push 0xbb05a9c1
0069c8af call eax
0069c8b1 xor ecx, ecx
0069c8b3 mov dword ptr [esp + 0x14], eax
0069c8b7 cmp eax, ecx
0069c8b9 jne 0x69c8e9
0069c8bb mov eax, dword ptr [esp + 0x58]
0069c8bf mov ecx, dword ptr [ebx]
0069c8c1 mov dword ptr [ebx + ecx*8 + 4], 1
0069c8c9 mov edx, dword ptr [ebx]
0069c8cb mov dword ptr [ebx + edx*8 + 8], eax
0069c8cf mov eax, dword ptr [ebx]
0069c8d1 inc eax
0069c8d2 and eax, 0x80000007
0069c8d7 jns 0x69c8de
0069c8d9 dec eax
0069c8da or eax, 0xfffffff8
0069c8dd inc eax
0069c8de mov dword ptr [ebx], eax
0069c8e0 pop edi
0069c8e1 pop esi
0069c8e2 pop ebx
0069c8e3 mov esp, ebp
0069c8e5 pop ebp
0069c8e6 ret 4
0069c8e9 xorps xmm0, xmm0
0069c8ec mov dword ptr [esp + 0x7c], ecx
0069c8f0 mov dword ptr [esp + 0x48], ecx
0069c8f4 lea ecx, [esp + 0x7c]
0069c8f8 push ecx
0069c8f9 mov edx, 0xb7964695
0069c8fe mov ecx, esi
0069c900 movss dword ptr [esp + 0x58], xmm0
0069c906 call 0x69e120
0069c90b lea edx, [esp + 0x48]
0069c90f push edx
0069c910 mov edx, 0x4bb83957
0069c915 mov ecx, esi
0069c917 call 0x69e120
0069c91c lea eax, [esp + 0x54]
0069c920 push eax
0069c921 mov edx, 0xa7f2d377
0069c926 mov ecx, esi
0069c928 call 0x69e0d0
0069c92d mov ecx, dword ptr [ebp + 8]
0069c930 push ecx
0069c931 push edi
0069c932 lea edx, [esp + 0x108]
0069c939 mov ecx, ebx
0069c93b call 0x69ac90
0069c940 cmp dword ptr [esp + 0x7c], 0
0069c945 je 0x69c979
0069c947 call 0xdb3e10
0069c94c test eax, eax
0069c94e jne 0x69c954
0069c950 xor ecx, ecx
0069c952 jmp 0x69c956
0069c954 mov ecx, dword ptr [eax]
0069c956 movss xmm0, dword ptr [0xec6e14]
0069c95e push 0
0069c960 push 0xff000000
0069c965 push 1
0069c967 push 0
0069c969 push ecx
0069c96a mov edx, 1
0069c96f movss dword ptr [esp], xmm0
0069c974 call 0xdb3d70
0069c979 cmp dword ptr [esp + 0x48], 0
0069c97e movss xmm0, dword ptr [ebx + 0x6e4]
0069c986 movss dword ptr [esp + 0x18], xmm0
0069c98c lea edi, [ebx + 0xd0]
0069c992 je 0x69c99a
0069c994 lea edi, [ebx + 0x300]
0069c99a mov edx, dword ptr [edi + 0x1e8]
0069c9a0 mov ecx, dword ptr [esp + 0x14]
0069c9a4 lea eax, [esp + 0x78]
0069c9a8 push eax
0069c9a9 mov dword ptr [esp + 0xb4], edx
0069c9b0 push ecx
0069c9b1 mov edx, esi
0069c9b3 mov ecx, ebx
0069c9b5 mov dword ptr [esp + 0x54], edi
0069c9b9 mov dword ptr [esp + 0x80], 0
0069c9c4 call 0x69b7c0
0069c9c9 mov esi, eax
0069c9cb test esi, esi
0069c9cd je 0x69ca1f
0069c9cf lea edx, [esp + 0x80]
0069c9d6 push edx
0069c9d7 lea eax, [esp + 0x94]
0069c9de push eax
0069c9df lea ecx, [esp + 0xd8]
0069c9e6 push ecx
0069c9e7 lea edx, [esp + 0xfc]
0069c9ee mov ecx, esi
0069c9f0 call 0xde7540
0069c9f5 mov ecx, esi
0069c9f7 call 0xde7530
0069c9fc fstp dword ptr [esp + 0x18]
0069ca00 lea edx, [esp + 0x80]
0069ca07 push edx
0069ca08 lea eax, [esp + 0x94]
0069ca0f lea ecx, [esp + 0xd4]
0069ca16 lea edx, [esp + 0xf4]
0069ca1d jmp 0x69ca5a
0069ca1f cmp dword ptr [esp + 0x48], 0
0069ca24 jne 0x69ca41
0069ca26 lea edx, [ebx + 0x560]
0069ca2c push edx
0069ca2d lea eax, [ebx + 0x550]
0069ca33 lea ecx, [ebx + 0x540]
0069ca39 lea edx, [ebx + 0x530]
0069ca3f jmp 0x69ca5a
0069ca41 lea edx, [ebx + 0x5a0]
0069ca47 push edx
0069ca48 lea eax, [ebx + 0x590]
0069ca4e lea ecx, [ebx + 0x580]
0069ca54 lea edx, [ebx + 0x570]
0069ca5a push eax
0069ca5b push ecx
0069ca5c mov ecx, edi
0069ca5e call 0xd971c0
0069ca63 cmp dword ptr [esp + 0x48], 0
0069ca68 jne 0x69ca92
0069ca6a movss xmm0, dword ptr [0xf0da3c]
0069ca72 divss xmm0, dword ptr [ebx + 0x6dc]
0069ca7a mulss xmm0, dword ptr [esp + 0x18]
0069ca80 push ecx
0069ca81 mov edx, 1
0069ca86 mov ecx, edi
0069ca88 movss dword ptr [esp], xmm0
0069ca8d call 0xd96870
0069ca92 mov ecx, edi
0069ca94 mov dword ptr [ebx + 0x6e8], edi
0069ca9a call 0xd96ee0
0069ca9f mov edx, dword ptr [esp + 0x2c]
0069caa3 movzx eax, word ptr [edx + 0x1a]
0069caa7 shr eax, 0xf
0069caaa mov dword ptr [esp + 0x1c], eax
0069caae test eax, eax
0069cab0 jne 0x69cadf
0069cab2 mov eax, dword ptr [esp + 0x14]
0069cab6 mov ecx, dword ptr [eax + 0x40]
0069cab9 test ecx, ecx
0069cabb je 0x69cb2f
0069cabd mov edx, eax
0069cabf cmp dword ptr [edx + 0x3c], 0
0069cac3 jle 0x69cb2f
0069cac5 push 0x40
0069cac7 lea edx, [esp + 0x104]
0069cace call 0xd95710
0069cad3 test eax, eax
0069cad5 je 0x69cb2f
0069cad7 mov dword ptr [esp + 0x1c], 1
0069cadf mov eax, dword ptr [esp + 0x14]
0069cae3 cmp dword ptr [eax + 0x40], 0
0069cae7 jne 0x69caed
0069cae9 xor ecx, ecx
0069caeb jmp 0x69caf0
0069caed mov ecx, dword ptr [eax + 0x3c]
0069caf0 xor eax, eax
0069caf2 mov dword ptr [esp + 0x18], ecx
0069caf6 test ecx, ecx
0069caf8 jle 0x69cb2f
0069cafa xor edx, edx
0069cafc mov esi, dword ptr [esp + 0x14]
0069cb00 mov ecx, dword ptr [esi + 0x40]
0069cb03 test ecx, ecx
0069cb05 jne 0x69cb0b
0069cb07 xor edi, edi
0069cb09 jmp 0x69cb17
0069cb0b cmp eax, dword ptr [esi + 0x3c]
0069cb0e jl 0x69cb14
0069cb10 xor edi, edi
0069cb12 jmp 0x69cb17
0069cb14 lea edi, [edx + ecx]
0069cb17 inc eax
0069cb18 mov ecx, 0x10
0069cb1d lea esi, [esp + 0x100]
0069cb24 sub edx, -0x80
0069cb27 rep movsd dword ptr es:[edi], dword ptr [esi]
0069cb29 cmp eax, dword ptr [esp + 0x18]
0069cb2d jl 0x69cafc
0069cb2f test dword ptr [ebx + 0x718], 0x10000
0069cb39 movss xmm0, dword ptr [esp + 0x54]
0069cb3f mov dword ptr [esp + 0x24], 0
0069cb47 je 0x69cb50
0069cb49 mov edx, 1
0069cb4e jmp 0x69cb6b
0069cb50 cmp dword ptr [esp + 0x1c], 0
0069cb55 jne 0x69cb69
0069cb57 mov eax, dword ptr [esp + 0x14]
0069cb5b movss xmm1, dword ptr [eax + 8]
0069cb60 ucomiss xmm1, xmm0
0069cb63 lahf 
0069cb64 test ah, 0x44
0069cb67 jnp 0x69cb82
0069cb69 xor edx, edx
0069cb6b push ecx
0069cb6c mov ecx, dword ptr [esp + 0x18]
0069cb70 movss dword ptr [esp], xmm0
0069cb75 call 0xdd3c70
0069cb7a mov dword ptr [esp + 0x24], 1
0069cb82 mov edx, dword ptr [esp + 0x2c]
0069cb86 mov ecx, 0xc000
0069cb8b test word ptr [edx + 0x1a], cx
0069cb8f je 0x69d055
0069cb95 mov eax, edx
0069cb97 mov eax, dword ptr [eax + 0x1c]
0069cb9a mov dword ptr [esp + 0x20], eax
0069cb9e test eax, eax
0069cba0 je 0x69d055
0069cba6 jmp 0x69cbb0
0069cba8 lea esp, [esp]
0069cbaf nop 
0069cbb0 mov ecx, dword ptr [esp + 0x20]
0069cbb4 mov eax, dword ptr [ecx + 8]
0069cbb7 cmp eax, 0x526257df
0069cbbc jne 0x69cce2
0069cbc2 mov esi, dword ptr [ecx + 0xc]
0069cbc5 mov dword ptr [esp + 0xac], 0x82f6983b
0069cbd0 mov dword ptr [esp + 0xa8], 0
0069cbdb mov eax, dword ptr [esi]
0069cbdd mov eax, dword ptr [eax + 0xc]
0069cbe0 lea ecx, [esp + 0xa8]
0069cbe7 push ecx
0069cbe8 mov edx, 0x656ac9cd
0069cbed mov ecx, esi
0069cbef call eax
0069cbf1 test eax, eax
0069cbf3 je 0x69d042
0069cbf9 xor edx, edx
0069cbfb lea ecx, [esp + 0xa8]
0069cc02 call 0x6a56b0
0069cc07 test eax, eax
0069cc09 jne 0x69cc19
0069cc0b mov eax, dword ptr [esi]
0069cc0d mov eax, dword ptr [eax + 0x18]
0069cc10 mov edx, 0x656ac9cd
0069cc15 mov ecx, esi
0069cc17 call eax
0069cc19 lea ecx, [esp + 0x64]
0069cc1d xor ebx, ebx
0069cc1f push ecx
0069cc20 mov edx, 0x1d710fcc
0069cc25 mov ecx, esi
0069cc27 mov dword ptr [esp + 0x68], ebx
0069cc2b mov dword ptr [esp + 0x74], ebx
0069cc2f mov dword ptr [esp + 0x78], 1
0069cc37 call 0x69e170
0069cc3c lea edx, [esp + 0x70]
0069cc40 push edx
0069cc41 mov edx, 0xfdea9717
0069cc46 mov ecx, esi
0069cc48 call 0x69e170
0069cc4d lea eax, [esp + 0x74]
0069cc51 push eax
0069cc52 mov edx, 0xa4537aba
0069cc57 mov ecx, esi
0069cc59 call 0x69e120
0069cc5e mov ecx, dword ptr [esp + 0x14]
0069cc62 mov esi, dword ptr [ecx + 0x38]
0069cc65 mov edi, dword ptr [esp + 0x64]
0069cc69 cmp esi, ebx
0069cc6b je 0x69cc84
0069cc6d mov edx, dword ptr [ecx + 0x30]
0069cc70 xor eax, eax
0069cc72 cmp edx, ebx
0069cc74 jle 0x69cc84
0069cc76 mov ecx, esi
0069cc78 cmp dword ptr [ecx], edi
0069cc7a je 0x69ccb1
0069cc7c inc eax
0069cc7d add ecx, 0x28
0069cc80 cmp eax, edx
0069cc82 jl 0x69cc78
0069cc84 mov eax, dword ptr [esp + 0x30]
0069cc88 mov edx, dword ptr [eax]
0069cc8a mov dword ptr [eax + edx*8 + 4], 3
0069cc92 mov edx, dword ptr [eax]
0069cc94 mov ecx, edi
0069cc96 mov dword ptr [eax + edx*8 + 8], ecx
0069cc9a mov ecx, dword ptr [eax]
0069cc9c inc ecx
0069cc9d and ecx, 0x80000007
0069cca3 jns 0x69ccaa
0069cca5 dec ecx
0069cca6 or ecx, 0xfffffff8
0069cca9 inc ecx
0069ccaa mov dword ptr [eax], ecx
0069ccac jmp 0x69d042
0069ccb1 lea ecx, [eax + eax*4]
0069ccb4 lea edx, [esi + ecx*8]
0069ccb7 cmp edx, ebx
0069ccb9 je 0x69cc84
0069ccbb cmp dword ptr [esp + 0x74], ebx
0069ccbf jne 0x69ccc5
0069ccc1 and dword ptr [edx + 0xc], 0xfffffffe
0069ccc5 mov eax, dword ptr [esp + 0x20]
0069ccc9 mov ecx, dword ptr [esp + 0x2c]
0069cccd push eax
0069ccce mov eax, dword ptr [esp + 0x74]
0069ccd2 push ecx
0069ccd3 mov ecx, dword ptr [esp + 0x38]
0069ccd7 push eax
0069ccd8 call 0x698f80
0069ccdd jmp 0x69d042
0069cce2 cmp dword ptr [esp + 0x24], 0
0069cce7 je 0x69d042
0069cced cmp eax, 0x8a901914
0069ccf2 jne 0x69d042
0069ccf8 mov edx, dword ptr [esp + 0x20]
0069ccfc mov esi, dword ptr [edx + 0xc]
0069ccff xor ecx, ecx
0069cd01 mov eax, 0x82f6983b
0069cd06 mov dword ptr [esp + 0x68], ecx
0069cd0a mov dword ptr [esp + 0x5c], ecx
0069cd0e mov dword ptr [esp + 0x6c], eax
0069cd12 mov dword ptr [esp + 0x60], eax
0069cd16 mov eax, dword ptr [esi]
0069cd18 mov eax, dword ptr [eax + 0xc]
0069cd1b lea ecx, [esp + 0x68]
0069cd1f push ecx
0069cd20 mov edx, 0x3b6c7797
0069cd25 mov ecx, esi
0069cd27 call eax
0069cd29 test eax, eax
0069cd2b je 0x69d042
0069cd31 mov eax, dword ptr [esi]
0069cd33 mov eax, dword ptr [eax + 0xc]
0069cd36 lea ecx, [esp + 0x5c]
0069cd3a push ecx
0069cd3b mov edx, 0xcf1dbec6
0069cd40 mov ecx, esi
0069cd42 call eax
0069cd44 test eax, eax
0069cd46 je 0x69d042
0069cd4c xor edx, edx
0069cd4e cmp dword ptr [esp + 0x6c], 0x82f6983b
0069cd56 lea ecx, [esp + 0x68]
0069cd5a je 0x69cde7
0069cd60 call 0x6a57a0
0069cd65 mov ecx, dword ptr [esp + 0x14]
0069cd69 mov dword ptr [esp + 0x3c], eax
0069cd6d xor edi, edi
0069cd6f call 0x4bd7c0
0069cd74 test eax, eax
0069cd76 jle 0x69d042
0069cd7c mov ecx, dword ptr [esp + 0x14]
0069cd80 mov ecx, dword ptr [ecx + 0x40]
0069cd83 mov dword ptr [esp + 0x28], ecx
0069cd87 mov edx, ecx
0069cd89 jmp 0x69cd94
0069cd8b jmp 0x69cd90
0069cd8d lea ecx, [ecx]
0069cd90 mov ecx, dword ptr [esp + 0x28]
0069cd94 test ecx, ecx
0069cd96 je 0x69cda7
0069cd98 mov ebx, dword ptr [esp + 0x14]
0069cd9c xor ecx, ecx
0069cd9e cmp edi, dword ptr [ebx + 0x3c]
0069cda1 setge cl
0069cda4 dec ecx
0069cda5 and ecx, edx
0069cda7 mov ebx, dword ptr [esp + 0x3c]
0069cdab cmp dword ptr [ecx + 0x44], ebx
0069cdae je 0x69cdbd
0069cdb0 inc edi
0069cdb1 sub edx, -0x80
0069cdb4 cmp edi, eax
0069cdb6 jl 0x69cd90
0069cdb8 jmp 0x69d042
0069cdbd mov eax, dword ptr [esi]
0069cdbf mov eax, dword ptr [eax + 0x10]
0069cdc2 lea ecx, [esp + 0xc0]
0069cdc9 push ecx
0069cdca mov edx, 0x3b6c7797
0069cdcf mov ecx, esi
0069cdd1 mov dword ptr [esp + 0xc8], 0x82f6983b
0069cddc mov dword ptr [esp + 0xc4], edi
0069cde3 call eax
0069cde5 jmp 0x69cdee
0069cde7 call 0x6a56b0
0069cdec mov edi, eax
0069cdee test edi, edi
0069cdf0 js 0x69d042
0069cdf6 mov ecx, dword ptr [esp + 0x14]
0069cdfa mov eax, dword ptr [ecx + 0x40]
0069cdfd test eax, eax
0069cdff jne 0x69ce05
0069ce01 xor ebx, ebx
0069ce03 jmp 0x69ce14
0069ce05 cmp edi, dword ptr [ecx + 0x3c]
0069ce08 jl 0x69ce0e
0069ce0a xor ebx, ebx
0069ce0c jmp 0x69ce14
0069ce0e shl edi, 7
0069ce11 lea ebx, [eax + edi]
0069ce14 mov edi, dword ptr [ebx + 0x58]
0069ce17 xor edx, edx
0069ce19 cmp dword ptr [esp + 0x60], 0x82f6983b
0069ce21 lea ecx, [esp + 0x5c]
0069ce25 je 0x69ce69
0069ce27 call 0x6a57a0
0069ce2c mov edx, eax
0069ce2e mov ecx, edi
0069ce30 call 0xdb7ab0
0069ce35 mov edi, eax
0069ce37 test edi, edi
0069ce39 js 0x69d042
0069ce3f mov eax, dword ptr [esi]
0069ce41 mov eax, dword ptr [eax + 0x10]
0069ce44 lea ecx, [esp + 0xc8]
0069ce4b push ecx
0069ce4c mov edx, 0xcf1dbec6
0069ce51 mov ecx, esi
0069ce53 mov dword ptr [esp + 0xd0], 0x82f6983b
0069ce5e mov dword ptr [esp + 0xcc], edi
0069ce65 call eax
0069ce67 jmp 0x69ce70
0069ce69 call 0x6a56b0
0069ce6e mov edi, eax
0069ce70 test edi, edi
0069ce72 js 0x69d042
0069ce78 lea ecx, [esp + 0x28]
0069ce7c push ecx
0069ce7d shl edi, 6
0069ce80 add edi, dword ptr [ebx + 0x64]
0069ce83 mov edx, 0xa15e7f4a
0069ce88 mov ecx, esi
0069ce8a mov dword ptr [esp + 0x2c], 0
0069ce92 call 0x69e120
0069ce97 test eax, eax
0069ce99 jne 0x69cff1
0069ce9f xorps xmm0, xmm0
0069cea2 lea edx, [esp + 0x18]
0069cea6 push edx
0069cea7 mov edx, 0x95f194b8
0069ceac mov ecx, esi
0069ceae movss dword ptr [esp + 0x1c], xmm0
0069ceb4 movss dword ptr [esp + 0x20], xmm0
0069ceba call 0x69e0d0
0069cebf lea eax, [esp + 0x1c]
0069cec3 push eax
0069cec4 mov edx, 0xe2f6a42e
0069cec9 mov ecx, esi
0069cecb call 0x69e0d0
0069ced0 mov eax, dword ptr [esi]
0069ced2 movss xmm0, dword ptr [edi + 0x30]
0069ced7 subss xmm0, dword ptr [esp + 0x130]
0069cee0 movss xmm1, dword ptr [edi + 0x34]
0069cee5 subss xmm1, dword ptr [esp + 0x134]
0069ceee mov eax, dword ptr [eax + 0x10]
0069cef1 lea ecx, [esp + 0xb8]
0069cef8 push ecx
0069cef9 mov ebx, 0x3ef19c25
0069cefe mov edx, 0x732ce3b7
0069cf03 mov ecx, esi
0069cf05 movss dword ptr [esp + 0x54], xmm0
0069cf0b movss dword ptr [esp + 0x48], xmm1
0069cf11 mov dword ptr [esp + 0xc0], ebx
0069cf18 movss dword ptr [esp + 0xbc], xmm0
0069cf21 call eax
0069cf23 mov eax, dword ptr [esi]
0069cf25 movss xmm0, dword ptr [esp + 0x44]
0069cf2b mov eax, dword ptr [eax + 0x10]
0069cf2e lea ecx, [esp + 0xf0]
0069cf35 push ecx
0069cf36 mov edx, 0x42bd321
0069cf3b mov ecx, esi
0069cf3d mov dword ptr [esp + 0xf8], ebx
0069cf44 movss dword ptr [esp + 0xf4], xmm0
0069cf4d call eax
0069cf4f movss xmm0, dword ptr [esp + 0x18]
0069cf55 movss xmm1, dword ptr [esp + 0x1c]
0069cf5b mov eax, dword ptr [esi]
0069cf5d subss xmm0, dword ptr [esp + 0x50]
0069cf63 subss xmm1, dword ptr [esp + 0x44]
0069cf69 mov eax, dword ptr [eax + 0x10]
0069cf6c lea ecx, [esp + 0xd0]
0069cf73 push ecx
0069cf74 mov edx, 0x95f194b8
0069cf79 mov ecx, esi
0069cf7b movss dword ptr [esp + 0x1c], xmm0
0069cf81 movss dword ptr [esp + 0x20], xmm1
0069cf87 mov dword ptr [esp + 0xd8], ebx
0069cf8e movss dword ptr [esp + 0xd4], xmm0
0069cf97 call eax
0069cf99 mov eax, dword ptr [esi]
0069cf9b movss xmm0, dword ptr [esp + 0x1c]
0069cfa1 mov eax, dword ptr [eax + 0x10]
0069cfa4 lea ecx, [esp + 0x90]
0069cfab push ecx
0069cfac mov edx, 0xe2f6a42e
0069cfb1 mov ecx, esi
0069cfb3 mov dword ptr [esp + 0x98], ebx
0069cfba movss dword ptr [esp + 0x94], xmm0
0069cfc3 call eax
0069cfc5 mov ecx, dword ptr [esp + 0x28]
0069cfc9 mov eax, dword ptr [esi]
0069cfcb mov eax, dword ptr [eax + 0x10]
0069cfce mov dword ptr [esp + 0x80], ecx
0069cfd5 lea ecx, [esp + 0x80]
0069cfdc push ecx
0069cfdd mov edx, 0xa15e7f4a
0069cfe2 mov ecx, esi
0069cfe4 mov dword ptr [esp + 0x88], 0x82f6983b
0069cfef call eax
0069cff1 xorps xmm0, xmm0
0069cff4 lea ecx, [esp + 0x38]
0069cff8 push ecx
0069cff9 mov edx, 0x95f194b8
0069cffe mov ecx, esi
0069d000 movss dword ptr [esp + 0x3c], xmm0
0069d006 movss dword ptr [esp + 0x38], xmm0
0069d00c call 0x69e0d0
0069d011 lea edx, [esp + 0x34]
0069d015 push edx
0069d016 mov edx, 0xe2f6a42e
0069d01b mov ecx, esi
0069d01d call 0x69e0d0
0069d022 movss xmm0, dword ptr [edi + 0x30]
0069d027 addss xmm0, dword ptr [esp + 0x38]
0069d02d movss dword ptr [edi + 0x30], xmm0
0069d032 movss xmm0, dword ptr [edi + 0x34]
0069d037 addss xmm0, dword ptr [esp + 0x34]

FUNCTION 0xdd3610
00dd3610 push esi
00dd3611 push edi
00dd3612 mov esi, ecx
00dd3614 call 0xda3620
00dd3619 mov eax, dword ptr [eax + 0x3094]
00dd361f mov edx, dword ptr [eax + 8]
00dd3622 mov ecx, esi
00dd3624 call 0x54b630
00dd3629 xor edi, edi
00dd362b cmp dword ptr [esi + 0x3c], edi
00dd362e jle 0xdd3647
00dd3630 push ebx
00dd3631 xor ebx, ebx
00dd3633 mov ecx, dword ptr [esi + 0x40]
00dd3636 add ecx, ebx
00dd3638 call 0xdde910
00dd363d inc edi
00dd363e sub ebx, -0x80
00dd3641 cmp edi, dword ptr [esi + 0x3c]
00dd3644 jl 0xdd3633
00dd3646 pop ebx
00dd3647 pop edi
00dd3648 mov eax, 1
00dd364d pop esi
00dd364e ret 
00dd3650 push ebx
00dd3651 mov ebx, dword ptr [esp + 8]
00dd3655 push ebp
00dd3656 push esi
00dd3657 mov esi, dword ptr [eax + 0x18]
00dd365a xor ecx, ecx
00dd365c test esi, esi
00dd365e jle 0xdd367f
00dd3660 mov edx, dword ptr [eax + 0x1c]
00dd3663 add edx, 0xc
00dd3666 mov eax, dword ptr [edx]
00dd3668 test eax, eax
00dd366a je 0xdd3677
00dd366c cmp eax, edi
00dd366e jb 0xdd3677
00dd3670 lea ebp, [edi + ebx]
00dd3673 cmp eax, ebp
00dd3675 jb 0xdd3687
00dd3677 inc ecx
00dd3678 add edx, 0x18
00dd367b cmp ecx, esi
00dd367d jl 0xdd3666
00dd367f pop esi
00dd3680 pop ebp
00dd3681 xor eax, eax
00dd3683 pop ebx
00dd3684 ret 4
00dd3687 pop esi
00dd3688 pop ebp
00dd3689 mov eax, 1
00dd368e pop ebx
00dd368f ret 4
00dd36a0 cmp dword ptr [ecx + 0x48], 0
00dd36a4 jne 0xdd36a9
00dd36a6 xor eax, eax
00dd36a8 ret 
00dd36a9 mov eax, dword ptr [ecx + 0x44]
00dd36ac ret 
00dd36b0 mov eax, edx
00dd36b2 mov edx, dword ptr [ecx + 0x48]
00dd36b5 test edx, edx
00dd36b7 jne 0xdd36bc
00dd36b9 xor eax, eax
00dd36bb ret 
00dd36bc cmp eax, dword ptr [ecx + 0x44]
00dd36bf jge 0xdd36b9
00dd36c1 imul eax, eax, 0xe0
00dd36c7 add eax, edx
00dd36c9 ret 
00dd36d0 mov eax, dword ptr [ecx + 0x48]
00dd36d3 test eax, eax
00dd36d5 jne 0xdd36d8
00dd36d7 ret 
00dd36d8 xor edx, edx
00dd36da cmp dword ptr [ecx + 0x44], edx
00dd36dd setle dl
00dd36e0 dec edx
00dd36e1 and eax, edx
00dd36e3 ret 
00dd36f0 push edi
00dd36f1 mov edi, dword ptr [ecx + 0x48]
00dd36f4 test edi, edi
00dd36f6 jne 0xdd36fc
00dd36f8 xor eax, eax
00dd36fa pop edi
00dd36fb ret 
00dd36fc sub edx, edi
00dd36fe push esi
00dd36ff mov esi, edx
00dd3701 mov eax, 0x92492493
00dd3706 imul esi
00dd3708 add edx, esi
00dd370a sar edx, 7
00dd370d mov eax, edx
00dd370f shr eax, 0x1f
00dd3712 add eax, edx
00dd3714 pop esi
00dd3715 js 0xdd36f8
00dd3717 lea edx, [eax + 1]
00dd371a cmp edx, dword ptr [ecx + 0x44]
00dd371d jge 0xdd36f8
00dd371f inc eax
