
FUNCTION 0xdd2ba0
00dd2ba0 sub esp, 0x3c
00dd2ba3 push ebx
00dd2ba4 push esi
00dd2ba5 push edi
00dd2ba6 mov dword ptr [esp + 0x34], edx
00dd2baa mov ebx, ecx
00dd2bac call 0xda3620
00dd2bb1 mov eax, dword ptr [eax + 0x3094]
00dd2bb7 mov edx, dword ptr [ebx + 0x20]
00dd2bba mov esi, dword ptr [eax + 8]
00dd2bbd mov ecx, dword ptr [ebx + 0xc]
00dd2bc0 mov eax, dword ptr [esi + 0x10]
00dd2bc3 mov edi, dword ptr [ebx + 0x1c]
00dd2bc6 mov dword ptr [esp + 0x10], edx
00dd2bca mov edx, dword ptr [esi + 0x28]
00dd2bcd mov dword ptr [esp + 0x18], ecx
00dd2bd1 test dword ptr [ebx + 0x14], edx
00dd2bd4 jne 0xdd2be1
00dd2bd6 pop edi
00dd2bd7 pop esi
00dd2bd8 xor eax, eax
00dd2bda pop ebx
00dd2bdb add esp, 0x3c
00dd2bde ret 4
00dd2be1 mov edx, ecx
00dd2be3 and edx, 1
00dd2be6 neg edx
00dd2be8 push ebp
00dd2be9 mov ebp, dword ptr [ebx + 4]
00dd2bec and edx, eax
00dd2bee mov dword ptr [edi + 0x14], eax
00dd2bf1 mov dword ptr [esp + 0x10], ebp
00dd2bf5 mov dword ptr [ebx + 0x18], edx
00dd2bf8 test cl, 0x18
00dd2bfb je 0xdd2c4d
00dd2bfd mov eax, ecx
00dd2bff shr eax, 4
00dd2c02 and eax, 1
00dd2c05 test cl, 8
00dd2c08 je 0xdd2c37
00dd2c0a mov eax, dword ptr [edi + 0x18]
00dd2c0d movzx edx, word ptr [edi + 8]
00dd2c11 mov ecx, dword ptr [ebx + 0x20]
00dd2c14 push eax
00dd2c15 call 0xe08100
00dd2c1a add dword ptr [ebx + 0x10], eax
00dd2c1d mov ecx, dword ptr [esp + 0x1c]
00dd2c21 and eax, 1
00dd2c24 shl eax, 4
00dd2c27 shr ecx, 1
00dd2c29 and eax, ecx
00dd2c2b or eax, dword ptr [ebx + 0xc]
00dd2c2e mov dword ptr [ebx + 0xc], eax
00dd2c31 shr eax, 4
00dd2c34 and eax, 1
00dd2c37 test eax, eax
00dd2c39 je 0xdd2c4d
00dd2c3b mov edx, dword ptr [esp + 0x14]
00dd2c3f mov ecx, edi
00dd2c41 call 0xdd1c30
00dd2c46 add dword ptr [ebx + 0x10], eax
00dd2c49 and dword ptr [ebx + 0xc], 0xffffffef
00dd2c4d movzx eax, word ptr [edi + 0xc]
00dd2c51 mov edx, dword ptr [edi + 0x20]
00dd2c54 lea ecx, [eax + eax*4]
00dd2c57 lea eax, [eax*4 + 3]
00dd2c5e lea ecx, [edx + ecx*4]
00dd2c61 mov edx, eax
00dd2c63 and edx, 3
00dd2c66 sub eax, edx
00dd2c68 add eax, dword ptr [esp + 0x14]
00dd2c6c mov dword ptr [esp + 0x2c], ecx
00dd2c70 mov ecx, dword ptr [esi + 0x30]
00dd2c73 mov dword ptr [esp + 0x28], eax
00dd2c77 mov eax, dword ptr [esi + 0x2c]
00dd2c7a mov dword ptr [esp + 0x20], eax
00dd2c7e mov dword ptr [esp + 0x24], ecx
00dd2c82 mov dword ptr [esp + 0x18], 0
00dd2c8a jmp 0xdd2c94
00dd2c8c lea esp, [esp]
00dd2c90 mov ebp, dword ptr [esp + 0x10]
00dd2c94 mov ecx, dword ptr [ebp + 8]
00dd2c97 and ecx, dword ptr [esp + 0x20]
00dd2c9b mov eax, ebp
00dd2c9d neg ecx
00dd2c9f sbb ecx, ecx
00dd2ca1 sub eax, dword ptr [esp + 0x28]
00dd2ca5 neg ecx
00dd2ca7 sar eax, 4
00dd2caa mov edx, eax
00dd2cac shl edx, 4
00dd2caf sub edx, eax
00dd2cb1 mov eax, dword ptr [esp + 0x2c]
00dd2cb5 neg ecx
00dd2cb7 and ecx, dword ptr [ebp + 4]
00dd2cba lea edi, [eax + edx*4]
00dd2cbd and ecx, dword ptr [esp + 0x24]
00dd2cc1 mov eax, dword ptr [edi + 0x20]
00dd2cc4 mov dword ptr [esp + 0x3c], edi
00dd2cc8 mov dword ptr [esp + 0x40], ebx
00dd2ccc jne 0xdd2cd6
00dd2cce mov ecx, dword ptr [ebp + 0xc]
00dd2cd1 jmp 0xdd2e21
00dd2cd6 mov ecx, dword ptr [eax + 8]
00dd2cd9 movzx edx, word ptr [edi + 0x10]
00dd2cdd and ecx, 0xffffc003
00dd2ce3 mov dword ptr [esp + 0x34], edx
00dd2ce7 cmp dword ptr [esi + 0xb0], ecx
00dd2ced je 0xdd2cfa
00dd2cef mov dword ptr [esi + 0xb0], ecx
00dd2cf5 call 0xdd2ae0
00dd2cfa cmp byte ptr [esi + 0x330], 0
00dd2d01 mov byte ptr [esi + 0x331], 1
00dd2d08 je 0xdd2d16
00dd2d0a mov edx, 1
00dd2d0f mov ecx, esi
00dd2d11 call 0xdb2210
00dd2d16 movzx ebp, word ptr [edi + 0xc]
00dd2d1a mov al, byte ptr [ebx + 0xc]
00dd2d1d movzx ecx, word ptr [edi + 0xa]
00dd2d21 mov edx, dword ptr [esi + 0x1c]
00dd2d24 add ebp, dword ptr [ebx + 0x20]
00dd2d27 and al, 1
00dd2d29 mov dword ptr [esp + 0x30], ecx
00dd2d2d cmp edx, dword ptr [esi + 0x20]
00dd2d30 jne 0xdd2d38
00dd2d32 lea eax, [esp + 0x44]
00dd2d36 jmp 0xdd2d90
00dd2d38 mov ecx, dword ptr [esi + 0x18]
00dd2d3b sub ecx, 8
00dd2d3e mov edx, ecx
00dd2d40 and edx, 3
00dd2d43 sub ecx, edx
00dd2d45 mov dword ptr [esi + 0x18], ecx
00dd2d48 mov dword ptr [esp + 0x1c], ecx
00dd2d4c test al, al
00dd2d4e jne 0xdd2d8e
00dd2d50 mov eax, dword ptr [esp + 0x30]
00dd2d54 test eax, eax
00dd2d56 jle 0xdd2d8e
00dd2d58 add eax, 3
00dd2d5b mov edx, eax
00dd2d5d and edx, 3
00dd2d60 sub eax, edx
00dd2d62 sub ecx, eax
00dd2d64 mov edx, ecx
00dd2d66 and edx, 3
00dd2d69 sub ecx, edx
00dd2d6b add eax, ecx
00dd2d6d mov dword ptr [esi + 0x18], ecx
00dd2d70 mov edx, ecx
00dd2d72 mov dword ptr [esp + 0x30], eax
00dd2d76 sub ebp, ecx
00dd2d78 mov eax, dword ptr [edx + ebp]
00dd2d7b mov dword ptr [edx], eax
00dd2d7d add edx, 4

