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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x552f0e
sub esp, 0x78
mov ecx, dword [esp + 0x7c]
movzx edx, byte [ecx + 8]
test dl, dl
je 0x552ec8
mov edx, dword [ecx + 0x28]
movzx ebx, byte [edx + 0x61]
test bl, bl
je 0x552a6e
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
add esp, 0x78
ret
mov edx, dword [edx + 0x84]
test edx, edx
je 0x552a54
mov edx, dword [esp + 0x80]
mov eax, dword [edx + 0xc]
test eax, eax
je 0x552eae
mov ebx, 0x3b9aca00
mul ebx
cmp eax, 0xf9290000
seta bl
cmp edx, 0x2260f
xchg esi, ebx
sete bl
xchg esi, ebx
xchg edi, ebx
setg bl
xchg edi, ebx
and esi, ebx
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
jne 0x552e68
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
movzx eax, word [ecx + 0x32]
mov word [esp], ax
call fcn.005406f0
mov eax, dword [esp + 4]
test eax, eax
je 0x552e62
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax + 0x74]
test ecx, ecx
je 0x552e3b
mov ecx, dword [eax + 0x28]
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x552e30
mov eax, dword [ecx]
mov edx, ecx
call eax
lea edi, [esp + 0x64]
lea esi, [esp]
call fcn.0045e58e
lea edi, [esp + 0x3c]
lea esi, [esp + 0x64]
call fcn.0045e58e
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax + 0x28]
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x552e25
mov eax, dword [ecx]
mov edx, ecx
call eax
lea edi, [esp + 0x64]
lea esi, [esp]
call fcn.0045e58e
lea edi, [esp + 0x50]
lea esi, [esp + 0x64]
call fcn.0045e58e
lea edi, [esp]
lea esi, [esp + 0x50]
call fcn.0045e58e
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x14], eax
call fcn.0049eec0
lea edi, [esp + 0x64]
lea esi, [esp + 0x1c]
call fcn.0045e58e
lea eax, [0x6018e0]
mov dword [esp], eax
call fcn.0040b8d0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x20]
mov ebx, dword [eax + 0x24]
mov ebp, dword [eax + 0x28]
mov dword [edi + 4], ebx
mov dword [edi + 8], ebp
mov ebx, dword [0x7a0970]
test ebx, ebx
jne 0x552e15
mov dword [edi], ecx
mov ecx, dword [esp + 0x7c]
movzx edx, word [ecx + 0x24]
mov word [edi + 0xc], dx
movzx edx, word [ecx + 0x32]
mov word [edi + 0xe], dx
mov edx, dword [ecx + 0x74]
mov ebx, dword [ecx + 0x78]
mov ebp, dword [ecx + 0x7c]
mov dword [edi + 0x14], ebx
mov dword [edi + 0x18], ebp
mov ebx, dword [0x7a0970]
test ebx, ebx
jne 0x552dfc
mov dword [edi + 0x10], edx
mov edx, dword [ecx + 0x4c]
mov ebx, dword [ecx + 0x50]
mov ebp, dword [ecx + 0x54]
mov dword [edi + 0x20], ebx
mov dword [edi + 0x24], ebp
mov ebx, dword [0x7a0970]
test ebx, ebx
jne 0x552de3
mov dword [edi + 0x1c], edx
mov edx, dword [ecx + 0x58]
mov ebx, dword [ecx + 0x5c]
mov ebp, dword [ecx + 0x60]
mov dword [edi + 0x2c], ebx
mov dword [edi + 0x30], ebp
mov ebx, dword [0x7a0970]
test ebx, ebx
jne 0x552dca
mov dword [edi + 0x28], edx
mov dword [esp + 0x38], edi
lea edx, [edi + 0x34]
mov ebx, dword [0x7a0970]
test ebx, ebx
jne 0x552da0
mov ebx, edi
mov edi, edx
lea esi, [esp + 0x3c]
call fcn.0045e58e
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
mov ebp, dword [eax + 0x1c]
mov dword [ebx + 0x64], edx
mov dword [ebx + 0x68], ebp
mov edx, dword [0x7a0970]
test edx, edx
jne 0x552d8d
mov dword [ebx + 0x60], ecx
lea edi, [ebx + 0x6c]
mov ecx, dword [0x7a0970]
test ecx, ecx
jne 0x552d63
lea esi, [esp + 0x64]
call fcn.0045e58e
mov ecx, dword [eax + 0x10]
mov dword [ebx + 0x80], ecx
mov ecx, dword [esp + 0x7c]
mov eax, dword [ecx + 0x34]
mov edx, dword [ecx + 0x38]
mov ebp, dword [ecx + 0x3c]
mov dword [ebx + 0x4c], edx
mov dword [ebx + 0x50], ebp
mov edx, dword [0x7a0970]
test edx, edx
jne 0x552d56
mov dword [ebx + 0x48], eax
mov eax, dword [ecx + 0x40]
mov edx, dword [ecx + 0x44]
mov ebp, dword [ecx + 0x48]
mov dword [ebx + 0x58], edx
mov dword [ebx + 0x5c], ebp
mov edx, dword [0x7a0970]
test edx, edx
jne 0x552d49
mov dword [ebx + 0x54], eax
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov eax, dword [eax + 0x1c]
mov dword [esp], edx
call eax
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax + 0x28]
mov edx, dword [ecx + 0x44]
mov ecx, dword [ecx + 0x40]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
test edx, edx
jle 0x552d33
mov eax, dword [eax + 0x28]
mov ebx, dword [eax + 0x84]
mov eax, dword [eax + 0x88]
mov ebx, dword [ebx + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov eax, dword [esp + 0x38]
mov dword [esp + 0xc], eax
call ebx
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
add esp, 0x78
ret
mov eax, dword [ebx + 0x14]
mov dword [esp], ebp
call eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x7c]
jmp 0x552cf2
lea edi, [ebx + 0x54]
call fcn.0045de10
jmp 0x552ccc
lea edi, [ebx + 0x48]
call fcn.0045de10
jmp 0x552cac
lea eax, [0x60c6c0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x64]
mov dword [esp + 8], eax
call fcn.004106a0
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x38]
jmp 0x552c7f
lea edi, [ebx + 0x60]
mov edx, eax
mov eax, ecx
call fcn.0045de10
mov eax, edx
jmp 0x552c65
lea eax, [0x60c6c0]
mov dword [esp], eax
mov dword [esp + 4], edx
lea eax, [esp + 0x3c]
mov dword [esp + 8], eax
call fcn.004106a0
mov eax, dword [esp + 0x80]
mov ebx, dword [esp + 0x38]
jmp 0x552c45
lea ebx, [edi + 0x28]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045de10
mov eax, esi
mov edi, ebp
jmp 0x552c23
lea ebx, [edi + 0x1c]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045de10
mov eax, esi
mov edi, ebp
jmp 0x552c03
lea ebx, [edi + 0x10]
mov ebp, edi
mov edi, ebx
mov esi, eax
mov eax, edx
call fcn.0045de10
mov eax, esi
mov edi, ebp
jmp 0x552be3
mov edx, eax
mov eax, ecx
call fcn.0045de10
mov eax, edx
jmp 0x552baf
lea ecx, [0x627344]
jmp 0x552b2a
lea ecx, [0x627344]
jmp 0x552af9
mov dword [esp], eax
mov byte [esp + 4], 0x50
call fcn.005464e0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ecx
add esp, 0x78
ret
mov eax, dword [esp + 0x7c]
jmp 0x552e3b
mov dword [esp], ecx
mov byte [esp + 4], 0x2f
call fcn.005464e0
lea eax, [0x5e46a0]
mov dword [esp], eax
call fcn.0040b8d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x34
lea ecx, [0x61e67e]
mov dword [eax], ecx
lea ecx, [0x65e99c]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
add esp, 0x78
ret
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
add esp, 0x78
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.005464e0
lea eax, [0x5e46a0]
mov dword [esp], eax
call fcn.0040b8d0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x2e
lea ecx, [0x61d39a]
mov dword [eax], ecx
lea ecx, [0x65e99c]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
add esp, 0x78
ret
call fcn.0045c8b0
jmp fcn.00552a20