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

Disassembly:
push 0xffffffffffffffff
push 0x52c281
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x59c6b8]
xor eax, esp
mov dword [esp + 0x3c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x59c6b8]
xor eax, esp
push eax
lea eax, [esp + 0x54]
mov dword fs:[0], eax
mov ebx, dword [esp + 0x74]
mov edi, dword [esp + 0x78]
mov eax, dword [esp + 0x64]
mov ebp, dword [esp + 0x80]
mov esi, ecx
cmp dword [esi + 0x198], 0
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], edi
jne 0x456dad
cmp dword [esi + 0x8c], 0
je 0x456f0b
test ecx, ecx
jne 0x456f0b
cmp dword [esp + 0x70], ecx
je 0x456ef1
push 0x14
call fcn.00511699
add esp, 4
mov dword [esp + 0x18], eax
xor edi, edi
mov dword [esp + 0x5c], edi
cmp eax, edi
je 0x456de2
push ebp
push ebx
mov ecx, eax
call fcn.0046cc60
mov edi, eax
or ebp, 0xffffffff
push 0x20
mov dword [esp + 0x60], ebp
call fcn.00511699
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x5c], 1
test eax, eax
je 0x456e0f
push edi
mov ecx, eax
call fcn.0046cd10
mov edi, eax
jmp 0x456e11
xor edi, edi
mov eax, dword [edi]
mov edx, dword [eax + 8]
mov ecx, edi
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x24], edi
call edx
push 0x54ad84
mov ecx, esi
xor ebx, ebx
call fcn.00451b50
mov eax, dword [edi]
mov edx, dword [eax + 0x10]
mov ecx, edi
call edx
cmp eax, 0xa
je 0x456e30
cmp eax, 0xd
je 0x456e30
cmp eax, 0x3e
je 0x456ebc
cmp eax, ebp
je 0x456ebc
mov ecx, dword [esi + 0x19c]
mov byte [esp + 0x14], al
test ecx, ecx
je 0x456e62
push eax
call fcn.004a1dd0
jmp 0x456e7b
mov ecx, dword [esi + 0x94]
mov edx, dword [esi + 0x90]
push 1
lea eax, [esp + 0x18]
push eax
push ecx
call edx
add esp, 0xc
inc ebx
cmp ebx, 0xf0
jne 0x456e30
mov ecx, dword [esi + 0x19c]
test ecx, ecx
je 0x456e9c
push 0x54ad80
call fcn.004a1e60
xor ebx, ebx
jmp 0x456e30
mov eax, dword [esi + 0x94]
mov ecx, dword [esi + 0x90]
push 3
push 0x54ad80
push eax
call ecx
add esp, 0xc
xor ebx, ebx
jmp 0x456e30
push 0x54ad7c
mov ecx, esi
call fcn.00451b50
push 0x54ad78
mov ecx, esi
call fcn.00451b50
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
mov ecx, edi
call eax
mov edx, dword [edi]
mov eax, dword [edx]
push 1
mov ecx, edi
call eax
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
jmp 0x456f07
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 8]
push ecx
push eax
push str.ImData_0:d_1:d_0_n
push esi
call fcn.00451ba0
add esp, 0x10
mov ecx, dword [esp + 0x20]
cmp dword [esi + 0x198], 0
jne 0x456f1d
cmp dword [esi + 0x8c], 0
je 0x456f46
test ecx, ecx
jne 0x456f4a
mov eax, 0x533f24
cmp dword [esp + 0x6c], ecx
jne 0x456f31
mov eax, str.false
mov ebp, dword [esp + 0x7c]
push ebp
mov ecx, ebp
neg ecx
push ecx
push edi
push eax
push ebp
push edi
push str.0:d_1:d_2:s__3:d_0_0_4:d_0_5:d__pdfImM1a_n
jmp 0x456f8b
test ecx, ecx
je 0x456f67
mov ebp, dword [esp + 0x7c]
push ebp
mov edx, ebp
neg edx
push edx
push edi
push ebp
push edi
push str.0:d_1:d_8__2:d_0_0_3:d_0_4:d__pdfIm1_n
push esi
call fcn.00451ba0
add esp, 0x1c
jmp 0x456f94
cmp dword [esp + 0x6c], 0
mov eax, 0x533f24
jne 0x456f78
mov eax, str.false
mov ebp, dword [esp + 0x7c]
push ebp
mov ecx, ebp
neg ecx
push ecx
push edi
push eax
push ebp
push edi
push str.0:d_1:d_2:s__3:d_0_0_4:d_0_5:d__pdfImM1_n
push esi
call fcn.00451ba0
add esp, 0x20
cmp dword [esi + 0x198], 0
jne 0x456fa6
cmp dword [esi + 0x8c], 0
je 0x456fb3
cmp dword [esp + 0x20], 0
je 0x4571cd
jmp 0x456fbe
cmp dword [esp + 0x20], 0
je 0x457107
push 0x24
call fcn.00511699
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x5c], 2
test eax, eax
je 0x456ff1
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx + 8]
push edx
push ecx
push edi
push ebx
mov ecx, eax
call fcn.0046a890
mov ebx, eax
jmp 0x456ff3
xor ebx, ebx
mov ecx, ebx
mov dword [esp + 0x5c], 0xffffffff
call fcn.0046a960
xor edi, edi
test ebp, ebp
jle 0x4570df
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x28]
test eax, eax
jle 0x4570a0
mov ebp, eax
mov edi, edi
lea edx, [esp + 0x30]
push edx
mov ecx, ebx
call fcn.0046d940
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x28]
call fcn.0042c5b0
mov edx, dword [esp + 0x2c]
imul edx, edx, 0xff
add edx, 0x8000
sar edx, 0x10
movzx eax, dl
push eax
push str.0:02x
push esi
call fcn.00451ba0
inc edi
add esp, 0xc
cmp edi, 0x20
jne 0x45709d
mov ecx, dword [esi + 0x19c]
mov byte [esp + 0x14], 0xa
test ecx, ecx
je 0x457082
push 0xa
call fcn.004a1dd0
jmp 0x45709b
mov edx, dword [esi + 0x94]
mov eax, dword [esi + 0x90]
push 1
lea ecx, [esp + 0x18]
push ecx
push edx
call eax
add esp, 0xc
xor edi, edi
dec ebp
jne 0x457020
dec dword [esp + 0x18]
jne 0x457010
test edi, edi
je 0x4570df
mov ecx, dword [esi + 0x19c]
mov byte [esp + 0x14], 0xa
test ecx, ecx
je 0x4570c6
push 0xa
call fcn.004a1dd0
jmp 0x4570df
mov edx, dword [esi + 0x94]
mov eax, dword [esi + 0x90]
push 1
lea ecx, [esp + 0x18]
push ecx
push edx
call eax
add esp, 0xc
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
test ebx, ebx
je 0x4571cd
mov ecx, ebx
call fcn.0046a930
push ebx
call fcn.0051163f
add esp, 4
jmp 0x4571cd
mov edx, dword [ebx]
mov eax, dword [edx + 8]
mov ecx, ebx
call eax
xor edi, edi
test ebp, ebp
jle 0x4571c4
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x28]
test eax, eax
jle 0x457189
lea ebp, [eax - 1]
shr ebp, 3
inc ebp
lea ecx, [ecx]
mov edx, dword [ebx]
mov eax, dword [edx + 0x10]
mov ecx, ebx
call eax
and eax, 0xff
push eax
push str.0:02x
push esi
call fcn.00451ba0
inc edi
add esp, 0xc
cmp edi, 0x20
jne 0x457186
mov ecx, dword [esi + 0x19c]
mov byte [esp + 0x14], 0xa
test ecx, ecx
je 0x45716b
push 0xa
call fcn.004a1dd0
jmp 0x457184
mov edx, dword [esi + 0x94]
mov eax, dword [esi + 0x90]
push 1
lea ecx, [esp + 0x18]
push ecx
push edx
call eax
add esp, 0xc
xor edi, edi
dec ebp
jne 0x457130
dec dword [esp + 0x18]
jne 0x45711e
test edi, edi
je 0x4571c4
mov ecx, dword [esi + 0x19c]
mov byte [esp + 0x1c], 0xa
test ecx, ecx
je 0x4571ab
push 0xa
call fcn.004a1dd0
jmp 0x4571c4
mov edx, dword [esi + 0x94]
mov eax, dword [esi + 0x90]
push 1
lea ecx, [esp + 0x20]
push ecx
push edx
call eax
add esp, 0xc
mov edx, dword [ebx]
mov eax, dword [edx + 0xc]
mov ecx, ebx
call eax
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x3c]
xor ecx, esp
call fcn.00511afd
add esp, 0x4c
ret 0x20