FUNCTION 0xdcc3e0
00dcc3e0 sub esp, 0x20
00dcc3e3 push ebx
00dcc3e4 push esi
00dcc3e5 mov esi, dword ptr [esp + 0x2c]
00dcc3e9 mov edx, dword ptr [esi + 0x28]
00dcc3ec xor ebx, ebx
00dcc3ee push edi
00dcc3ef mov edi, ecx
00dcc3f1 cmp edx, ebx
00dcc3f3 jne 0xdcc434
00dcc3f5 mov eax, dword ptr [esi + 4]
00dcc3f8 cmp eax, ebx
00dcc3fa jne 0xdcc442
00dcc3fc cmp dword ptr [esi + 0x18], ebx
00dcc3ff jle 0xdcc442
00dcc401 mov edx, dword ptr [esi + 0x10]
00dcc404 mov ecx, dword ptr [esi]
00dcc406 mov dword ptr [esp + 0xc], ebx
00dcc40a mov dword ptr [esp + 0x10], ebx
00dcc40e mov dword ptr [esp + 0x14], edx
00dcc412 call 0xdcc330
00dcc417 mov dword ptr [esp + 0x18], eax
00dcc41b mov eax, dword ptr [esi + 0x14]
00dcc41e mov dword ptr [esp + 0x1c], ebx
00dcc422 mov dword ptr [esp + 0x20], ebx
00dcc426 mov dword ptr [esp + 0x24], eax
00dcc42a mov dword ptr [esp + 0x28], ebx
00dcc42e lea edx, [esp + 0xc]
00dcc432 mov ecx, edi
00dcc434 call 0xdb2830
00dcc439 pop edi
00dcc43a pop esi
00dcc43b pop ebx
00dcc43c add esp, 0x20
00dcc43f ret 4
00dcc442 mov ecx, dword ptr [esi + 0x10]
00dcc445 cmp ecx, ebx
00dcc447 jle 0xdcc4d7
00dcc44d mov edx, dword ptr [esi + 0xc]
00dcc450 cmp edx, 8
00dcc453 je 0xdcc4af
00dcc455 cmp edx, 0x10
00dcc458 je 0xdcc487
00dcc45a cmp edx, 0x20
00dcc45d jne 0xdcc4af
00dcc45f mov edx, dword ptr [esi + 0x20]
00dcc462 push edx
00dcc463 mov edx, dword ptr [esi + 0x24]
00dcc466 push ecx
00dcc467 mov ecx, dword ptr [esi + 8]
00dcc46a push ecx
00dcc46b mov ecx, dword ptr [esi + 0x18]
00dcc46e push edx
00dcc46f mov edx, dword ptr [esi + 0x14]
00dcc472 push ecx
00dcc473 push eax
00dcc474 push edx
00dcc475 mov edx, dword ptr [esi]
00dcc477 mov ecx, edi
00dcc479 call 0xdb3110
00dcc47e pop edi
00dcc47f pop esi
00dcc480 pop ebx
00dcc481 add esp, 0x20
00dcc484 ret 4
00dcc487 mov edx, dword ptr [esi + 0x20]
00dcc48a push edx
00dcc48b mov edx, dword ptr [esi + 0x24]
00dcc48e push ecx
00dcc48f mov ecx, dword ptr [esi + 8]
00dcc492 push ecx
00dcc493 mov ecx, dword ptr [esi + 0x18]
00dcc496 push edx
00dcc497 mov edx, dword ptr [esi + 0x14]
00dcc49a push ecx
00dcc49b push eax
00dcc49c push edx
00dcc49d mov edx, dword ptr [esi]
00dcc49f mov ecx, edi
00dcc4a1 call 0xdb3210
00dcc4a6 pop edi
00dcc4a7 pop esi
00dcc4a8 pop ebx
00dcc4a9 add esp, 0x20
00dcc4ac ret 4
00dcc4af mov edx, dword ptr [esi + 0x20]
00dcc4b2 push edx
00dcc4b3 mov edx, dword ptr [esi + 0x24]
00dcc4b6 push ecx
00dcc4b7 mov ecx, dword ptr [esi + 8]
00dcc4ba push ecx
00dcc4bb mov ecx, dword ptr [esi + 0x18]
00dcc4be push edx
00dcc4bf mov edx, dword ptr [esi + 0x14]
00dcc4c2 push ecx
00dcc4c3 push eax
00dcc4c4 push edx
00dcc4c5 mov edx, dword ptr [esi]
00dcc4c7 mov ecx, edi
00dcc4c9 call 0xdad720
00dcc4ce pop edi
00dcc4cf pop esi
00dcc4d0 pop ebx
00dcc4d1 add esp, 0x20
00dcc4d4 ret 4
00dcc4d7 mov ecx, dword ptr [esi + 0x24]
00dcc4da mov edx, dword ptr [esi + 0x18]
00dcc4dd push ecx
00dcc4de push edx
00dcc4df mov edx, dword ptr [esi]
00dcc4e1 push eax
00dcc4e2 mov eax, dword ptr [esi + 0x14]
00dcc4e5 push eax
00dcc4e6 mov ecx, edi
00dcc4e8 call 0xdb2db0
00dcc4ed pop edi
00dcc4ee pop esi
00dcc4ef pop ebx
00dcc4f0 add esp, 0x20
00dcc4f3 ret 4
00dcc4f6 int3 
00dcc4f7 int3 
00dcc4f8 int3 
00dcc4f9 int3 
00dcc4fa int3 
00dcc4fb int3 
00dcc4fc int3 
00dcc4fd int3 
00dcc4fe int3 
00dcc4ff int3 
00dcc500 push ebx
00dcc501 mov ebx, dword ptr [esp + 8]
00dcc505 push esi
00dcc506 push edi
00dcc507 mov edi, eax

