Function at 0x3dc86a90
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x32c
mov eax, dword [0x3dce28a4]
push ebx
push esi
push edi
mov dword [esp + 0x334], eax
xor eax, eax
xor ebx, ebx
mov word [esp + 0x128], bx
mov ecx, 0x81
lea edi, [esp + 0x12a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x128]
push 0x3dce5a78
push eax
call fcn.3dcb11d1
lea ecx, [esp + 0x130]
push 0x3dcd1ee4
push ecx
call fcn.3dcb11a7
add esp, 0x10
lea edx, [esp + 0x128]
push 0x14
push edx
call fcn.3dcb12a6
mov ecx, dword [0x3dce5288]
add esp, 4
lea eax, [esp + eax*2 + 0x12c]
push eax
push ecx
push 0x3dce5288
call fcn.3dc6d040
lea edx, [esp + 0x128]
push 0x3dcd1ed8
push edx
call fcn.3dcb11a7
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x92], eax
mov dword [esp + 0xba], ecx
mov dword [esp + 0x96], eax
mov dword [esp + 0xbe], ecx
mov dword [esp + 0x9a], eax
mov dword [esp + 0xc2], ecx
mov dword [esp + 0x9e], eax
mov dword [esp + 0xc6], ecx
mov dword [esp + 0xa2], eax
mov dword [esp + 0xca], ecx
mov dword [esp + 0xa6], eax
mov dword [esp + 0xce], ecx
add esp, 8
xor edx, edx
mov dword [esp + 0xa2], eax
mov dword [esp + 0xca], ecx
mov dword [esp + 0xda], edx
mov dword [esp + 0xa6], eax
mov dword [esp + 0xce], ecx
mov dword [esp + 0xaa], eax
mov dword [esp + 0xd2], ecx
mov dword [esp + 0xde], edx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov word [esp + 0x88], bx
mov word [esp + 0xae], ax
mov word [esp + 0xb0], bx
mov word [esp + 0xd6], cx
mov word [esp + 0xd8], bx
mov dword [esp + 0xe2], edx
mov edi, dword [0x3dcce358]
mov dword [esp + 0xe6], edx
mov dword [esp + 0xea], edx
mov dword [esp + 0xee], edx
mov dword [esp + 0xf2], edx
mov dword [esp + 0xf6], edx
mov dword [esp + 0xfa], edx
mov word [esp + 0xfe], dx
mov dword [esp + 0x6c], ebx
mov dword [0x3dce575c], ebx
call edi
push 0x3dce5288
mov dword [0x3dce5738], eax
call fcn.3dc71220
push 0x3dce5288
mov dword [0x3dce5744], eax
call fcn.3dc712c0
push 0x3dce5288
mov dword [0x3dce5748], eax
call fcn.3dc70dc0
push ebx
push 0x3dce573c
push 0x3dce5288
mov dword [0x3dce5740], eax
call fcn.3dc78630
push 0x3dcd1ec8
lea eax, [esp + 0x12c]
push eax
call fcn.3dc7fef0
cmp dword [0x3dce60b8], ebx
je 0x3dc86cd7
mov ecx, dword [0x3dce60e4]
push ecx
call fcn.3dca80a0
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc88604
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc88604
cmp dword [0x3dce5294], ebx
je 0x3dc88604
push 0x3dcd1eb8
lea edx, [esp + 0x12c]
push edx
call fcn.3dc7fef0
call fcn.3dcab4d0
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc88604
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc88604
cmp dword [0x3dce5294], ebx
je 0x3dc88604
push 0x3dcd1ea8
lea eax, [esp + 0x12c]
push eax
call fcn.3dc7fef0
cmp dword [0x3dce6154], ebx
je 0x3dc86d94
mov ecx, dword [0x3dce61a8]
push ecx
push 0x3dce5288
call fcn.3dc7a1d0
test eax, eax
je 0x3dc86d94
mov edx, dword [0x3dce61a8]
push edx
push 0x3dce5288
call fcn.3dc77080
test eax, eax
jne 0x3dc86dfc
cmp dword [0x3dce5294], ebx
je 0x3dc86dfc
fild dword [0x3dce4aec]
push 1
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push 0x3dce5288
call fcn.3dc78430
fild dword [0x3dcdf1c0]
fcompp
fnstsw ax
test ah, 5
jp 0x3dc86dfc
fild dword [0x3dce4aec]
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc80360
push 1
push 0x3dce5288
call fcn.3dc7b810
cmp dword [0x3dce5294], ebx
je 0x3dc88604
jmp 0x3dc86e20
mov edi, dword [0x3dcce358]
xor ebx, ebx
mov edi, edi
push 0x3dcd1e94
lea eax, [esp + 0x12c]
push eax
mov dword [esp + 0x78], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x54], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x6c], ebx
call fcn.3dc7fef0
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885e3
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc885e3
cmp dword [0x3dce5294], ebx
je 0x3dc885e3
cmp dword [esp + 0x6c], ebx
je 0x3dc86ed8
push 0x1388
push 0x3dce5288
mov dword [esp + 0x74], ebx
call fcn.3dc6cc40
push 0x3dcd1eb8
lea ecx, [esp + 0x12c]
push ecx
call fcn.3dc7fef0
call fcn.3dcab4d0
push 0x3dcd1e88
lea edx, [esp + 0x12c]
push edx
call fcn.3dc7fef0
fild dword [0x3dcdf1c0]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc803d0
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885eb
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc885eb
cmp dword [0x3dce5294], ebx
je 0x3dc885eb
push 0x3dce5288
call fcn.3dc71430
test eax, eax
jne 0x3dc885eb
push 0x3dcd1e7c
lea eax, [esp + 0x12c]
push eax
call fcn.3dc7fef0
call fcn.3dc83810
test eax, eax
je 0x3dc86fcd
push 0x3dce48b8
call fcn.3dcb12a6
add esp, 4
test eax, eax
jbe 0x3dc86fcd
push ebx
push 0x3dce5288
call fcn.3dc7b810
push 0x3dcd1e6c
call fcn.3dc8ad90
add esp, 4
push 0x3dce48b8
call fcn.3dca80a0
push 1
push 0x3dce5288
call fcn.3dc7b810
push 0x3dce5288
call fcn.3dc70a00
test eax, eax
je 0x3dc870e9
push ebx
lea ecx, [esp + 0x88]
push ecx
push 0x3dce5288
call fcn.3dc70ab0
push eax
push 0x3dce5288
call fcn.3dc70680
mov esi, eax
cmp esi, ebx
je 0x3dc870e9
xor edx, edx
mov dword [esp + 0x102], edx
mov dword [esp + 0x106], edx
mov dword [esp + 0x10a], edx
mov dword [esp + 0x10e], edx
mov dword [esp + 0x112], edx
mov dword [esp + 0x116], edx
push 0x14
mov dword [esp + 0x11e], edx
lea eax, [esp + 0x104]
push eax
mov dword [esp + 0x126], edx
push esi
mov dword [esp + 0x12e], edx
push 0x3dce5288
mov word [esp + 0x110], bx
mov word [esp + 0x136], dx
call fcn.3dc77940
lea ecx, [esp + 0x100]
push 0x3dcd0bc4
push ecx
call fcn.3dcb1f1f
add esp, 8
test eax, eax
je 0x3dc87096
push 0xf
push 0x3dce5288
call fcn.3dc70810
test eax, eax
jne 0x3dc870e9
push esi
push 0x3dce5288
call fcn.3dc70280
test eax, eax
jne 0x3dc870c8
cmp dword [0x3dce5294], ebx
je 0x3dc870c8
push 0x64
push 0x3dce5288
call fcn.3dc6cc40
push esi
push 0x3dce5288
call fcn.3dc70280
test eax, eax
je 0x3dc870a5
mov edx, dword [esp + 0x84]
push edx
push 0x3dce5288
call fcn.3dc77550
push 0x7d0
push 0x3dce5288
call fcn.3dc6cc40
push 0x3dce5288
call fcn.3dc70b60
test eax, eax
je 0x3dc871f1
push ebx
lea eax, [esp + 0x84]
push eax
push 0x3dce5288
call fcn.3dc70b60
push eax
push 0x3dce5288
call fcn.3dc70680
mov esi, eax
cmp esi, ebx
je 0x3dc871f1
push esi
push 0x3dce5288
call fcn.3dc70280
test eax, eax
jne 0x3dc87155
cmp dword [0x3dce5294], ebx
je 0x3dc87155
push 0x64
push 0x3dce5288
call fcn.3dc6cc40
push esi
push 0x3dce5288
call fcn.3dc70280
test eax, eax
je 0x3dc87132
mov ecx, dword [esp + 0x80]
push ecx
push 0x3dce5288
call fcn.3dc77550
call edi
push 0x3dce5288
mov esi, eax
call fcn.3dc70b60
test eax, eax
je 0x3dc871ad
lea esp, [esp]
cmp dword [0x3dce60bc], ebx
jne 0x3dc871ad
call edi
sub eax, esi
cmp eax, 0xbb8
jae 0x3dc871ad
push 0x64
push 0x3dce5288
call fcn.3dc6cc40
push 0x3dce5288
call fcn.3dc70b60
test eax, eax
jne 0x3dc87180
push 0x3dce5288
call fcn.3dc70840
test eax, eax
je 0x3dc871e2
jmp 0x3dc871c0
cmp dword [0x3dce60bc], ebx
jne 0x3dc871e2
push 0x64
push 0x3dce5288
call fcn.3dc6cc40
push 0x3dce5288
call fcn.3dc70840
test eax, eax
jne 0x3dc871c0
push 0x3e8
push 0x3dce5288
call fcn.3dc6cc40
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885eb
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc885eb
cmp dword [0x3dce5294], ebx
je 0x3dc885eb
push 0x3dce5288
call fcn.3dc71430
test eax, eax
jne 0x3dc885eb
push 0x3dcd1e5c
lea edx, [esp + 0x12c]
push edx
call fcn.3dc7fef0
call fcn.3dc83160
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885eb
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc885eb
cmp dword [0x3dce5294], ebx
je 0x3dc885eb
push 0x3dce5288
call fcn.3dc71430
test eax, eax
jne 0x3dc885eb
cmp dword [0x3dce5344], ebx
je 0x3dc87309
cmp dword [0x3dce5348], ebx
je 0x3dc872ac
push 0x3dce5288
call fcn.3dc6da20
test eax, eax
je 0x3dc87309
push 0x3dcd1e50
push 0x3dce5288
call fcn.3dc7ee00
push eax
push 0x3dce5288
call fcn.3dc7e600
test eax, eax
je 0x3dc872d1
push 0x3dcd1e50
jmp 0x3dc872f4
push 0x3dcd1e48
push 0x3dce5288
call fcn.3dc7ee00
push eax
push 0x3dce5288
call fcn.3dc7e600
test eax, eax
je 0x3dc87309
push 0x3dcd1e48
push 0x3dce5288
call fcn.3dc7ee00
push eax
push 0x3dce5288
call fcn.3dc7eaf0
push 0x3dcd1ea8
lea eax, [esp + 0x12c]
push eax
call fcn.3dc7fef0
cmp dword [0x3dce6154], ebx
je 0x3dc87351
mov ecx, dword [0x3dce61a8]
push ecx
push 0x3dce5288
call fcn.3dc7a1d0
test eax, eax
je 0x3dc87351
mov edx, dword [0x3dce61a8]
push edx
push 0x3dce5288
call fcn.3dc77080
test eax, eax
jne 0x3dc873eb
fild dword [0x3dce4aec]
push 1
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push 0x3dce5288
call fcn.3dc78430
fild dword [0x3dcdf1c0]
fcompp
fnstsw ax
test ah, 5
jp 0x3dc873eb
push 0x3dce5288
call fcn.3dc76df0
fild dword [0x3dce4aec]
test eax, eax
je 0x3dc873cc
push ebx
push 0x1f4
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push 0x3dce5288
call fcn.3dc78fd0
jmp 0x3dc873eb
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc80360
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885eb
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc885eb
cmp dword [0x3dce5294], ebx
je 0x3dc885eb
push 0x3dce5288
call fcn.3dc71430
test eax, eax
jne 0x3dc885eb
push 0x3dcd1e3c
lea eax, [esp + 0x12c]
push eax
call fcn.3dc7fef0
mov ecx, dword [0x3dce4b0c]
mov edx, dword [0x3dce4b04]
push ecx
push edx
call fcn.3dc62c30
mov eax, dword [0x3dce4b10]
mov ecx, dword [0x3dce4b08]
push eax
push ecx
call fcn.3dc62c30
push 0x3dcd1e30
lea edx, [esp + 0x12c]
push edx
call fcn.3dc7fef0
call fcn.3dc80740
call fcn.3dc80ec0
cmp dword [0x3dce53ac], ebx
je 0x3dc874b3
call edi
sub eax, dword [0x3dce53b0]
cmp eax, 0xbb8
jbe 0x3dc874b3
push 0x3dce5288
call fcn.3dc75670
push 0x3dce5288
call fcn.3dc7b350
call edi
mov dword [0x3dce53b0], eax
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885eb
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc885eb
cmp dword [0x3dce5294], ebx
je 0x3dc885eb
push 0x3dce5288
call fcn.3dc71430
test eax, eax
jne 0x3dc885eb
cmp dword [0x3dce6154], ebx
je 0x3dc875c0
mov eax, dword [0x3dce61a8]
push eax
push 0x3dce5288
call fcn.3dc7a1d0
test eax, eax
je 0x3dc875c0
mov ecx, dword [0x3dce61a8]
push ecx
push 0x3dce5288
call fcn.3dc77080
test eax, eax
je 0x3dc875c0
lea edx, [esp + 0x68]
push edx
mov edx, dword [0x3dce61a8]
lea eax, [esp + 0x64]
push eax
lea ecx, [esp + 0x60]
push ecx
push edx
push 0x3dce5288
call fcn.3dc77080
push eax
push 0x3dce5288
call fcn.3dc6f760
test eax, eax
je 0x3dc8764d
fild dword [0x3dcdf1c0]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x64]
fstp dword [esp]
push eax
push ecx
push edx
call fcn.3dc83f30
fild dword [0x3dcdf1c0]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x64]
fstp dword [esp]
push eax
push ecx
push edx
call fcn.3dc807c0
fild dword [0x3dcdf1c0]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x64]
fstp dword [esp]
push eax
push ecx
push edx
jmp 0x3dc87648
fild dword [0x3dcdf1c0]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc83f30
fild dword [0x3dcdf1c0]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc807c0
fild dword [0x3dcdf1c0]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc80fa0
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885eb
push ebx
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc885eb
cmp dword [0x3dce5294], ebx
je 0x3dc885eb
push 0x3dce5288
call fcn.3dc71430
test eax, eax
jne 0x3dc885eb
mov eax, dword [0x3dcdf1c0]
fild dword [0x3dce4aec]
push eax
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc65960
push 0x3dcd1e20
lea ecx, [esp + 0x12c]
push ecx
call fcn.3dc7fef0
lea edx, [esp + 0x1c]
push edx
push 0x3dce5288
call fcn.3dc6e350
cmp eax, ebx
mov dword [esp + 0x2c], eax
je 0x3dc879d3
mov eax, dword [0x3dce6094]
test eax, eax
je 0x3dc879d3
jmp 0x3dc87700
mov eax, dword [0x3dce5294]
test eax, eax
je 0x3dc879d3
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc879d3
mov eax, dword [esp + 0x1c]
xor edi, edi
xor ebx, ebx
test eax, eax
mov dword [esp + 0x78], 0x4b189680
jbe 0x3dc879d3
jmp 0x3dc87740
mov eax, dword [0x3dce5294]
test eax, eax
je 0x3dc87899
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc87899
mov eax, dword [esp + 0x2c]
push ebx
push eax
push 0x3dce5288
call fcn.3dc6fc50
mov esi, eax
test esi, esi
je 0x3dc8788c
lea esp, [esp]
push esi
push 0x3dce5288
call fcn.3dc70060
cmp eax, 2
jne 0x3dc87875
push 0x14
lea ecx, [esp + 0xdc]
push ecx
push esi
push 0x3dce5288
call fcn.3dc6fd90
mov eax, dword [0x3dce6098]
test eax, eax
je 0x3dc877cc
lea edx, [esp + 0xd8]
push edx
push 0x3dce60a8
call fcn.3dc7e240
test eax, eax
je 0x3dc87875
push esi
push 0x3dce5288
call fcn.3dc7ce00
test eax, eax
je 0x3dc87875
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x34]
push ecx
lea edx, [esp + 0x40]
push edx
push esi
push 0x3dce5288
call fcn.3dc6ff80
test eax, eax
je 0x3dc87875
fild dword [0x3dce4aec]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x38]
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push eax
push ecx
push edx
push 0x3dce5288
call fcn.3dc78580
fild dword [0x3dcdf1c0]
fcompp
fnstsw ax
test ah, 5
jnp 0x3dc87875
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x38]
push 1
push eax
push ecx
push edx
push 0x3dce5288
call fcn.3dc78430
fcom dword [esp + 0x78]
fnstsw ax
test ah, 5
jp 0x3dc87873
fstp dword [esp + 0x78]
mov edi, esi
jmp 0x3dc87875
fstp st(0)
push 0
push esi
push 0x3dce5288
call fcn.3dc6fc50
mov esi, eax
test esi, esi
jne 0x3dc87780
mov eax, dword [esp + 0x1c]
inc ebx
cmp ebx, eax
jb 0x3dc87740
test edi, edi
je 0x3dc879d3
push 0
lea eax, [esp + 0x44]
push eax
lea ecx, [esp + 0x50]
push ecx
push edi
push 0x3dce5288
call fcn.3dc6feb0
test eax, eax
je 0x3dc879c6
push 0x14
lea edx, [esp + 0xdc]
push edx
push edi
push 0x3dce5288
call fcn.3dc6fd90
test eax, eax
je 0x3dc879c6
push edi
push 0x3dce5288
call fcn.3dc7ce00
test eax, eax
je 0x3dc879c6
mov eax, dword [0x3dce5294]
test eax, eax
je 0x3dc87987
lea ecx, [ecx]
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc87987
fild dword [0x3dce4aec]
push 1
push 0x186a0
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc80970
test eax, eax
jne 0x3dc87987
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x48]
lea eax, [esp + 0xd8]
push eax
push ecx
push edx
push 0x3dce5288
call fcn.3dc700e0
test eax, eax
je 0x3dc87987
push 0
push edi
push 0x3dce5288
call fcn.3dc772f0
push 0x1f4
push 0x3dce5288
call fcn.3dc6cc40
mov eax, dword [0x3dce5294]
test eax, eax
jne 0x3dc87900
fild dword [0x3dce4aec]
push 1
push 0x186a0
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc80970
test eax, eax
jne 0x3dc879d3
push 0xc8
push 0x3dce5288
call fcn.3dc6cc40
mov eax, dword [0x3dce6094]
test eax, eax
jne 0x3dc87700
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885eb
push 0
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc885eb
mov eax, dword [0x3dce5294]
test eax, eax
je 0x3dc885eb
push 0x3dce5288
call fcn.3dc71430
test eax, eax
jne 0x3dc885eb
push 0x3dcd1e10
lea eax, [esp + 0x12c]
push eax
call fcn.3dc7fef0
fild dword [0x3dce4aec]
mov ecx, dword [0x3dcdf1c0]
mov edx, dword [0x3dce5320]
mov eax, dword [0x3dce4b00]
push ecx
mov ecx, dword [esp + 0x28]
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push edx
mov edx, dword [esp + 0x34]
push eax
push 0x3dce4b18
push ecx
push edx
call fcn.3dc86080
mov esi, eax
mov eax, dword [0x3dce6154]
test eax, eax
je 0x3dc87d17
mov eax, dword [0x3dce61a8]
push eax
push 0x3dce5288
call fcn.3dc7a1d0
test eax, eax
je 0x3dc87d17
mov ecx, dword [0x3dce61a8]
push ecx
push 0x3dce5288
call fcn.3dc77080
test eax, eax
je 0x3dc87d17
push 0x3dce5288
call fcn.3dc6de80
or eax, edx
jne 0x3dc87b53
mov eax, dword [0x3dce6158]
test eax, eax
je 0x3dc87b53
lea edx, [esp + 0x74]
push edx
mov edx, dword [0x3dce61a8]
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0x44]
push ecx
push edx
push 0x3dce5288
call fcn.3dc7a1d0
push eax
push 0x3dce5288
call fcn.3dc72370
test eax, eax
je 0x3dc87b53
push 0x3dce5288
call fcn.3dc76df0
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x44]
test eax, eax
mov eax, dword [esp + 0x74]
je 0x3dc87ce6
push 1
push eax
push ecx
push edx
push 0x3dce5288
call fcn.3dc78430
fcomp dword [0x3dcd1e0c]
fnstsw ax
test ah, 0x41
jne 0x3dc87b53
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x3c]
push eax
push ecx
push edx
push 0x3dce5288
call fcn.3dc78b40
test esi, esi
je 0x3dc885dc
push esi
push 0x3dce5288
call fcn.3dc6cff0
push edx
push eax
push 0x3dce5288
call fcn.3dc76540
lea edx, [esp + 0x5c]
push edx
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x78]
push ecx
push 0x3dce5288
call fcn.3dc70cc0
mov edi, dword [0x3dcce358]
call edi
push 0x3dcd1e00
lea edx, [esp + 0x12c]
xor ebx, ebx
push edx
mov dword [esp + 0x34], ebx
call fcn.3dc7fef0
call edi
mov dword [esp + 0x50], eax
mov eax, 1
mov dword [0x3dce53a8], eax
mov dword [0x3dce1c88], eax
mov eax, dword [0x3dce5394]
test eax, eax
je 0x3dc87bf0
push 0x3dce5288
call fcn.3dc787d0
test eax, eax
je 0x3dc87bf0
push 0x3dce5288
call fcn.3dc6de80
push edx
push eax
push 0x3dce5288
call fcn.3dc78900
lea ecx, [ecx]
mov eax, dword [0x3dce5294]
test eax, eax
je 0x3dc88580
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc88580
push 0
push 0x3dce5288
call fcn.3dc6dc40
test eax, eax
je 0x3dc88580
push 0x3dce5288
call fcn.3dc6de80
mov esi, edx
mov dword [esp + 0x20], eax
or eax, esi
mov dword [esp + 0x24], esi
je 0x3dc88524
mov eax, dword [0x3dce6154]
test eax, eax
je 0x3dc87cac
mov eax, dword [0x3dce61a8]
push eax
push 0x3dce5288
call fcn.3dc7a1d0
test eax, eax
je 0x3dc87cac
mov ecx, dword [0x3dce61a8]
push ecx
push 0x3dce5288
call fcn.3dc77080
test eax, eax
je 0x3dc87cac
call edi
sub eax, dword [esp + 0x50]
cmp eax, 0x5dc
jbe 0x3dc87cac
call edi
mov edx, dword [0x3dce61a8]
push edx
push 0x3dce5288
mov dword [esp + 0x58], eax
call fcn.3dc7a1d0
push eax
push 0x3dce5288
call fcn.3dc722c0
push edx
push eax
push 0x3dce5288
call fcn.3dc76fb0
mov ecx, esi
and ecx, 0x80000000
xor eax, eax
or eax, ecx
je 0x3dc88427
lea eax, [esp + 0x4c]
push eax
push 0x3dce5288
call fcn.3dc6e250
test eax, eax
jne 0x3dc87db5
push 0x64
push 0x3dce5288
call fcn.3dc6cc40
jmp 0x3dc87bf0
push 0
push eax
push ecx
push edx
push 0x3dce5288
call fcn.3dc78430
fcomp dword [0x3dcd1e0c]
fnstsw ax
test ah, 0x41
jne 0x3dc87b53
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x3c]
push 0
push eax
push ecx
jmp 0x3dc87b49
test esi, esi
jne 0x3dc87b5b
mov eax, dword [0x3dce531c]
test eax, eax
je 0x3dc885dc
push 0x3dce5288
call fcn.3dc76df0
test eax, eax
je 0x3dc884c0
fild dword [0x3dce4aec]
push 1
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push 0x3dce5288
call fcn.3dc78430
fcomp qword [0x3dcd0c18]
fnstsw ax
test ah, 0x41
jne 0x3dc885dc
fild dword [0x3dce4aec]
push esi
push 0x1f4
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push 0x3dce5288
call fcn.3dc78fd0
push 0x12c
jmp 0x3dc885ed
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x24]
push edx
push ecx
push eax
push 0x3dce5288
call fcn.3dc6fcc0
mov edi, eax
xor esi, esi
cmp edi, esi
je 0x3dc87e4a
push edi
push 0x3dce5288
call fcn.3dc6f160
test eax, eax
jne 0x3dc87e4a
push 0x14
lea edx, [esp + 0x8c]
push edx
push edi
push 0x3dce5288
call fcn.3dc6f9f0
lea eax, [esp + 0x88]
push 0x3dccf374
push eax
call fcn.3dcb1603
add esp, 8
test eax, eax
je 0x3dc87e4a
lea ecx, [esp + 0x88]
push 0x3dccf368
push ecx
call fcn.3dcb1603
add esp, 8
test eax, eax
je 0x3dc87e4a
lea edx, [esp + 0x88]
push 0x3dccf358
push edx
call fcn.3dcb1603
add esp, 8
test eax, eax
jne 0x3dc883bf
mov eax, dword [0x3dce5320]
cmp eax, esi
je 0x3dc87e62
push eax
push edi
call fcn.3dc80d70
test eax, eax
jne 0x3dc883d3
cmp dword [0x3dce5324], esi
je 0x3dc87e88
call dword [0x3dcce358]
sub eax, dword [esp + 0x50]
mov ecx, dword [0x3dce1c68]
imul ecx, ecx, 0x3e8
cmp eax, ecx
jae 0x3dc883fb
push ebx
push 0x3b
mov ecx, 0x3dce53b4
call fcn.3dc64130
mov esi, eax
cmp esi, 0xffffffff
jne 0x3dc87eb5
test ebx, ebx
je 0x3dc8852b
xor ebx, ebx
push ebx
push 0x3b
mov ecx, 0x3dce53b4
call fcn.3dc64130
mov esi, eax
mov eax, dword [0x3dce5310]
test eax, eax
je 0x3dc87ee5
test ebx, ebx
jne 0x3dc87ee5
mov eax, dword [esp + 0x64]
test eax, eax
je 0x3dc87ee5
lea ebx, [esi + 1]
push ebx
push 0x3b
mov ecx, 0x3dce53b4
call fcn.3dc64130
mov esi, eax
cmp esi, 0xffffffff
je 0x3dc8853a
mov edx, esi
sub edx, ebx
push edx
push ebx
lea eax, [esp + 0x84]
push eax
mov ecx, 0x3dce53b4
call fcn.3dc64510
mov ecx, dword [eax]
push ecx
lea edx, [esp + 0xb4]
push edx
call fcn.3dcb11d1
add esp, 8
lea ecx, [esp + 0x7c]
call fcn.3dc62460
fild dword [0x3dcdf1c0]
sub esp, 0x10
lea ebx, [esi + 1]
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc803d0
fild dword [0x3dcdf1c0]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc80fa0
push 0x3dce5288
call fcn.3dc6de80
mov dword [esp + 0x20], eax
or eax, edx
mov dword [esp + 0x24], edx
je 0x3dc88549
push edi
push 0x3dce5288
call fcn.3dc6cff0
xor eax, eax
and edx, 0x80000000
or eax, edx
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x20]
push edx
push edi
push 0x3dce5288
je 0x3dc87fc7
call fcn.3dc6f850
jmp 0x3dc87fcc
call fcn.3dc6f760
mov eax, dword [0x3dce6154]
test eax, eax
je 0x3dc8800b
mov ecx, 0x3dce61a8
call fcn.3dc6bc10
push eax
push 0x3dce5288
call fcn.3dc7a1d0
test eax, eax
je 0x3dc8800b
mov ecx, 0x3dce61a8
call fcn.3dc6bc10
push eax
push 0x3dce5288
call fcn.3dc77080
test eax, eax
jne 0x3dc88096
fild dword [0x3dce4aec]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push eax
push ecx
push edx
push 0x3dce5288
call fcn.3dc78580
fild dword [0x3dcdf1c0]
fcompp
fnstsw ax
test ah, 5
jnp 0x3dc88550
fild dword [0x3dce4aec]
push 1
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push 0x3dce5288
call fcn.3dc78430
fild dword [0x3dcdf1c0]
fcompp
fnstsw ax
test ah, 5
jnp 0x3dc8855f
call fcn.3dc80ec0
push 0x3dce5288
call fcn.3dc6de80
mov dword [esp + 0x20], eax
or eax, edx
mov dword [esp + 0x24], edx
je 0x3dc8856e
mov eax, dword [0x3dce534c]
test eax, eax
je 0x3dc88171
cmp dword [esp + 0x2c], 4
jae 0x3dc88171
push 0x14
lea eax, [esp + 0x8c]
push eax
push edi
push 0x3dce5288
call fcn.3dc6f9f0
lea ecx, [esp + 0x88]
push 0x3dcd19cc
push ecx
call fcn.3dcb1f1f
add esp, 8
test eax, eax
jne 0x3dc88114
lea edx, [esp + 0x88]
push 0x3dcd19c0
push edx
call fcn.3dcb1f1f
add esp, 8
test eax, eax
je 0x3dc88171
fild dword [0x3dcdf1c0]
mov eax, dword [0x3dce53d8]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push 0
push eax
push 0x3dce5288
call fcn.3dc7ee00
push eax
call fcn.3dc816b0
inc dword [esp + 0x2c]
push 0x64
push 0x3dce5288
call fcn.3dc6cc40
mov edi, dword [0x3dcce358]
jmp 0x3dc87bf0
mov eax, dword [0x3dce5328]
test eax, eax
je 0x3dc881ec
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
push 1
push ecx
push edx
push eax
push 0x3dce5288
call fcn.3dc78430
fild dword [0x3dce532c]
fcompp
fnstsw ax
test ah, 1
jne 0x3dc881ec
fild dword [0x3dcdf1c0]
mov ecx, dword [0x3dce5320]
mov edx, dword [0x3dce53cc]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push ecx
push edx
push 0x3dce5288
call fcn.3dc7ee00
push eax
call fcn.3dc816b0
mov eax, dword [0x3dce5330]
test eax, eax
je 0x3dc88266
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 1
push eax
push ecx
push edx
push 0x3dce5288
call fcn.3dc78430
fild dword [0x3dce5334]
fcompp
fnstsw ax
test ah, 1
jne 0x3dc88266
fild dword [0x3dcdf1c0]
mov eax, dword [0x3dce5320]
mov ecx, dword [0x3dce53d0]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push eax
push ecx
push 0x3dce5288
call fcn.3dc7ee00
push eax
call fcn.3dc816b0
mov eax, dword [0x3dce5338]
test eax, eax
je 0x3dc882e0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
push 1
push edx
push eax
push ecx
push 0x3dce5288
call fcn.3dc78430
fild dword [0x3dce533c]
fcompp
fnstsw ax
test ah, 0x41
jp 0x3dc882e0
fild dword [0x3dcdf1c0]
mov edx, dword [0x3dce5320]
mov eax, dword [0x3dce53d4]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push edx
push eax
push 0x3dce5288
call fcn.3dc7ee00
push eax
call fcn.3dc816b0
mov ecx, dword [0x3dce5320]
push ecx
push edi
call fcn.3dc81f40
test eax, eax
jne 0x3dc88379
lea edx, [esp + 0xb0]
push edx
lea eax, [esp + 0x12c]
push eax
call fcn.3dc7fef0
lea ecx, [esp + 0xb0]
push 0x3dcd18a8
push ecx
call fcn.3dcb1603
fild dword [0x3dcdf1c0]
add esp, 8
sub esp, 0x10
test eax, eax
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
jne 0x3dc8835b
mov edx, dword [0x3dce5320]
push edx
call fcn.3dc81bb0
jmp 0x3dc88379
mov eax, dword [0x3dce5320]
push eax
lea ecx, [esp + 0xc4]
push ecx
push 0x3dce5288
call fcn.3dc7ee00
push eax
call fcn.3dc816b0
mov eax, dword [0x3dce53b4]
mov ecx, dword [eax - 0xc]
test ecx, ecx
jl 0x3dc8815a
lea edx, [esp + 0xb0]
push edx
push eax
call fcn.3dcb1f1f
add esp, 8
test eax, eax
je 0x3dc8815a
sub eax, dword [0x3dce53b4]
sar eax, 1
test eax, eax
jne 0x3dc8815a
mov dword [esp + 0x64], 1
jmp 0x3dc8815a
push 0x3dcd1df0
lea eax, [esp + 0x12c]
push eax
call fcn.3dc7fef0
jmp 0x3dc88433
push 0x3dcd1de0
lea ecx, [esp + 0x12c]
push ecx
call fcn.3dc7fef0
push esi
push esi
push 0x3dce5288
call fcn.3dc76540
push 0x64
call dword [0x3dcce360]
jmp 0x3dc88433
push 0x3dcd1dd0
lea edx, [esp + 0x12c]
push edx
call fcn.3dc7fef0
push esi
push esi
push 0x3dce5288
call fcn.3dc76540
push 0x64
push 0x3dce5288
call fcn.3dc6cc40
jmp 0x3dc88433
push 0x3dce5288
call fcn.3dc78340
xor esi, esi
push 0x3dcd1e94
lea eax, [esp + 0x12c]
push eax
mov dword [esp + 0x78], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x54], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x6c], esi
call fcn.3dc7fef0
push 0x3dce5288
call fcn.3dc762c0
test eax, eax
je 0x3dc885e3
mov edi, dword [0x3dcce358]
xor ebx, ebx
jmp 0x3dc86ea0
fild dword [0x3dce4ae8]
push 0
push 0
sub esp, 8
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push 0x3dce5288
call fcn.3dc78430
fcomp qword [0x3dcd0c18]
fnstsw ax
test ah, 0x41
jne 0x3dc885dc
fild dword [0x3dce4aec]
sub esp, 0xc
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
call fcn.3dc80360
push 0x12c
jmp 0x3dc885ed
push 0x3dcd1dc0
jmp 0x3dc88573
push 0x3dcd1db0
lea edx, [esp + 0x12c]
push edx
jmp 0x3dc8857b
push 0x3dcd1da0
lea eax, [esp + 0x12c]
push eax
jmp 0x3dc8857b
push 0x3dcd1d90
jmp 0x3dc88573
push 0x3dcd1d7c
lea edx, [esp + 0x12c]
push edx
jmp 0x3dc8857b
push 0x3dcd1d68
lea eax, [esp + 0x12c]
push eax
jmp 0x3dc8857b
push 0x3dcd1d54
lea ecx, [esp + 0x12c]
push ecx
call fcn.3dc7fef0
push 0x3dcd1d40
lea edx, [esp + 0x12c]
push edx
mov dword [0x3dce53a8], 0
call fcn.3dc7fef0
fild dword [0x3dcdf1c0]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
push 0
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x3dce4aec]
fstp dword [esp + 8]
fild dword [0x3dce4ae8]
fstp dword [esp + 4]
fild dword [0x3dce4ae4]
fstp dword [esp]
push eax
push ecx
push edx
call fcn.3dc827f0
push 0x12c
jmp 0x3dc885ed
mov dword [esp + 0x6c], 1
push 0x64
push 0x3dce5288
call fcn.3dc6cc40
mov eax, dword [0x3dce5294]
test eax, eax
jne 0x3dc86e16
mov ecx, dword [esp + 0x334]
xor eax, eax
call fcn.3dcb135c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4