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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x164
mov eax, dword [0x5b0008]
xor eax, esp
mov dword [esp + 0x160], eax
mov eax, dword [ebp + 8]
mov edx, ecx
mov ecx, dword [ebp + 0x14]
push ebx
mov dword [esp + 0x38], eax
xor ebx, ebx
mov eax, dword [ebp + 0x1c]
push esi
add eax, ecx
mov dword [esp + 0x24], edx
mov byte [esp + 0x18], 0
mov byte [esp + 0xb], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x50], eax
push edi
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x18], edi
cmp ecx, eax
jge 0x457b04
mov esi, dword [ebp + 0x18]
mov eax, dword [ebp + 0x10]
add esi, eax
nop dword [eax]
mov dword [esp + 0x44], eax
cmp dword [ebp + 0x10], esi
jge 0x457aed
mov ecx, dword [ebp + 0x18]
mov dword [esp + 0x48], ecx
mov edi, dword [ebp + 0x14]
mov esi, 0x10
cmp ecx, esi
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edi
cmovl esi, ecx
cmp dword [ebp + 0x1c], 0x10
mov ecx, 0x10
mov dword [esp + 0x4c], esi
cmovl ecx, dword [ebp + 0x1c]
add eax, esi
mov dword [esp + 0x60], eax
mov eax, edi
add eax, ecx
mov dword [esp + 0x3c], ecx
lea ecx, [esp + 0x58]
mov dword [esp + 0x64], eax
mov eax, dword [edx]
push ecx
lea ecx, [esp + 0x6c]
push ecx
push dword [esp + 0x48]
mov ecx, edx
call dword [eax + 0x14]
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x68]
add eax, ebx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], eax
inc ebx
xor edi, edi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], 1
mov byte [eax], 0
mov eax, dword [esp + 0x3c]
imul eax, esi
xor esi, esi
mov dword [esp + 0x10], 1
mov edx, eax
mov dword [esp + 0x50], eax
xor al, al
mov dword [esp + 0x2c], edx
xor ah, ah
test edx, edx
jle 0x4579d1
mov bl, byte [ecx]
test edi, edi
jne 0x457983
mov al, bl
inc edi
jmp 0x4579b1
cmp bl, al
jne 0x45798a
inc edi
jmp 0x4579b1
test esi, esi
movzx ecx, ah
movzx edx, bl
cmovne edx, ecx
xor ecx, ecx
test esi, esi
mov ah, dl
cmovne ecx, dword [esp + 0x10]
mov dword [esp + 0x10], ecx
cmp bl, ah
jne 0x4579c1
mov ecx, dword [esp + 0x30]
inc esi
mov edx, dword [esp + 0x2c]
dec edx
inc ecx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], ecx
test edx, edx
jg 0x457978
jmp 0x4579cd
mov dword [esp + 0x38], 0
mov dword [esp + 0x10], ecx
mov ebx, dword [esp + 0x24]
cmp edi, esi
movzx ecx, ah
movzx edx, al
cmovle edx, ecx
movzx ecx, ah
movzx eax, al
cmovle ecx, eax
cmp dword [esp + 0x20], 0
je 0x4579f2
cmp dl, byte [esp + 0x1c]
je 0x457a11
mov esi, dword [esp + 0x34]
mov al, dl
mov edi, dword [esp + 0x18]
mov dword [esp + 0x20], 1
mov byte [esp + 0x1c], al
or byte [esi], 2
mov byte [edi + ebx], al
inc ebx
jmp 0x457a19
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x18]
cmp dword [esp + 0x10], 0
jne 0x457ac2
mov al, byte [esi]
mov edx, dword [esp + 0x38]
or al, 8
mov byte [esi], al
test edx, edx
je 0x457a55
cmp dword [esp + 0x14], 0
je 0x457a3f
cmp cl, byte [esp + 0xf]
je 0x457a61
or al, 4
mov dword [esp + 0x14], 1
mov byte [esi], al
mov byte [edi + ebx], cl
inc ebx
mov byte [esp + 0xf], cl
jmp 0x457a61
or al, 0x10
mov dword [esp + 0x14], 0
mov byte [esi], al
push edx
push ecx
push dword [esp + 0x24]
lea edx, [edi + ebx]
push dword [esp + 0x48]
lea ecx, [esp + 0x78]
push dword [esp + 0x5c]
call fcn.00457b20
add esp, 0x14
add ebx, eax
test eax, eax
jne 0x457ac2
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x58]
mov ebx, dword [esp + 0x24]
push edx
lea edx, [esp + 0x6c]
mov dword [esp + 0x24], eax
mov dword [esp + 0x18], eax
mov byte [esi], 1
mov eax, dword [ecx]
push edx
push dword [esp + 0x48]
call dword [eax + 0x14]
mov esi, dword [esp + 0x50]
lea eax, [esp + 0x68]
push esi
push eax
lea eax, [edi + ebx]
push eax
call fcn.0051aed0
add esp, 0xc
add ebx, esi
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
add eax, 0x10
mov esi, dword [ebp + 0x10]
sub ecx, 0x10
add esi, dword [ebp + 0x18]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
cmp eax, esi
jl 0x4578e4
mov ecx, dword [ebp + 0x14]
sub dword [ebp + 0x1c], 0x10
add ecx, 0x10
mov eax, dword [ebp + 0x10]
mov dword [ebp + 0x14], ecx
cmp ecx, dword [esp + 0x54]
jl 0x4578d0
mov ecx, dword [esp + 0x16c]
mov eax, ebx
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00519459
mov esp, ebp
pop ebp
ret 0x18