FUNCTION 0xdb3460
00db3460 sub esp, 8
00db3463 mov eax, dword ptr [ecx + 0x3cc]
00db3469 mov dword ptr [esp + 4], eax
00db346d test eax, eax
00db346f jne 0xdb3473
00db3471 xor edx, edx
00db3473 push ebx
00db3474 mov ebx, dword ptr [ecx + 0x3d0]
00db347a mov eax, ebx
00db347c imul eax, edx
00db347f push ebp
00db3480 mov ebp, dword ptr [ecx + 0x1c]
00db3483 push esi
00db3484 push edi
00db3485 mov edi, dword ptr [ecx + 0x3c8]
00db348b add eax, edi
00db348d mov esi, eax
00db348f sub esi, edi
00db3491 mov dword ptr [ecx + 0x3dc], esi
00db3497 mov dword ptr [esp + 0x10], ebx
00db349b mov dword ptr [ecx + 0x3d8], edi
00db34a1 mov dword ptr [ecx + 0x3e0], edx
00db34a7 mov esi, ecx
00db34a9 cmp ebp, dword ptr [ecx + 0x20]
00db34ac jne 0xdb34b1
00db34ae mov esi, dword ptr [ecx + 4]
00db34b1 add eax, 3
00db34b4 mov ebp, eax
00db34b6 and ebp, 3
00db34b9 sub eax, ebp
00db34bb cmp eax, dword ptr [esi + 0x3c0]
00db34c1 jbe 0xdb34ea
00db34c3 mov ebx, dword ptr [esi + 0x14]
00db34c6 mov ebp, 4
00db34cb mov word ptr [ebx + 2], bp
00db34cf add dword ptr [esi + 0x14], 8
00db34d3 mov ebp, dword ptr [ebx]
00db34d5 and ebp, 0xffffff05
00db34db or ebp, 5
00db34de mov dword ptr [ebx], ebp
00db34e0 mov dword ptr [ebx + 4], eax
00db34e3 mov ebx, dword ptr [esp + 0x10]
00db34e7 mov dword ptr [esi + 0x14], eax
00db34ea xor eax, eax
00db34ec mov dword ptr [ecx + 0x3c8], eax
00db34f2 mov dword ptr [ecx + 0x3d0], eax
00db34f8 cmp edx, eax
00db34fa jle 0xdb350a
00db34fc push 1
00db34fe push ebx
00db34ff push edi
00db3500 push edx
00db3501 mov edx, dword ptr [esp + 0x24]
00db3505 call 0xdb2db0
00db350a pop edi
00db350b pop esi
00db350c pop ebp
00db350d pop ebx
00db350e add esp, 8
00db3511 ret 
00db3512 int3 
00db3513 int3 
00db3514 int3 
00db3515 int3 
00db3516 int3 
00db3517 int3 
00db3518 int3 
00db3519 int3 
00db351a int3 
00db351b int3 
00db351c int3 
00db351d int3 
00db351e int3 
00db351f int3 
00db3520 push ebp
00db3521 mov ebp, esp
00db3523 and esp, 0xfffffff0
00db3526 sub esp, 0x58
00db3529 movzx eax, byte ptr [ebp + 0xc]
00db352d movss xmm0, dword ptr [ebp + 8]
00db3532 push esi
00db3533 mov esi, dword ptr [ebp + 0x1c]
00db3536 push edi
00db3537 mov edi, ecx
00db3539 mov ecx, dword ptr [ebp + 0x10]
00db353c add eax, eax
00db353e and ecx, 1
00db3541 or eax, ecx
00db3543 mov ecx, dword ptr [ebp + 0x18]
00db3546 add eax, eax
00db3548 and edx, 1
00db354b or eax, edx
00db354d shl eax, 5
00db3550 mov edx, esi
00db3552 and edx, 0x1f
00db3555 or eax, edx
00db3557 push 0x40
00db3559 shl eax, 4
00db355c and ecx, 0xf
00db355f lea edx, [esp + 0x24]
00db3563 or eax, ecx
00db3565 push 0
00db3567 push edx
00db3568 mov dword ptr [esp + 0x1c], eax
00db356c movss dword ptr [esp + 0x20], xmm0
00db3572 call 0xe231d0
00db3577 mov ecx, dword ptr [ebp + 0x14]
00db357a add esp, 0xc
00db357d test ecx, ecx
00db357f je 0xdb359f
00db3581 test esi, esi
00db3583 jle 0xdb359f
00db3585 add esi, esi
00db3587 lea eax, [esp + 0x20]
00db358b lea edx, [esp + esi*8 + 0x20]
00db358f mov esi, eax
00db3591 sub ecx, esi
00db3593 mov esi, dword ptr [ecx + eax]
00db3596 mov dword ptr [eax], esi
00db3598 add eax, 4
00db359b cmp eax, edx
00db359d jb 0xdb3593
00db359f lea edx, [esp + 0x10]
00db35a3 mov ecx, edi
00db35a5 call 0xdb2a10
00db35aa pop edi
00db35ab pop esi
00db35ac mov esp, ebp
00db35ae pop ebp
00db35af ret 0x18
00db35b2 int3 
00db35b3 int3 
00db35b4 int3 
00db35b5 int3 
00db35b6 int3 
00db35b7 int3 
00db35b8 int3 
00db35b9 int3 
00db35ba int3 
00db35bb int3 
00db35bc int3 
00db35bd int3 
00db35be int3 
00db35bf int3 
00db35c0 push ebp
00db35c1 mov ebp, esp
00db35c3 and esp, 0xfffffff0
00db35c6 sub esp, 0x3d4
00db35cc push ebx
00db35cd push esi
00db35ce push edi
00db35cf mov edi, edx
00db35d1 mov eax, dword ptr [edi + 0x64]
00db35d4 shr eax, 0x17
00db35d7 and al, 0xf
00db35d9 mov dword ptr [esp + 0x18], edi
00db35dd mov esi, ecx
00db35df cmp al, 1
00db35e1 jle 0xdb3d64
00db35e7 mov eax, dword ptr [edi + 0x18]
00db35ea shr eax, 3
00db35ed and eax, 1
