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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x78
push esi
mov esi, dword [ebp + 0xc]
test esi, esi
push edi
je 0x55d4e3
mov eax, dword [esi + 0x140]
test eax, eax
jle 0x55d4e3
mov eax, dword [esi + 0x178]
test eax, eax
jle 0x55d4e3
mov eax, dword [esi + 0x150]
cmp eax, 2
je 0x55ccb4
cmp eax, 1
jne 0x55d4e3
mov eax, dword [esi + 0x14c]
test eax, eax
je 0x55d4e3
lea ecx, [esi + 0x158]
mov dword [esp + 0x14], ecx
call fcn.00403980
test al, al
je 0x55d4e3
lea ecx, [esi + 0x168]
mov dword [esp + 0x18], ecx
call fcn.00403980
test al, al
je 0x55d4e3
lea ecx, [esi + 0x180]
mov dword [esp + 0x34], ecx
call fcn.00403980
test al, al
je 0x55d4e3
lea ecx, [esi + 0x190]
mov dword [esp + 0x38], ecx
call fcn.00403980
test al, al
je 0x55d4e3
lea ecx, [esi + 0x1a0]
mov dword [esp + 0x3c], ecx
call fcn.00403980
test al, al
je 0x55d4e3
lea ecx, [esp + 0x50]
call fcn.0055bc10
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
xor edx, edx
shr eax, 1
xor edi, edi
cmp eax, edx
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], edx
mov byte [esp + 0x78], dl
jbe 0x55cd7d
mov ecx, dword [ebp + 8]
lea esi, [ecx + 4]
mov ecx, dword [esi]
mov dword [esp + 0xc], esi
lea esp, [esp]
cmp word [ecx], dx
ja 0x55cd92
inc edi
add ecx, 0x30
cmp edi, eax
jb 0x55cd70
mov eax, dword [ebp + 8]
lea esi, [eax + 4]
mov eax, dword [esi + 4]
test al, 1
mov dword [esp + 0xc], esi
je 0x55cdb0
xor eax, eax
jmp 0x55ce03
cmp edi, edx
je 0x55cd97
dec edi
lea edx, [esp + 0x50]
push edx
push edi
mov ecx, esi
call fcn.00562960
mov ecx, dword [esi]
lea eax, [edi + edi*2]
shl eax, 4
add eax, ecx
jmp 0x55ce07
shr eax, 1
lea ecx, [eax - 1]
test eax, ecx
jne 0x55cdc4
mov ecx, esi
call fcn.00562ba0
test eax, eax
je 0x55ce03
mov eax, dword [esi + 4]
mov edx, dword [esp + 0xc]
shr eax, 1
lea edi, [eax + eax*2]
mov eax, dword [esi]
shl edi, 4
add edi, eax
mov ecx, 0xc
lea esi, [esp + 0x50]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [edx + 4]
mov eax, ecx
and eax, 0xfffffffe
add eax, 2
and ecx, 1
xor eax, ecx
mov ecx, dword [edx]
mov dword [edx + 4], eax
shr eax, 1
lea eax, [eax + eax*2]
shl eax, 4
lea eax, [eax + ecx - 0x30]
mov esi, dword [esp + 0xc]
test eax, eax
je 0x55ce24
mov word [eax], 0
mov word [eax + 2], 1
mov dword [eax + 8], 0x2020000
mov dword [eax + 4], 4
lea ecx, [esp + 0x50]
call fcn.0055bc10
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
xor edx, edx
shr eax, 1
xor edi, edi
cmp eax, edx
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], edx
mov byte [esp + 0x78], dl
jbe 0x55ce6e
mov ecx, dword [esi]
nop
cmp word [ecx], 1
ja 0x55ce79
inc edi
add ecx, 0x30
cmp edi, eax
jb 0x55ce60
mov eax, dword [esi + 4]
test al, 1
je 0x55ce97
xor eax, eax
jmp 0x55ceee
cmp edi, edx
je 0x55ce7e
dec edi
lea ecx, [esp + 0x50]
push ecx
push edi
mov ecx, esi
call fcn.00562960
mov ecx, dword [esi]
lea eax, [edi + edi*2]
shl eax, 4
add eax, ecx
jmp 0x55ceee
shr eax, 1
lea edx, [eax - 1]
test eax, edx
jne 0x55ceab
mov ecx, esi
call fcn.00562ba0
test eax, eax
je 0x55ceee
mov eax, dword [esi + 4]
shr eax, 1
lea edi, [eax + eax*2]
mov eax, dword [esi]
shl edi, 4
add edi, eax
mov ecx, 0xc
lea esi, [esp + 0x50]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx + 4]
mov esi, dword [esp + 0xc]
mov eax, edx
and eax, 0xfffffffe
add eax, 2
and edx, 1
xor eax, edx
mov dword [ecx + 4], eax
mov ecx, dword [ecx]
shr eax, 1
lea eax, [eax + eax*2]
shl eax, 4
lea eax, [eax + ecx - 0x30]
test eax, eax
je 0x55cf0f
mov edx, dword [ebp + 0xc]
mov ecx, 2
mov word [eax], 1
mov word [eax + 2], cx
mov edx, dword [edx + 0x140]
mov dword [eax + 8], edx
mov dword [eax + 4], ecx
lea ecx, [esp + 0x50]
call fcn.0055bc10
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
xor edx, edx
shr eax, 1
xor edi, edi
cmp eax, edx
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], edx
mov byte [esp + 0x78], dl
jbe 0x55cf5e
mov ecx, dword [esi]
lea ebx, [ebx]
cmp word [ecx], 2
ja 0x55cf69
inc edi
add ecx, 0x30
cmp edi, eax
jb 0x55cf50
mov eax, dword [esi + 4]
test al, 1
je 0x55cf89
xor edi, edi
jmp 0x55cfe8
cmp edi, edx
je 0x55cf6e
dec edi
lea ecx, [esp + 0x50]
push ecx
push edi
mov ecx, esi
call fcn.00562960
mov eax, dword [esi]
lea edi, [edi + edi*2]
shl edi, 4
add edi, eax
xor edx, edx
jmp 0x55cfe8
shr eax, 1
lea ecx, [eax - 1]
test eax, ecx
jne 0x55cfa5
mov ecx, esi
call fcn.00562ba0
test eax, eax
jne 0x55cfa3
xor edi, edi
xor edx, edx
jmp 0x55cfe8
xor edx, edx
mov eax, dword [esi + 4]
shr eax, 1
lea edi, [eax + eax*2]
mov eax, dword [esi]
shl edi, 4
add edi, eax
mov ecx, 0xc
lea esi, [esp + 0x50]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0xc]
mov esi, dword [ecx + 4]
mov eax, esi
and eax, 0xfffffffe
add eax, 2
and esi, 1
xor eax, esi
mov esi, dword [esp + 0xc]
mov dword [ecx + 4], eax
mov ecx, dword [ecx]
shr eax, 1
lea eax, [eax + eax*2]
shl eax, 4
lea edi, [eax + ecx - 0x30]
cmp edi, edx
je 0x55d26a
push 0x18
mov word [edi], 2
mov word [edi + 2], 5
mov dword [edi + 8], edx
mov dword [edi + 4], 3
mov dword [edi + 0x24], 0x18
call fcn.00487380
mov edx, dword [ebp + 0xc]
mov dword [esp + 0x24], eax
mov dword [edi + 0x20], eax
mov byte [edi + 0x28], 1
mov eax, dword [edx + 0x150]
add esp, 4
cmp eax, 1
jne 0x55d042
mov ecx, edx
mov eax, dword [ecx + 0x148]
mov ecx, dword [ecx + 0x14c]
jmp 0x55d0e9
cmp eax, 2
jne 0x55d0e3
mov dword [esp + 0x10], 0
mov dword [esp + 0x1c], 0x40000000
nop
lea esp, [esp]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
mov edx, dword [ebp + 0xc]
lea edi, [eax + ecx]
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], 0
fild qword [esp + 0x40]
sub esp, 8
fst qword [esp + 0x30]
fmul qword [edx + 0x148]
fstp qword [esp]
call fcn.00487e39
mov eax, dword [ebp + 0xc]
fld qword [esp + 0x30]
fmul qword [eax + 0x148]
add esp, 8
call fcn.00487bd0
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
fcompp
fnstsw ax
test ah, 0x44
jp 0x55d0bd
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x1c]
sar eax, 1
test eax, eax
mov dword [esp + 0x1c], eax
jne 0x55d060
fild dword [esp + 0x10]
mov ecx, dword [ebp + 0xc]
fmul qword [ecx + 0x148]
call fcn.00487bd0
mov ecx, dword [esp + 0x10]
jmp 0x55d0e9
mov eax, dword [esp + 0x40]
xor ecx, ecx
mov edx, dword [esp + 0x20]
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x14]
mov dword [edx], eax
mov eax, dword [ecx + 8]
cmp eax, 1
jne 0x55d108
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
jmp 0x55d1a1
cmp eax, 2
jne 0x55d19b
mov dword [esp + 0x10], 0
mov dword [esp + 0x1c], 0x40000000
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
lea edi, [edx + eax]
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], 0
fild qword [esp + 0x40]
sub esp, 8
fst qword [esp + 0x30]
fmul qword [ecx]
fstp qword [esp]
call fcn.00487e39
mov edx, dword [esp + 0x1c]
fld qword [esp + 0x30]
fmul qword [edx]
add esp, 8
call fcn.00487bd0
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
fcompp
fnstsw ax
test ah, 0x44
jp 0x55d178
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x1c]
sar eax, 1
test eax, eax
mov dword [esp + 0x1c], eax
jne 0x55d121
fild dword [esp + 0x10]
mov eax, dword [esp + 0x14]
fmul qword [eax]
call fcn.00487bd0
mov ecx, dword [esp + 0x10]
jmp 0x55d1a1
mov eax, dword [esp + 0x40]
xor ecx, ecx
mov edx, dword [esp + 0x20]
mov dword [edx + 0xc], ecx
mov ecx, dword [esp + 0x18]
mov dword [edx + 8], eax
mov eax, dword [ecx + 8]
cmp eax, 1
jne 0x55d1c1
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
jmp 0x55d260
cmp eax, 2
jne 0x55d25a
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], 0x40000000
lea ebx, [ebx]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
lea edi, [ecx + edx]
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], 0
fild qword [esp + 0x40]
sub esp, 8
fst qword [esp + 0x30]
fmul qword [eax]
fstp qword [esp]
call fcn.00487e39
mov ecx, dword [esp + 0x20]
fld qword [esp + 0x30]
fmul qword [ecx]
add esp, 8
call fcn.00487bd0
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
fcompp
fnstsw ax
test ah, 0x44
jp 0x55d237
mov dword [esp + 0x14], edi
mov eax, dword [esp + 0x1c]
sar eax, 1
test eax, eax
mov dword [esp + 0x1c], eax
jne 0x55d1e0
fild dword [esp + 0x14]
mov edx, dword [esp + 0x18]
fmul qword [edx]
call fcn.00487bd0
mov ecx, dword [esp + 0x14]
jmp 0x55d260
mov eax, dword [esp + 0x40]
xor ecx, ecx
mov edx, dword [esp + 0x20]
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
lea ecx, [esp + 0x50]
call fcn.0055bc10
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
xor edx, edx
shr eax, 1
xor edi, edi
cmp eax, edx
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], edx
mov byte [esp + 0x78], dl
jbe 0x55d2b3
mov ecx, dword [esi]
cmp word [ecx], 3
ja 0x55d2be
inc edi
add ecx, 0x30
cmp edi, eax
jb 0x55d2a5
mov eax, dword [esi + 4]
test al, 1
je 0x55d2dc
xor eax, eax
jmp 0x55d32f
cmp edi, edx
je 0x55d2c3
dec edi
lea ecx, [esp + 0x50]
push ecx
push edi
mov ecx, esi
call fcn.00562960
mov ecx, dword [esi]
lea eax, [edi + edi*2]
shl eax, 4
add eax, ecx
jmp 0x55d32f
shr eax, 1
lea edx, [eax - 1]
test eax, edx
jne 0x55d2f0
mov ecx, esi
call fcn.00562ba0
test eax, eax
je 0x55d32f
mov eax, dword [esi + 4]
shr eax, 1
lea edi, [eax + eax*2]
mov eax, dword [esi]
shl edi, 4
add edi, eax
mov ecx, 0xc
lea esi, [esp + 0x50]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx + 4]
mov eax, edx
and eax, 0xfffffffe
add eax, 2
and edx, 1
xor eax, edx
mov dword [ecx + 4], eax
mov ecx, dword [ecx]
shr eax, 1
lea eax, [eax + eax*2]
shl eax, 4
lea eax, [eax + ecx - 0x30]
test eax, eax
je 0x55d350
mov edx, dword [ebp + 0xc]
mov ecx, 2
mov word [eax], 3
mov word [eax + 2], cx
mov edx, dword [edx + 0x178]
mov dword [eax + 8], edx
mov dword [eax + 4], ecx
lea ecx, [esp + 0x50]
call fcn.0055bc10
mov edi, dword [ebp + 8]
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov byte [esp + 0x78], al
lea eax, [esp + 0x50]
push eax
push 4
mov ecx, edi
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.0055c8e0
mov esi, eax
test esi, esi
je 0x55d41f
push 0x18
mov word [esi], 4
mov word [esi + 2], 5
mov dword [esi + 8], 0
mov dword [esi + 4], 3
mov dword [esi + 0x24], 0x18
call fcn.00487380
add esp, 4
lea ecx, [esp + 0x40]
mov edi, eax
push ecx
mov ecx, dword [esp + 0x38]
mov dword [esi + 0x20], edi
mov byte [esi + 0x28], 1
call fcn.0055d4f0
mov edx, dword [esp + 0x40]
lea ecx, [esp + 0x28]
mov dword [edi], edx
mov eax, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x3c]
mov dword [edi + 4], eax
call fcn.0055d4f0
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x20]
mov dword [edi + 8], edx
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x40]
mov dword [edi + 0xc], eax
call fcn.0055d4f0
mov edx, dword [esp + 0x20]
mov dword [edi + 0x10], edx
mov eax, dword [esp + 0x24]
mov dword [edi + 0x14], eax
mov edi, dword [ebp + 8]
lea ecx, [esp + 0x50]
call fcn.0055bc10
xor eax, eax
lea ecx, [esp + 0x50]
push ecx
push 5
mov ecx, edi
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov byte [esp + 0x80], al
call fcn.0055c8e0
test eax, eax
je 0x55d46c
push 0
push 1
push 5
mov ecx, eax
call fcn.00562700
lea ecx, [esp + 0x50]
call fcn.0055bc10
xor eax, eax
lea edx, [esp + 0x50]
push edx
push 6
mov ecx, edi
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov byte [esp + 0x80], al
call fcn.0055c8e0
mov esi, eax
test esi, esi
je 0x55d4e3
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 0x1b0]
mov dword [esp + 0x3c], ecx
call fcn.00403980
test al, al
je 0x55d4ca
mov eax, dword [esp + 0x3c]
jmp 0x55d4d7
push 1
push 0
lea ecx, [esp + 0x48]
call fcn.00410360
push eax
push 5
push 6
mov ecx, esi
call fcn.005627a0
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 8