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

Disassembly:
add esp, 4
pop edx
cmp dword [ebp - 0x1518], 0
jne 0x459511
mov dword [ebp - 0x710], 0
jmp 0x4597b8
mov edx, dword [ebp - 0x1518]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc58], ecx
push ebx
push ecx
add esp, 4
call 0x459534
add byte [esi], bh
xor al, 0x3e
cmp esi, dword ss:[ebx + eax*4]
les eax, [ecx + eax*4]
retf
push edx
push ebx
add esp, 4
call 0x4597cd
add byte [ebx], bh
inc esi
cmp esi, dword [0x363a4b38]
xor al, 0x4e
add esp, 4
and edx, 0xcf7e
pop edx
push edx
sub edx, 0x2d87
jmp 0x4597e3
and edx, 0xcc27
pop edx
cmp dword [ebp - 0x710], 0
jne 0x459834
push edx
push edi
add esp, 4
or edx, 0xf719
pop edx
push eax
add eax, 0x85f5
xor eax, 0x13574
pop eax
push edx
push edi
add esp, 4
sub edx, 0xeb24
pop edx
push ecx
push edi
add esp, 4
or ecx, 0x7ad0
pop ecx
mov dword [ebp - 0xa58], 0
jmp 0x45a35c
push eax
push eax
add esp, 4
add eax, 0xb419
pop eax
push ebx
push esi
add esp, 4
add ebx, 0x15fe
or ebx, 0xada1
pop ebx
push edi
and edi, 0x134bd
xor edi, 0x8fda
xor edi, 0xcdaf
pop edi
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x300], edx
mov dword [ebp - 0x720], 0
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x1564], eax
cmp dword [ebp - 0x1564], 0
jne 0x4598a5
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x459b96
mov edx, dword [ebp - 0x1564]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1568], eax
jne 0x4598cd
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], ecx
jmp 0x459b96
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1568]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1570], edx
cmp dword [ebp - 0x1570], 0
jne 0x4598ff
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
jmp 0x459b96
mov ecx, dword [ebp - 0x300]
add ecx, dword [ebp - 0x1570]
mov dword [ebp - 0x714], ecx
jne 0x459924
mov edx, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], edx
jmp 0x459b96
mov eax, dword [ebp - 0x714]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x18e0], ecx
mov edx, dword [ebp - 0x714]
mov eax, dword [ebp - 0x300]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x18e4], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x18e8], edx
mov dword [ebp - 0x718], 0
jmp 0x45997e
mov eax, dword [ebp - 0x718]
add eax, 1
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ebp - 0x718]
cmp edx, dword [ecx + 0x18]
jae 0x459b8a
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e0]
mov edx, dword [ebp - 0x300]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0x71c], edx
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x18e4]
movzx edx, word [ecx + eax*2]
mov eax, dword [ebp - 0x18e8]
mov ecx, dword [ebp - 0x300]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x18ec], ecx
mov dword [ebp - 0x188], 0
jmp 0x4599ee
mov edx, dword [ebp - 0x188]
add edx, 1
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
test ecx, ecx
je 0x459aa0
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
test eax, eax
je 0x459aa0
push ebx
or ebx, 0x115a9
sub ebx, 0x527e
or ebx, 0x44a4
and ebx, 0x4f0a
pop ebx
push edi
push edi
add esp, 4
add edi, 0x124e4
sub edi, 0xb184
jmp 0x459a4c
pop edi
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
cmp edx, ecx
je 0x459a92
mov edx, dword [ebp - 0x71c]
add edx, dword [ebp - 0x188]
movsx eax, byte [edx]
xor eax, 0x20
mov ecx, dword [ebp - 0x188]
movsx edx, byte [ebp + ecx - 0x830]
cmp eax, edx
jne 0x459a99
jmp 0x4599df
jmp 0x459aa0
push edi
jmp 0x459aa9
pop edi
push edx
add edx, 0x14ab2
or edx, 0x62c5
sub edx, 0xe300
pop edx
push esi
xor esi, 0x126c7
add esi, 0x604e
and esi, 0xae33
pop esi
mov eax, dword [ebp - 0x71c]
add eax, dword [ebp - 0x188]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x188]
movsx eax, byte [ebp + edx - 0x830]
cmp ecx, eax
jne 0x459aff
mov dword [ebp - 0xc5c], 0
jmp 0x459b6e
push edi
push ecx
add esp, 4
call 0x459b12
add byte [edx], dh
cmp byte [edx], bh
dec eax
cmp al, 0x3d
xor cl, byte [ebx - 0x7d]
les eax, [ebx + ebp*8]
add eax, 0x5049504d
inc ebx
pop edi
push esi
jmp 0x459b24
and esi, 0x9861
xor esi, 0x14168
pop esi
mov ecx, dword [ebp - 0x71c]
add ecx, dword [ebp - 0x188]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x188]
movsx ecx, byte [ebp + eax - 0x830]
or ecx, 0x20
cmp edx, ecx
jge 0x459b64
mov dword [ebp - 0xc5c], 0xffffffff
jmp 0x459b6e
mov dword [ebp - 0xc5c], 1
cmp dword [ebp - 0xc5c], 0
jne 0x459b85
mov edx, dword [ebp - 0x18ec]
mov dword [ebp - 0x3c8], edx
jmp 0x459b96
jmp 0x45996f
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x3c8], eax
cmp dword [ebp - 0x3c8], 0
je 0x459c71
push eax
push esi
add esp, 4
and eax, 0x1397f
pop eax
push eax
call 0x459bbc
add byte [edx + ecx*2 + 0x42], al
inc esi
dec edi
add esp, 4
or eax, 0x12cd5
pop eax
push ecx
push eax
add esp, 4
jmp 0x459bd4
pop ecx
mov ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x18f0], ecx
push ecx
or ecx, 0x8a95
pop ecx
push edi
push eax
add esp, 4
add edi, 0x138d2
add edi, 0x185de
pop edi
push ecx
push edi
add esp, 4
add ecx, 0xd692
and ecx, 0x957e
sub ecx, 0x15041
pop ecx
mov edx, dword [ebp - 0x18f0]
mov dword [ebp - 0x18f4], edx
lea eax, [ebp - 0x1628]
push eax
call dword [ebp - 0x18f4]
test eax, eax
jne 0x459c71
push ebx
or ebx, 0x12928
or ebx, 0xc59a
sub ebx, 0x14700
xor ebx, 0x1095e
pop ebx
push esi
push esi
add esp, 4
add esi, 0xae22
and esi, 0xc9d7
sub esi, 0x656a
pop esi
mov dword [ebp - 0xa58], 0
jmp 0x45a35c
push edi
push edx
add esp, 4
sub edi, 0x14523
or edi, 0x601f
sub edi, 0x17a25
sub edi, 0xb10c
pop edi
push ecx
xor ecx, 0xf41c
pop ecx
push ecx
push ebx
add esp, 4
xor ecx, 0x77f5
pop ecx
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x18f8], ecx
mov edx, dword [ebp - 0x18f8]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18fc], eax
mov ecx, dword [ebp - 0x18fc]
mov dword [ebp - 0x1574], ecx
push ecx
push eax
add esp, 4
jmp 0x459cd6
or ecx, 0x156
and ecx, 0x1a21
pop ecx
push esi
add esi, 0x8b46
xor esi, 0xe4a6
add esi, 0xb926
or esi, 0xaba0
pop esi
cmp dword [ebp - 0x1574], 0
jne 0x459d15
mov dword [ebp - 0x2a8], 0
jmp 0x459fbc
mov edx, dword [ebp - 0x1574]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xc68], ecx
push ecx
jmp 0x459d31
or ecx, 0x15d
pop ecx
push edi
push ecx
add esp, 4
add edi, 0x96ac
xor edi, 0x141c4
call 0x459d55
add byte [0x4d3d474e], bh
cmp byte [ebx - 0x7ca0fb3c], al
mov ebp, 0xfffff398
add byte [ebp + 0xf], dh
mov dword [ebp - 0x2a8], 0
jmp 0x459fbc
push edx
push esi
add esp, 4
add edx, 0x6088
pop edx
push esi
or esi, 0x10ab
jmp 0x45a374
and esi, 0x6d27
call 0x45a38a
add byte [eax + 0x43], al
inc edx
xor eax, 0x324e3b41
inc edi
dec ecx
add esp, 4
pop esi
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x1910], edx
lea eax, [ebp - 0xc70]
push eax
push 0x40
mov ecx, dword [ebp - 0x158c]
push ecx
mov edx, dword [ebp - 0x3cc]
push edx
call dword [ebp - 0x1910]
test eax, eax
jne 0x45a401
push eax
or eax, 0xf6fc
pop eax
push esi
push eax
add esp, 4
sub esi, 0xb2bc
call 0x45a3dd
add byte [edi], bh
xor eax, 0x34474036
dec esi
inc ebp
add esp, 4
sub esi, 0x1139d
or esi, 0x1100f
pop esi
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0x1914], eax
push 0
call dword [ebp - 0x1914]
mov ecx, dword [ebp - 0x1918]
mov dword [ebp - 0x734], ecx
jmp 0x45a41e
mov edx, dword [ebp - 0x734]
add edx, 1
mov dword [ebp - 0x734], edx
mov eax, dword [ebp - 0x734]
cmp eax, dword [ebp - 0xa5c]
jae 0x45a47a
push ecx
push edi
add esp, 4
sub ecx, 0x157ff
call 0x45a447
add byte [ebx + 0x32], cl
dec eax
dec edx
xor al, 0x41
cmp al, 0x32
inc eax
inc esp
add esp, 4
jmp 0x45a44f
jmp 0x45a455
pop ecx
push ebx
and ebx, 0x159e3
pop ebx
movzx ecx, byte [ebp - 0x381]
mov edx, dword [ebp - 0x734]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x734]
mov byte [ecx], al
jmp method.CMFCPrintPreviewToolBar.virtual_4
mov edx, dword [ebp - 0xa58]
mov dword [ebp - 0x191c], edx
xchg ebp, eax
in al, 0xe6
invalid
dec dword [ebp - 0xc6f7b]
call dword [eax - 0x75]
lea edx, [eax + 0x51fffff3]
mov edx, dword [ebp - 0x158c]
push edx
mov eax, dword [ebp - 0x3cc]
push eax
call dword [ebp - 0x191c]
test eax, eax
jne 0x45a4f2
push esi
push eax
add esp, 4
and esi, 0x2c5b
or esi, 0x86f3
and esi, 0x11f29
pop esi
push edx
xor edx, 0xf84a
or edx, 0xafee
sub edx, 0x3f4c
xor edx, 0x12572
pop edx
mov ecx, dword [ebp - 0x738]
mov dword [ebp - 0x1920], ecx
push 0
call dword [ebp - 0x1920]
push edx
push ecx
add esp, 4
sub edx, 0x80fb
pop edx
push edi
push eax
add esp, 4
add edi, 0xa49a
pop edi
push esi
jmp 0x45a514
jmp 0x45a51d
xor esi, 0xd03c
pop esi
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff09ff
pop ecx
pop ebx
pop edx
mov ebp, cs
or eax, 0x52550ef4
cmp al, 0x4e
mov cl, bl
pop eax
push ebp
or dword [ecx], ecx
arpl word [ecx - 0x76], bx
leave
leave
or cl, byte fs:[ecx]
mov dh, cl
xchg esp, eax
sub dword [ecx], ecx
or ecx, esi
adc cl, byte [ecx]
or dword [ecx], ecx
or dword [ebp + 0x54], eax
push ebp
dec ebx
push ebx
dec esp
dec ebx
cmp al, 0x8c
int 0xd
popal
ret