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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x118
mov esi, esp
mov dword [esi + 0x14], ebp
mov eax, dword [ebp + 8]
mov dword [esi + 0x6c], eax
mov ecx, esp
mov dword [esi + 0x104], ecx
mov dword [esi + 0x110], 0xffffffff
lea ecx, [esi + 0x108]
mov dword [esi + 0x10c], 0x44d2a0
mov edx, dword fs:[0]
mov dword [esi + 0x108], edx
mov dword fs:[0], ecx
mov byte [esi + 0xe3], 0
mov byte [esi + 0xe3], 1
mov edx, dword [eax]
xor eax, eax
mov ecx, 1
cmp edx, 0
cmove eax, ecx
cmp eax, 0
jne 0x445960
mov ecx, dword [esi + 0x6c]
mov dword [esi + 0xe4], ecx
mov dword [esi + 0x110], 0
mov eax, esp
mov dword [eax + 4], ecx
lea ecx, [esi + 0x98]
mov dword [eax], ecx
mov dword [eax + 8], 0x47
call fcn.004432f0
jmp 0x44598c
mov ecx, dword [esi + 0x6c]
mov dword [esi + 0x110], 0
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 8], 1
mov dword [eax + 4], 0x481b64
call fcn.00444cd0
mov byte [esi + 0x6b], al
jmp 0x445e7a
mov al, byte [esi + 0x98]
and al, 1
movzx eax, al
cmp eax, 0
jne 0x4459ce
mov ecx, dword [esi + 0x6c]
mov eax, dword [esi + 0xa0]
mov dword [esi + 0x60], eax
mov edx, dword [esi + 0xa4]
mov dword [esi + 0x64], edx
mov dword [esi + 0xec], edx
mov dword [esi + 0xe8], eax
add ecx, 0x10
mov eax, esp
mov dword [eax], ecx
call fcn.0043b0f0
mov byte [esi + 0x6a], al
jmp 0x4459f6
mov al, byte [esi + 0x99]
and al, 1
mov byte [esi + 0xaa], al
mov eax, esp
lea ecx, [esi + 0xaa]
mov dword [eax], ecx
call fcn.00443d10
mov dword [esi + 0x58], edx
mov dword [esi + 0x5c], eax
jmp 0x445dbe
mov al, byte [esi + 0x6a]
test al, 1
jne 0x445a0b
jmp 0x4459ff
mov ecx, dword [esi + 0x64]
mov eax, dword [esi + 0x60]
or eax, ecx
jne 0x445a41
jmp 0x445a26
mov ecx, dword [esi + 0x6c]
mov byte [esi + 0xe3], 0
mov eax, esp
mov dword [eax], ecx
call fcn.00449c70
mov byte [esi + 0x57], al
jmp 0x445dae
mov ecx, dword [esi + 0x6c]
mov byte [esi + 0xe3], 0
mov eax, esp
mov dword [eax], ecx
call fcn.00449c70
mov byte [esi + 0x56], al
jmp 0x445c04
mov ecx, dword [esi + 0x6c]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 8], 4
mov dword [eax + 4], str.for__
call fcn.00444cd0
mov byte [esi + 0x55], al
jmp 0x445a60
mov al, byte [esi + 0x55]
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
mov byte [esi + 0x54], al
jmp 0x445a77
mov al, byte [esi + 0x54]
and al, 1
mov byte [esi + 0xbf], al
mov al, byte [esi + 0xbf]
and al, 1
movzx eax, al
cmp eax, 0
jne 0x445ae1
mov ecx, dword [esi + 0x60]
mov edx, dword [esi + 0x64]
mov eax, esp
mov dword [eax + 0x10], edx
mov dword [eax + 0xc], ecx
lea ecx, [esi + 0x80]
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 0
call fcn.0043bd80
mov eax, dword [esi + 0x8c]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x88]
mov dword [esi + 0x48], eax
mov eax, dword [esi + 0x80]
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 0x84]
mov dword [esi + 0x50], eax
jmp 0x445af6
mov eax, esp
mov dword [eax], 0x481c58
call fcn.00459c00
mov byte [esi + 0x43], al
jmp 0x445d9e
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
mov edx, dword [esi + 0x50]
mov edi, dword [esi + 0x4c]
mov dword [esi + 0xc0], edi
mov dword [esi + 0xc4], edx
mov dword [esi + 0xc8], ecx
mov dword [esi + 0xcc], eax
mov eax, esp
lea ecx, [esi + 0xc0]
mov dword [eax + 4], ecx
lea ecx, [esi + 0x70]
mov dword [eax], ecx
call fcn.00438d80
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x78]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0x70]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x74]
mov dword [esi + 0x3c], eax
jmp 0x445b49
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x34]
mov edx, dword [esi + 0x3c]
mov edi, dword [esi + 0x38]
mov dword [esi + 0xd0], edi
mov dword [esi + 0xd4], edx
mov dword [esi + 0xd8], ecx
mov dword [esi + 0xdc], eax
mov eax, dword [esi + 0xd0]
cmp eax, 0
jne 0x445b97
mov ecx, dword [esi + 0x6c]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 8], 2
mov dword [eax + 4], 0x481c00
call fcn.00444cd0
mov byte [esi + 0x2f], al
jmp 0x445bbc
mov eax, dword [esi + 0xd8]
mov ecx, dword [esi + 0xdc]
mov dword [esi + 0xfc], ecx
mov dword [esi + 0xf8], eax
or eax, ecx
jne 0x445c99
jmp 0x445c82
mov al, byte [esi + 0x2f]
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
mov byte [esi + 0x2e], al
jmp 0x445bd3
mov al, byte [esi + 0x2e]
and al, 1
mov byte [esi + 0xe2], al
mov al, byte [esi + 0xe2]
and al, 1
movzx eax, al
cmp eax, 0
je 0x445a26
mov eax, esp
mov dword [eax], 0x481c14
call fcn.00459c00
mov byte [esi + 0x2d], al
jmp 0x445c68
mov eax, dword [esi + 0x6c]
mov ecx, dword [esi + 0x60]
mov dl, byte [esi + 0x56]
and dl, 1
mov byte [esi + 0xf7], dl
mov eax, dword [eax + 0x14]
mov edx, eax
sub edx, ecx
mov dword [esi + 0x28], edx
cmp eax, ecx
jb 0x445c3a
mov al, byte [esi + 0x56]
mov ecx, dword [esi + 0x6c]
mov edx, dword [esi + 0x28]
mov dword [ecx + 0x14], edx
and al, 1
mov byte [esi + 0x97], al
jmp 0x445c4b
mov eax, esp
mov dword [eax], 0x481c04
call fcn.00456ad0
jmp 0x445c49
ud2
mov al, byte [esi + 0x97]
mov ecx, dword [esi + 0x108]
mov dword fs:[0], ecx
and al, 1
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov al, byte [esi + 0x2d]
and al, 1
mov byte [esi + 0x97], al
test byte [esi + 0xe3], 1
jne 0x445e8a
jmp 0x445c4b
mov eax, dword [esi + 0x6c]
mov eax, dword [eax + 0x14]
add eax, 1
mov dword [esi + 0x24], eax
setb al
jb 0x445d24
jmp 0x445cff
mov ecx, dword [esi + 0x6c]
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 8], 2
mov dword [eax + 4], 0x481c24
call fcn.00444cd0
mov byte [esi + 0x23], al
jmp 0x445cb8
mov al, byte [esi + 0x23]
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
mov byte [esi + 0x22], al
jmp 0x445ccf
mov al, byte [esi + 0x22]
and al, 1
mov byte [esi + 0xe0], al
mov al, byte [esi + 0xe0]
and al, 1
movzx eax, al
cmp eax, 0
je 0x445c82
mov eax, esp
mov dword [eax], 0x481c48
call fcn.00459c00
mov byte [esi + 0x21], al
jmp 0x445d8e
mov ecx, dword [esi + 0x6c]
mov eax, dword [esi + 0x24]
mov dword [ecx + 0x14], eax
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 8], 0
mov dword [eax + 4], 1
call fcn.004455f0
mov byte [esi + 0x20], al
jmp 0x445d36
mov eax, esp
mov dword [eax], 0x481c28
call fcn.00456a90
jmp 0x445c49
mov al, byte [esi + 0x20]
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
mov byte [esi + 0x1f], al
jmp 0x445d4d
mov al, byte [esi + 0x1f]
and al, 1
mov byte [esi + 0xe1], al
mov al, byte [esi + 0xe1]
and al, 1
movzx eax, al
cmp eax, 0
je 0x445b1a
mov eax, esp
mov dword [eax], 0x481c38
call fcn.00459c00
mov byte [esi + 0x1e], al
jmp 0x445d7e
mov al, byte [esi + 0x1e]
and al, 1
mov byte [esi + 0x97], al
jmp 0x445c73
mov al, byte [esi + 0x21]
and al, 1
mov byte [esi + 0x97], al
jmp 0x445c73
mov al, byte [esi + 0x43]
and al, 1
mov byte [esi + 0x97], al
jmp 0x445c73
mov al, byte [esi + 0x57]
and al, 1
mov byte [esi + 0x97], al
jmp 0x445c73
mov ecx, dword [esi + 0x6c]
mov edx, dword [esi + 0x5c]
mov edi, dword [esi + 0x58]
mov eax, esp
mov dword [eax + 8], edi
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.00444cd0
mov byte [esi + 0x1d], al
jmp 0x445ddb
mov al, byte [esi + 0x1d]
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
mov byte [esi + 0x1c], al
jmp 0x445df2
mov al, byte [esi + 0x1c]
and al, 1
mov byte [esi + 0xab], al
mov al, byte [esi + 0xab]
and al, 1
movzx eax, al
cmp eax, 0
jne 0x445e58
mov eax, dword [esi + 0x6c]
mov cl, byte [esi + 0xaa]
and cl, 1
mov byte [esi + 0xb0], cl
mov dword [esi + 0xac], 0
mov ecx, dword [esi + 0xac]
mov dword [eax], ecx
mov ecx, dword [esi + 0xb0]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0xb4]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0xb8]
mov dword [eax + 0xc], ecx
mov byte [esi + 0x97], 0
jmp 0x445c73
mov eax, esp
mov dword [eax], 0x481c68
call fcn.00459c00
mov byte [esi + 0x1b], al
jmp 0x445e6a
mov al, byte [esi + 0x1b]
and al, 1
mov byte [esi + 0x97], al
jmp 0x445c73
mov al, byte [esi + 0x6b]
and al, 1
mov byte [esi + 0x97], al
jmp 0x445c73
jmp 0x445c4b