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

Disassembly:
push 0xc
mov eax, 0x509871
call 0x5cbb32
test edi, edi
je 0x551e9b
push 0x514e10
lea ecx, [ebp - 0x10]
call fcn.004f2b0f
and dword [ebp - 4], 0
push esi
call 0x58c750
mov dword [esp], 0x5205f0
push esi
call 0x58c510
movzx eax, byte [edi + 4]
push eax
push esi
call 0x58c640
push 0xfffffffffffffffd
pop ebx
push ebx
push esi
call 0x58c850
push 0x5205d8
push esi
call 0x58c510
movzx eax, byte [edi + 5]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5205c4
push esi
call 0x58c510
movzx eax, byte [edi + 6]
push eax
push esi
call 0x58c640
add esp, 0x40
push ebx
push esi
call 0x58c850
push 0x5205b0
push esi
call 0x58c510
movzx eax, byte [edi + 7]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5205a4
push esi
call 0x58c510
push dword [edi + 8]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x520598
push esi
call 0x58c510
add esp, 0x40
push dword [edi + 0xc]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x52058c
push esi
call 0x58c510
push dword [edi + 0x10]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x52057c
push esi
call 0x58c510
push dword [edi + 0x14]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
add esp, 0x40
push 0x52056c
push esi
call 0x58c510
push dword [edi + 0x18]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x51f280
push esi
call 0x58c510
push dword [edi + 0x1c]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x52055c
push esi
call 0x58c510
movzx eax, byte [edi + 0x20]
push eax
push esi
call 0x58c640
add esp, 0x40
push ebx
push esi
call 0x58c850
push 0x52054c
push esi
call 0x58c510
movzx eax, byte [edi + 0x21]
mov dword [ebp - 0x18], eax
add esp, 8
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call 0x58c490
push ebx
push esi
call 0x58c850
push 0x520540
push esi
call 0x58c510
movzx eax, byte [edi + 0x30]
and eax, 1
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x520534
push esi
call 0x58c510
movzx eax, byte [edi + 0x30]
and eax, 2
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
add esp, 0x44
push 0x520528
push esi
call 0x58c510
movzx eax, byte [edi + 0x30]
and eax, 4
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x52051c
push esi
call 0x58c510
movzx eax, byte [edi + 0x30]
and eax, 0x20
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x51f560
push esi
call 0x58c510
add esp, 0x38
push 0x51904c
lea eax, [ebp - 0x18]
lea ecx, [edi + 0x34]
push eax
call fcn.0051ce86
push dword [eax]
push esi
call 0x58c510
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f2337
push ebx
push esi
call 0x58c850
push 0x51f550
push esi
call 0x58c510
add esp, 0x10
push 0x51f53c
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x34]
call fcn.0051ce86
push dword [eax]
push esi
call 0x58c510
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f2337
push ebx
push esi
call 0x58c850
push 0x51f530
push esi
call 0x58c510
add esp, 0x10
push 0x51904c
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x3c]
call fcn.0051ce86
push dword [eax]
push esi
call 0x58c510
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f2337
push ebx
push esi
call 0x58c850
push 0x51f520
push esi
call 0x58c510
add esp, 0x10
push 0x51f53c
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x34]
call fcn.0051ce86
push dword [eax]
push esi
call 0x58c510
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f2337
push ebx
push esi
call 0x58c850
push 0x52050c
push esi
call 0x58c510
add esp, 0x10
push 0x51904c
lea eax, [ebp - 0x18]
lea ecx, [edi + 0x44]
push eax
call fcn.0051ce86
push dword [eax]
push esi
call 0x58c510
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f2337
push ebx
push esi
call 0x58c850
push 0x5204fc
push esi
call 0x58c510
add esp, 0x10
push 0x51f53c
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x44]
call fcn.0051ce86
push dword [eax]
push esi
call 0x58c510
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
call fcn.004f2337
push ebx
push esi
call 0x58c850
push 0x5204f0
push esi
call 0x58c510
push dword [edi + 0x68]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x5204e0
push esi
call 0x58c510
movzx eax, byte [edi + 0x6d]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5204d0
push esi
call 0x58c510
movzx eax, byte [edi + 0x6e]
add esp, 0x40
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5204bc
push esi
call 0x58c510
movzx eax, byte [edi + 0x6f]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5204a0
push esi
call 0x58c510
movzx eax, byte [edi + 0x70]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
add esp, 0x40
push 0x520480
push esi
call 0x58c510
movzx eax, byte [edi + 0x71]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x52046c
push esi
call 0x58c510
movzx eax, byte [edi + 0x72]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x520458
push esi
call 0x58c510
movzx eax, byte [edi + 0x73]
push eax
push esi
call 0x58c640
add esp, 0x40
push ebx
push esi
call 0x58c850
push 0x520440
push esi
call 0x58c510
movzx eax, byte [edi + 0x74]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x52042c
push esi
call 0x58c510
movzx eax, byte [edi + 0x75]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x520418
push esi
call 0x58c510
add esp, 0x40
push dword [edi + 0x78]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x520404
push esi
call 0x58c510
push dword [edi + 0x7c]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x5203f0
push esi
call 0x58c510
push dword [edi + 0x80]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
add esp, 0x40
push 0x5203d8
push esi
call 0x58c510
push dword [edi + 0x84]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x5203c8
push esi
call 0x58c510
movzx eax, byte [edi + 0x8c]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5203bc
push esi
call 0x58c510
push dword [edi + 0x90]
push esi
call 0x58c510
add esp, 0x40
push ebx
push esi
call 0x58c850
push 0x5203b0
push esi
call 0x58c510
fild dword [edi + 0x94]
mov eax, dword [edi + 0x94]
test eax, eax
jge 0x551a82
fadd qword [0x514f58]
add esp, 8
fstp qword [esp]
push esi
call 0x58c490
push ebx
push esi
call 0x58c850
push 0x5203a0
push esi
call 0x58c510
movzx eax, byte [edi + 0x98]
add esp, 0x1c
sub eax, 0
push ecx
push ecx
je 0x551ac7
dec eax
je 0x551abf
dec eax
jne 0x551ac7
fld qword [0x520398]
jmp 0x551ac9
fld qword [0x520390]
jmp 0x551ac9
fld1
fstp qword [esp]
push esi
call 0x58c490
add esp, 0xc
push ebx
push esi
call 0x58c850
push 0x520380
push esi
call 0x58c510
movzx eax, byte [edi + 0x9c]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x51dc54
push esi
call 0x58c510
push dword [edi + 0xa0]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x520370
push esi
call 0x58c510
movzx eax, byte [edi + 0xa4]
add esp, 0x40
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x520360
push esi
call 0x58c510
movzx eax, byte [edi + 0xa5]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x52034c
push esi
call 0x58c510
movzx eax, byte [edi + 0xa6]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
add esp, 0x40
push 0x52033c
push esi
call 0x58c510
movzx eax, byte [edi + 0xa7]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x52032c
push esi
call 0x58c510
movzx eax, byte [edi + 0xb4]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x520314
push esi
call 0x58c510
movzx eax, byte [edi + 0xa8]
push eax
push esi
call 0x58c640
add esp, 0x40
push ebx
push esi
call 0x58c850
push 0x5202fc
push esi
call 0x58c510
mov eax, dword [edi + 0xac]
and eax, 1
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5202e8
push esi
call 0x58c510
mov eax, dword [edi + 0xac]
and eax, 0x20
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5202d4
push esi
call 0x58c510
mov eax, dword [edi + 0xac]
add esp, 0x40
and eax, 2
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5202c0
push esi
call 0x58c510
mov eax, dword [edi + 0xac]
and eax, 4
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x5202b0
push esi
call 0x58c510
fild dword [edi + 0xb0]
add esp, 0x28
fstp qword [esp]
push esi
call 0x58c490
push ebx
push esi
call 0x58c850
push 0x5202a4
push esi
call 0x58c510
movzx eax, byte [edi + 0xb5]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
push 0x520290
push esi
call 0x58c510
movzx eax, byte [edi + 0xb6]
push eax
push esi
call 0x58c640
push ebx
push esi
call 0x58c850
and dword [ebp - 0x14], 0
add esp, 0x44
cmp dword [edi + 0xfc], 0
jle 0x551d50
push esi
call 0x58c750
mov eax, dword [edi + 0xf4]
test eax, eax
pop ecx
mov dword [ebp - 0x18], eax
je 0x551d31
inc dword [ebp - 0x14]
fild dword [ebp - 0x14]
push ecx
push ecx
fstp qword [esp]
push esi
call 0x58c490
add esp, 0xc
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xf0]
call fcn.004f255b
push dword [eax]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
add esp, 0x10
cmp dword [ebp - 0x18], 0
jne 0x551cf6
push 0x520284
push esi
call 0x58c510
push 0xfffffffffffffffe
push esi
call 0x58c000
push ebx
push esi
call 0x58c850
add esp, 0x18
jmp 0x551d6b
push 0x520284
push esi
call 0x58c510
push esi
call 0x58c470
push ebx
push esi
call 0x58c850
add esp, 0x14
push 0x52027c
push esi
call 0x58c510
push dword [edi + 0x10c]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
push 0x520278
push esi
call 0x58c510
fild dword [edi + 0x118]
mov eax, dword [edi + 0x118]
test eax, eax
jge 0x551daa
fadd qword [0x514f58]
add esp, 0x18
fstp qword [esp]
push esi
call 0x58c490
push ebx
push esi
call 0x58c850
push 0x52026c
push esi
call 0x58c510
movzx eax, word [edi + 0x9a]
mov dword [ebp - 0x18], eax
add esp, 0x14
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call 0x58c490
push ebx
push esi
call 0x58c850
push 0x520260
push esi
call 0x58c510
movzx eax, byte [edi + 0x6c]
mov dword [ebp - 0x18], eax
add esp, 0x14
fild dword [ebp - 0x18]
fstp qword [esp]
push esi
call 0x58c490
push ebx
push esi
call 0x58c850
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 0x51dc74
push eax
call fcn.004f3c61
push 0x51f29c
push esi
call 0x58c510
push dword [ebp - 0x10]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
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 0x51dc74
push eax
call fcn.004f3c61
push 0x51f2ac
push esi
call 0x58c510
push dword [ebp - 0x10]
push esi
call 0x58c510
push ebx
push esi
call 0x58c850
mov ecx, dword [ebp - 0x10]
add esp, 0x30
add ecx, 0xfffffff0
call fcn.004f2337
call 0x5cbc0a
ret