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

Disassembly:
sub esp, 0x60
cmp dword [esp + 0x68], 1
push ebp
push esi
mov esi, ecx
jne 0x5563f5
mov eax, dword [esp + 0x6c]
push ebx
push edi
push eax
mov ecx, 0x6b4da8
call fcn.0049d590
mov edi, eax
movzx ecx, word [edi + 0xc6]
push ecx
mov ecx, 0x6c4e08
call fcn.00516be0
mov ebx, eax
test ebx, ebx
jne 0x555e56
push 0xca
mov ecx, 0x6b6198
call fcn.004c4980
push eax
push 0x1d
push 0x6b6198
call fcn.004c5ad0
add esp, 0xc
pop edi
pop ebx
pop esi
pop ebp
add esp, 0x60
ret 8
push 0x40
lea edx, [esp + 0x34]
push 0
push edx
call fcn.00561170
movzx eax, word [edi + 0xc8]
add esp, 0xc
push eax
push 0x5dc
mov ecx, 0x6b6198
call fcn.004c4980
push eax
lea ecx, [esp + 0x38]
push ecx
call fcn.00561680
mov ecx, dword [esi + 0x220]
add esp, 0xc
lea edx, [esp + 0x30]
push edx
call fcn.0043bc30
push 0x40
lea eax, [esp + 0x34]
push 0
push eax
call fcn.00561170
movzx eax, word [edi + 0xc8]
imul eax, eax, 0x68
movzx edx, word [eax + ebx + 0x1a]
movzx eax, word [eax + ebx + 0x18]
push edx
push eax
lea ecx, [esp + 0x44]
push 0x59a470
push ecx
call fcn.00561680
mov ecx, dword [esi + 0x224]
add esp, 0x1c
lea edx, [esp + 0x30]
push edx
call fcn.0043bc30
push 0x40
lea eax, [esp + 0x34]
push 0
push eax
call fcn.00561170
movzx eax, word [edi + 0xc8]
imul eax, eax, 0x68
movzx edx, word [eax + ebx + 0x1e]
movzx eax, word [eax + ebx + 0x1c]
push edx
push eax
lea ecx, [esp + 0x44]
push str._d___d
push ecx
call fcn.00561680
mov ecx, dword [esi + 0x22c]
add esp, 0x1c
lea edx, [esp + 0x30]
push edx
call fcn.0043bc30
push 0x40
lea eax, [esp + 0x34]
push 0
push eax
call fcn.00561170
movzx ecx, word [edi + 0xc8]
imul ecx, ecx, 0x68
mov edx, dword [ecx + ebx + 0x10]
push edx
lea eax, [esp + 0x40]
push 0x59a480
push eax
call fcn.00561680
add esp, 0x18
lea ecx, [esp + 0x30]
push ecx
mov ecx, dword [esi + 0x228]
call fcn.0043bc30
push 0x40
push 0
lea edx, [esp + 0x38]
push edx
call fcn.00561170
movzx eax, word [edi + 0xc8]
imul eax, eax, 0x68
add esp, 4
lea ecx, [esp + 0x38]
fld dword [eax + ebx + 0x14]
fstp qword [esp]
push str._.2f
push ecx
call fcn.00561680
mov ecx, dword [esi + 0x230]
add esp, 0x10
lea edx, [esp + 0x30]
push edx
call fcn.0043bc30
push 0x40
lea eax, [esp + 0x34]
push 0
push eax
call fcn.00561170
movzx ecx, word [edi + 0xc8]
imul ecx, ecx, 0x68
mov edx, dword [ecx + ebx + 8]
push edx
lea eax, [esp + 0x40]
push 0x59a48c
push eax
call fcn.00561680
add esp, 0x18
lea ecx, [esp + 0x30]
push ecx
mov ecx, dword [esi + 0x234]
call fcn.0043bc30
push 0x40
lea edx, [esp + 0x34]
push 0
push edx
call fcn.00561170
fnstcw word [esp + 0x84]
movzx eax, word [edi + 0xc8]
imul eax, eax, 0x68
fld dword [eax + ebx + 0x20]
movzx eax, word [esp + 0x84]
or eax, 0xc00
mov dword [esp + 0x80], eax
lea eax, [esp + 0x3c]
fldcw word [esp + 0x80]
fistp dword [esp + 0x80]
movzx edx, word [esp + 0x80]
push edx
push 0x59a490
fldcw word [esp + 0x8c]
push eax
call fcn.00561680
add esp, 0x18
lea ecx, [esp + 0x30]
push ecx
mov ecx, dword [esi + 0x238]
call fcn.0043bc30
push 0x40
lea edx, [esp + 0x34]
push 0
push edx
call fcn.00561170
movzx eax, word [edi + 0xc8]
imul eax, eax, 0x68
add esp, 4
lea ecx, [esp + 0x38]
fld dword [eax + ebx + 0x24]
fstp dword [esp + 0x80]
fld dword [esp + 0x80]
fstp qword [esp]
push str._.1f
push ecx
call fcn.00561680
mov ecx, dword [esi + 0x23c]
add esp, 0x10
lea edx, [esp + 0x30]
push edx
call fcn.0043bc30
movzx eax, word [edi + 0xc8]
imul eax, eax, 0x68
lea edx, [esp + 0x10]
fld dword [eax + ebx + 0x3c]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fnstcw word [esp + 0x78]
movzx eax, word [esp + 0x78]
or eax, 0xc00
mov dword [esp + 0x74], eax
fldcw word [esp + 0x74]
fistp dword [esp + 0x74]
movzx eax, word [esp + 0x74]
push eax
push 0x586160
fldcw word [esp + 0x80]
push edx
mov dword [esp + 0x84], eax
call fcn.00561680
mov ecx, dword [esi + 0x240]
add esp, 0xc
lea eax, [esp + 0x10]
push eax
call fcn.0043bc30
fild dword [esp + 0x78]
mov ecx, dword [esi + 0x258]
fmul qword [0x586158]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x55614c
fld1
fstp dword [ecx + 0x228]
mov eax, dword [esi + 0x240]
mov ebp, 0xffffff
mov dword [eax + 0x3c8], ebp
movzx ecx, word [edi + 0xc8]
imul ecx, ecx, 0x68
fld dword [ecx + ebx + 0x40]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fnstcw word [esp + 0x78]
movzx eax, word [esp + 0x78]
or eax, 0xc00
mov dword [esp + 0x74], eax
fldcw word [esp + 0x74]
fistp dword [esp + 0x74]
mov dx, word [esp + 0x74]
movzx eax, dx
push eax
fldcw word [esp + 0x7c]
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x14]
push 0x586160
push eax
call fcn.00561680
mov ecx, dword [esi + 0x244]
add esp, 0xc
lea edx, [esp + 0x10]
push edx
call fcn.0043bc30
fild dword [esp + 0x78]
mov ecx, dword [esi + 0x25c]
fmul qword [0x586158]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x5561f3
fld1
fstp dword [ecx + 0x228]
mov eax, dword [esi + 0x244]
mov dword [eax + 0x3c8], ebp
movzx eax, word [edi + 0xc8]
imul eax, eax, 0x68
lea edx, [esp + 0x10]
fld dword [eax + ebx + 0x44]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fnstcw word [esp + 0x78]
movzx eax, word [esp + 0x78]
or eax, 0xc00
mov dword [esp + 0x74], eax
fldcw word [esp + 0x74]
fistp dword [esp + 0x74]
mov cx, word [esp + 0x74]
movzx eax, cx
push eax
fldcw word [esp + 0x7c]
push 0x586160
push edx
mov dword [esp + 0x84], eax
call fcn.00561680
mov ecx, dword [esi + 0x248]
add esp, 0xc
lea eax, [esp + 0x10]
push eax
call fcn.0043bc30
fild dword [esp + 0x78]
mov ecx, dword [esi + 0x260]
fmul qword [0x586158]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x556298
fld1
fstp dword [ecx + 0x228]
mov eax, dword [esi + 0x248]
mov dword [eax + 0x3c8], ebp
movzx ecx, word [edi + 0xc8]
imul ecx, ecx, 0x68
fld dword [ecx + ebx + 0x48]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fnstcw word [esp + 0x78]
movzx eax, word [esp + 0x78]
or eax, 0xc00
mov dword [esp + 0x74], eax
fldcw word [esp + 0x74]
fistp dword [esp + 0x74]
mov dx, word [esp + 0x74]
movzx eax, dx
push eax
fldcw word [esp + 0x7c]
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x14]
push 0x586160
push eax
call fcn.00561680
mov ecx, dword [esi + 0x24c]
add esp, 0xc
lea edx, [esp + 0x10]
push edx
call fcn.0043bc30
fild dword [esp + 0x78]
mov ecx, dword [esi + 0x264]
fmul qword [0x586158]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x55633a
fld1
fstp dword [ecx + 0x228]
mov eax, dword [esi + 0x24c]
mov dword [eax + 0x3c8], ebp
movzx eax, word [edi + 0xc8]
imul eax, eax, 0x68
lea edx, [esp + 0x10]
fld dword [eax + ebx + 0x4c]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fnstcw word [esp + 0x78]
movzx eax, word [esp + 0x78]
or eax, 0xc00
mov dword [esp + 0x74], eax
fldcw word [esp + 0x74]
fistp dword [esp + 0x74]
mov cx, word [esp + 0x74]
movzx eax, cx
push eax
fldcw word [esp + 0x7c]
push 0x586160
push edx
mov dword [esp + 0x84], eax
call fcn.00561680
mov ecx, dword [esi + 0x250]
add esp, 0xc
lea eax, [esp + 0x10]
push eax
call fcn.0043bc30
fild dword [esp + 0x78]
mov ecx, dword [esi + 0x268]
fmul qword [0x586158]
fstp dword [esp + 0x78]
fld dword [esp + 0x78]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x5563df
fld1
fstp dword [ecx + 0x228]
mov esi, dword [esi + 0x250]
pop edi
pop ebx
mov dword [esi + 0x3c8], ebp
pop esi
pop ebp
add esp, 0x60
ret 8
mov ecx, dword [esi + 0x220]
push 0x59a46d
call fcn.0043bc30
mov ecx, dword [esi + 0x220]
push 0x59a46e
call fcn.0043bc30
mov ecx, dword [esi + 0x224]
push 0x59a46f
call fcn.0043bc30
mov ecx, dword [esi + 0x228]
push 0x59a483
call fcn.0043bc30
mov ecx, dword [esi + 0x22c]
push 0x59a489
call fcn.0043bc30
mov ecx, dword [esi + 0x230]
push 0x59a48a
call fcn.0043bc30
mov ecx, dword [esi + 0x234]
push 0x59a48b
call fcn.0043bc30
mov ecx, dword [esi + 0x238]
push 0x59a48f
call fcn.0043bc30
mov ecx, dword [esi + 0x23c]
push 0x59a493
call fcn.0043bc30
push 0
lea ecx, [esp + 0xc]
push 0x586160
push ecx
call fcn.00561680
mov ecx, dword [esi + 0x240]
add esp, 0xc
lea edx, [esp + 8]
push edx
call fcn.0043bc30
fldz
fmul qword [0x586158]
mov ecx, dword [esi + 0x258]
fstp dword [esp + 0x70]
fld dword [esp + 0x70]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x5564da
fld1
fstp dword [ecx + 0x228]
mov eax, dword [esi + 0x240]
mov ebp, 0xffffff
push 0
mov dword [eax + 0x3c8], ebp
lea eax, [esp + 0xc]
push 0x586160
push eax
call fcn.00561680
mov ecx, dword [esi + 0x244]
add esp, 0xc
lea edx, [esp + 8]
push edx
call fcn.0043bc30
fld dword [esp + 0x70]
mov ecx, dword [esi + 0x25c]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x556534
fld1
fstp dword [ecx + 0x228]
mov eax, dword [esi + 0x244]
push 0
mov dword [eax + 0x3c8], ebp
lea eax, [esp + 0xc]
push 0x586160
push eax
call fcn.00561680
mov ecx, dword [esi + 0x248]
add esp, 0xc
lea edx, [esp + 8]
push edx
call fcn.0043bc30
fld dword [esp + 0x70]
mov ecx, dword [esi + 0x260]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x556589
fld1
fstp dword [ecx + 0x228]
mov eax, dword [esi + 0x248]
push 0
mov dword [eax + 0x3c8], ebp
lea eax, [esp + 0xc]
push 0x586160
push eax
call fcn.00561680
mov ecx, dword [esi + 0x24c]
add esp, 0xc
lea edx, [esp + 8]
push edx
call fcn.0043bc30
fld dword [esp + 0x70]
mov ecx, dword [esi + 0x264]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x5565de
fld1
fstp dword [ecx + 0x228]
mov eax, dword [esi + 0x24c]
push 0
mov dword [eax + 0x3c8], ebp
lea eax, [esp + 0xc]
push 0x586160
push eax
call fcn.00561680
mov ecx, dword [esi + 0x250]
add esp, 0xc
lea edx, [esp + 8]
push edx
call fcn.0043bc30
fld dword [esp + 0x70]
mov ecx, dword [esi + 0x268]
fst dword [ecx + 0x228]
fcomp qword [0x582000]
fnstsw ax
test ah, 0x41
jne 0x556633
fld1
fstp dword [ecx + 0x228]
mov esi, dword [esi + 0x250]
mov dword [esi + 0x3c8], ebp
pop esi
pop ebp
add esp, 0x60
ret 8