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

Disassembly:
sub esp, 0x7c
mov eax, dword [esp + 0x80]
push ebx
push ebp
push esi
xor ebx, ebx
or esi, 0xffffffff
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x1c], esi
mov dl, byte [eax]
mov ecx, esi
test dl, dl
push edi
mov dword [esp + 0x38], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ecx
mov ebp, esi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x40], eax
mov dword [esp + 0x28], ebx
je 0x454ac9
cmp dword [esp + 0x28], 6
jge 0x454abd
lea eax, [esp + 0x90]
mov byte [esp + 0x13], 0
push eax
call fcn.00454ca0
mov eax, dword [0x4a51d0]
mov edi, 1
add esp, 4
cmp eax, edi
jle 0x4547ed
mov edx, dword [esp + 0x90]
xor ecx, ecx
push 0x103
mov cl, byte [edx]
push ecx
call fcn.0042a43e
mov edx, dword [esp + 0x98]
add esp, 8
jmp 0x454807
mov edx, dword [esp + 0x90]
mov ecx, dword [str.________________________________H]
xor eax, eax
mov al, byte [edx]
mov ax, word [ecx + eax*2]
and eax, 0x103
cmp eax, ebx
je 0x4548b3
mov al, byte [0x4af4d4]
mov ecx, 7
mov byte [esp + 0x44], al
xor eax, eax
lea edi, [esp + 0x45]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x44]
stosw word es:[edi], ax
push ecx
push str._31_A_Za_z_
push edx
stosb byte es:[edi], al
call fcn.0047154a
lea edi, [esp + 0x50]
mov ecx, esi
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x38]
or edi, 0xffffffff
not ecx
dec ecx
cmp eax, edi
mov esi, ecx
jne 0x45486b
lea edx, [esp + 0x44]
push esi
push edx
call fcn.00454bd0
add esp, 8
cmp eax, edi
mov dword [esp + 0x38], eax
jne 0x4548a5
cmp dword [esp + 0x1c], edi
jne 0x454886
lea eax, [esp + 0x44]
push eax
call fcn.00454c20
add esp, 4
cmp eax, edi
mov dword [esp + 0x1c], eax
jne 0x4548a5
cmp ebp, edi
jne 0x454aa9
lea ecx, [esp + 0x44]
push ecx
call fcn.00454c60
mov ebp, eax
add esp, 4
cmp ebp, edi
je 0x454aa9
mov edx, dword [esp + 0x90]
add edx, esi
jmp 0x454a8b
cmp dword [0x4a51d0], edi
jle 0x4548d3
xor eax, eax
push 4
mov al, byte [edx]
push eax
call fcn.0042a43e
mov edx, dword [esp + 0x98]
add esp, 8
jmp 0x4548e2
mov eax, dword [str.________________________________H]
xor ecx, ecx
mov cl, byte [edx]
mov al, byte [eax + ecx*2]
and eax, 4
cmp eax, ebx
je 0x454a95
cmp dword [esp + 0x20], esi
jne 0x454928
lea ecx, [esp + 0x20]
lea eax, [esp + 0x2c]
push ecx
lea ecx, [esp + 0x34]
push eax
push ecx
push str._02d:_02d:_02d
push edx
call fcn.0047154a
mov edx, dword [esp + 0xa4]
add esp, 0x14
cmp eax, 3
jne 0x454928
add edx, 8
mov dword [esp + 0x90], edx
jmp 0x454a95
lea eax, [esp + 0x3c]
push 0xa
push eax
push edx
call fcn.00427cbf
add esp, 0xc
cmp ebp, esi
mov esi, dword [esp + 0x90]
mov ecx, eax
jne 0x4549a6
mov edx, dword [esp + 0x3c]
sub edx, esi
cmp edx, 4
jne 0x4549a6
cmp ecx, 0x514
jge 0x4549a6
cmp dword [esp + 0x40], esi
jae 0x4549a6
mov bl, byte [esi - 1]
cmp bl, 0x2b
je 0x45496b
cmp bl, 0x2d
jne 0x4549a4
mov eax, 0x51eb851f
mov ebp, 0x64
imul ecx
sar edx, 5
mov eax, edx
mov byte [esp + 0x13], 1
shr eax, 0x1f
add edx, eax
lea eax, [edx + edx*2]
lea edi, [eax + eax*4]
mov eax, ecx
cdq
idiv ebp
lea eax, [edx + edi*4]
lea eax, [eax + eax*2]
lea ebp, [eax + eax*4]
shl ebp, 2
cmp bl, 0x2b
jne 0x4549a4
neg ebp
xor ebx, ebx
mov edi, dword [esp + 0x3c]
mov edx, edi
sub edx, esi
cmp edx, 8
jne 0x454a10
mov eax, dword [esp + 0x14]
or edx, 0xffffffff
cmp eax, edx
jne 0x454a13
cmp dword [esp + 0x1c], edx
jne 0x454a13
cmp dword [esp + 0x18], edx
jne 0x454a13
mov eax, 0x68db8bad
mov esi, 0x2710
imul ecx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, ecx
mov dword [esp + 0x14], edx
cdq
idiv esi
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
lea edx, [edx + eax - 1]
mov eax, ecx
mov dword [esp + 0x1c], edx
mov ecx, 0x64
cdq
idiv ecx
mov dword [esp + 0x18], edx
jmp 0x454a89
or edx, 0xffffffff
mov al, byte [esp + 0x13]
test al, al
jne 0x454a89
mov eax, dword [esp + 0x24]
cmp eax, ebx
jne 0x454a51
cmp dword [esp + 0x18], edx
jne 0x454ab3
cmp ecx, ebx
jle 0x454a3f
cmp ecx, 0x20
jge 0x454a3f
mov dword [esp + 0x18], ecx
mov byte [esp + 0x13], 1
mov al, byte [esp + 0x13]
mov dword [esp + 0x24], 1
test al, al
jne 0x454a89
jmp 0x454a56
cmp eax, 1
jne 0x454ab3
cmp dword [esp + 0x14], edx
jne 0x454ab3
cmp ecx, 0x76c
mov dword [esp + 0x14], ecx
jge 0x454a7f
cmp ecx, 0x46
jle 0x454a75
add ecx, 0x76c
jmp 0x454a7b
add ecx, 0x7d0
mov dword [esp + 0x14], ecx
cmp dword [esp + 0x18], edx
jne 0x454a89
mov dword [esp + 0x24], ebx
mov edx, edi
mov dword [esp + 0x90], edx
or esi, 0xffffffff
mov ecx, dword [esp + 0x28]
mov al, byte [edx]
inc ecx
test al, al
mov dword [esp + 0x28], ecx
je 0x454abd
jmp 0x45479d
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret
pop edi
pop esi
pop ebp
mov eax, edx
pop ebx
add esp, 0x7c
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
cmp eax, esi
jne 0x454ad7
xor eax, eax
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x18]
cmp edi, esi
je 0x454bb8
mov edx, dword [esp + 0x1c]
cmp edx, esi
je 0x454bb8
cmp ecx, esi
je 0x454bb8
cmp ecx, 0x7f5
jle 0x454b0c
pop edi
pop esi
pop ebp
mov eax, bind
pop ebx
add esp, 0x7c
ret
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x2c]
add ecx, 0xfffff894
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x7c], ecx
lea ecx, [esp + 0x68]
mov dword [esp + 0x70], eax
push ecx
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], edx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
call fcn.00428f34
add esp, 4
cmp eax, esi
mov dword [esp + 0x34], eax
je 0x454bba
lea edx, [esp + 0x34]
push edx
call fcn.00429126
add esp, 4
cmp eax, ebx
je 0x454bb8
mov esi, eax
mov ecx, 9
lea edi, [esp + 0x44]
lea eax, [esp + 0x44]
rep movsd dword es:[edi], dword [esi]
push eax
call fcn.00428f34
mov ecx, ebp
add esp, 4
inc ecx
neg ecx
sbb ecx, ecx
and ecx, ebp
sub ecx, eax
mov eax, dword [esp + 0x34]
add ecx, eax
cmp ecx, ebx
jle 0x454bae
lea edx, [ecx + eax]
cmp edx, eax
jge 0x454bae
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x7c
ret
pop edi
pop esi
pop ebp
add eax, ecx
pop ebx
add esp, 0x7c
ret
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret