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

Disassembly:
push 0xc
mov eax, 0x50bdb3
call 0x5cfc02
test edi, edi
je 0x5552de
push 0x517e10
lea ecx, [ebp - 0x10]
call main
and dword [ebp - 4], 0
push esi
call 0x58ff50
mov dword [esp], 0x523810
push esi
call 0x58fd10
movzx eax, byte [edi + 4]
push eax
push esi
call 0x58fe40
push 0xfffffffffffffffd
pop ebx
push ebx
push esi
call 0x590050
push 0x5237f8
push esi
call 0x58fd10
movzx eax, byte [edi + 5]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5237e4
push esi
call 0x58fd10
movzx eax, byte [edi + 6]
push eax
push esi
call 0x58fe40
add esp, 0x40
push ebx
push esi
call 0x590050
push 0x5237d0
push esi
call 0x58fd10
movzx eax, byte [edi + 7]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5237c4
push esi
call 0x58fd10
push dword [edi + 8]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x5237b8
push esi
call 0x58fd10
add esp, 0x40
push dword [edi + 0xc]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x5237ac
push esi
call 0x58fd10
push dword [edi + 0x10]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x52379c
push esi
call 0x58fd10
push dword [edi + 0x14]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
add esp, 0x40
push 0x52378c
push esi
call 0x58fd10
push dword [edi + 0x18]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x5224a0
push esi
call 0x58fd10
push dword [edi + 0x1c]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x52377c
push esi
call 0x58fd10
movzx eax, byte [edi + 0x20]
push eax
push esi
call 0x58fe40
add esp, 0x40
push ebx
push esi
call 0x590050
push 0x52376c
push esi
call 0x58fd10
movzx eax, byte [edi + 0x21]
mov dword [ebp - 0x18], eax
add esp, 8
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call 0x58fc90
push ebx
push esi
call 0x590050
push 0x523760
push esi
call 0x58fd10
movzx eax, byte [edi + 0x30]
and eax, 1
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x523754
push esi
call 0x58fd10
movzx eax, byte [edi + 0x30]
and eax, 2
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
add esp, 0x44
push 0x523748
push esi
call 0x58fd10
movzx eax, byte [edi + 0x30]
and eax, 4
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x52373c
push esi
call 0x58fd10
movzx eax, byte [edi + 0x30]
and eax, 0x20
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x522780
push esi
call 0x58fd10
add esp, 0x38
push 0x51c27c
lea eax, [ebp - 0x18]
lea ecx, [edi + 0x34]
push eax
call fcn.0051fae3
push dword [eax]
push esi
call 0x58fd10
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f4357
push ebx
push esi
call 0x590050
push 0x522770
push esi
call 0x58fd10
add esp, 0x10
push 0x52275c
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x34]
call fcn.0051fae3
push dword [eax]
push esi
call 0x58fd10
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f4357
push ebx
push esi
call 0x590050
push 0x522750
push esi
call 0x58fd10
add esp, 0x10
push 0x51c27c
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x3c]
call fcn.0051fae3
push dword [eax]
push esi
call 0x58fd10
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f4357
push ebx
push esi
call 0x590050
push 0x522740
push esi
call 0x58fd10
add esp, 0x10
push 0x52275c
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x34]
call fcn.0051fae3
push dword [eax]
push esi
call 0x58fd10
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f4357
push ebx
push esi
call 0x590050
push 0x52372c
push esi
call 0x58fd10
add esp, 0x10
push 0x51c27c
lea eax, [ebp - 0x18]
lea ecx, [edi + 0x44]
push eax
call fcn.0051fae3
push dword [eax]
push esi
call 0x58fd10
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f4357
push ebx
push esi
call 0x590050
push 0x52371c
push esi
call 0x58fd10
add esp, 0x10
push 0x52275c
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x44]
call fcn.0051fae3
push dword [eax]
push esi
call 0x58fd10
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f4357
push ebx
push esi
call 0x590050
push 0x523710
push esi
call 0x58fd10
push dword [edi + 0x68]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x523700
push esi
call 0x58fd10
movzx eax, byte [edi + 0x6d]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5236f0
push esi
call 0x58fd10
movzx eax, byte [edi + 0x6e]
add esp, 0x40
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5236dc
push esi
call 0x58fd10
movzx eax, byte [edi + 0x6f]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5236c0
push esi
call 0x58fd10
movzx eax, byte [edi + 0x70]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
add esp, 0x40
push 0x5236a0
push esi
call 0x58fd10
movzx eax, byte [edi + 0x71]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x52368c
push esi
call 0x58fd10
movzx eax, byte [edi + 0x72]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x523678
push esi
call 0x58fd10
movzx eax, byte [edi + 0x73]
push eax
push esi
call 0x58fe40
add esp, 0x40
push ebx
push esi
call 0x590050
push 0x523660
push esi
call 0x58fd10
movzx eax, byte [edi + 0x74]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x52364c
push esi
call 0x58fd10
movzx eax, byte [edi + 0x75]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x523638
push esi
call 0x58fd10
add esp, 0x40
push dword [edi + 0x78]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x523624
push esi
call 0x58fd10
push dword [edi + 0x7c]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x523610
push esi
call 0x58fd10
push dword [edi + 0x80]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
add esp, 0x40
push 0x5235f8
push esi
call 0x58fd10
push dword [edi + 0x84]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x5235e8
push esi
call 0x58fd10
movzx eax, byte [edi + 0x8c]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5235dc
push esi
call 0x58fd10
push dword [edi + 0x90]
push esi
call 0x58fd10
add esp, 0x40
push ebx
push esi
call 0x590050
push 0x5235d0
push esi
call 0x58fd10
fild dword [edi + 0x94]
mov eax, dword [edi + 0x94]
test eax, eax
jge 0x554ec5
fadd qword [0x517fe0]
add esp, 8
fstp qword [esp]
push esi
call 0x58fc90
push ebx
push esi
call 0x590050
push 0x5235c0
push esi
call 0x58fd10
movzx eax, byte [edi + 0x98]
add esp, 0x1c
sub eax, 0
push ecx
push ecx
je 0x554f0a
dec eax
je 0x554f02
dec eax
jne 0x554f0a
fld qword [0x5235b8]
jmp 0x554f0c
fld qword [0x5235b0]
jmp 0x554f0c
fld1
fstp qword [esp]
push esi
call 0x58fc90
add esp, 0xc
push ebx
push esi
call 0x590050
push 0x5235a0
push esi
call 0x58fd10
movzx eax, byte [edi + 0x9c]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x520e74
push esi
call 0x58fd10
push dword [edi + 0xa0]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x523590
push esi
call 0x58fd10
movzx eax, byte [edi + 0xa4]
add esp, 0x40
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x523580
push esi
call 0x58fd10
movzx eax, byte [edi + 0xa5]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x52356c
push esi
call 0x58fd10
movzx eax, byte [edi + 0xa6]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
add esp, 0x40
push 0x52355c
push esi
call 0x58fd10
movzx eax, byte [edi + 0xa7]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x52354c
push esi
call 0x58fd10
movzx eax, byte [edi + 0xb4]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x523534
push esi
call 0x58fd10
movzx eax, byte [edi + 0xa8]
push eax
push esi
call 0x58fe40
add esp, 0x40
push ebx
push esi
call 0x590050
push 0x52351c
push esi
call 0x58fd10
mov eax, dword [edi + 0xac]
and eax, 1
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x523508
push esi
call 0x58fd10
mov eax, dword [edi + 0xac]
and eax, 0x20
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5234f4
push esi
call 0x58fd10
mov eax, dword [edi + 0xac]
add esp, 0x40
and eax, 2
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5234e0
push esi
call 0x58fd10
mov eax, dword [edi + 0xac]
and eax, 4
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5234d0
push esi
call 0x58fd10
fild dword [edi + 0xb0]
add esp, 0x28
fstp qword [esp]
push esi
call 0x58fc90
push ebx
push esi
call 0x590050
push 0x5234c4
push esi
call 0x58fd10
movzx eax, byte [edi + 0xb5]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
push 0x5234b0
push esi
call 0x58fd10
movzx eax, byte [edi + 0xb6]
push eax
push esi
call 0x58fe40
push ebx
push esi
call 0x590050
and dword [ebp - 0x14], 0
add esp, 0x44
cmp dword [edi + 0xfc], 0
jle 0x555193
push esi
call 0x58ff50
mov eax, dword [edi + 0xf4]
test eax, eax
pop ecx
mov dword [ebp - 0x18], eax
je 0x555174
inc dword [ebp - 0x14]
fild dword [ebp - 0x14]
push ecx
push ecx
fstp qword [esp]
push esi
call 0x58fc90
add esp, 0xc
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xf0]
call 0x5ac9ae
push dword [eax]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
add esp, 0x10
cmp dword [ebp - 0x18], 0
jne 0x555139
push 0x5234a4
push esi
call 0x58fd10
push 0xfffffffffffffffe
push esi
call 0x58f800
push ebx
push esi
call 0x590050
add esp, 0x18
jmp 0x5551ae
push 0x5234a4
push esi
call 0x58fd10
push esi
call 0x58fc70
push ebx
push esi
call 0x590050
add esp, 0x14
push 0x52349c
push esi
call 0x58fd10
push dword [edi + 0x10c]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
push 0x523498
push esi
call 0x58fd10
fild dword [edi + 0x118]
mov eax, dword [edi + 0x118]
test eax, eax
jge 0x5551ed
fadd qword [0x517fe0]
add esp, 0x18
fstp qword [esp]
push esi
call 0x58fc90
push ebx
push esi
call 0x590050
push 0x52348c
push esi
call 0x58fd10
movzx eax, word [edi + 0x9a]
mov dword [ebp - 0x18], eax
add esp, 0x14
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call 0x58fc90
push ebx
push esi
call 0x590050
push 0x523480
push esi
call 0x58fd10
movzx eax, byte [edi + 0x6c]
mov dword [ebp - 0x18], eax
add esp, 0x14
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call 0x58fc90
push ebx
push esi
call 0x590050
movzx eax, word [edi + 0x54]
push eax
movzx eax, word [edi + 0x56]
push eax
movzx eax, word [edi + 0x50]
push eax
movzx eax, word [edi + 0x52]
push eax
lea eax, [ebp - 0x10]
push 0x520e94
push eax
call fcn.004f543e
push 0x5224bc
push esi
call 0x58fd10
push dword [ebp - 0x10]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
movzx eax, word [edi + 0x5c]
add esp, 0x44
push eax
movzx eax, word [edi + 0x5e]
push eax
movzx eax, word [edi + 0x58]
push eax
movzx eax, word [edi + 0x5a]
push eax
lea eax, [ebp - 0x10]
push 0x520e94
push eax
call fcn.004f543e
push 0x5224cc
push esi
call 0x58fd10
push dword [ebp - 0x10]
push esi
call 0x58fd10
push ebx
push esi
call 0x590050
mov ecx, dword [ebp - 0x10]
add esp, 0x30
add ecx, 0xfffffff0
call fcn.004f4357
call 0x5cfcda
ret