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

Disassembly:
jmp 0x470360
sub esp, 0x4c
mov eax, dword [0x586000]
xor eax, esp
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x54]
push ebx
push ebp
mov ebp, dword [esp + 0x70]
push esi
mov esi, dword [esp + 0x6c]
push edi
mov edi, dword [esp + 0x7c]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], esi
test edi, edi
je 0x47039e
mov al, byte [ebp]
cmp al, 0x2b
je 0x470399
cmp al, 0x2d
jne 0x47039e
xor ebx, ebx
inc ebx
jmp 0x4703a0
xor ebx, ebx
mov ecx, esi
call fcn.004569dd
and eax, 0xe00
cmp eax, 0x800
jne 0x4703d0
lea eax, [ebx + 2]
cmp eax, edi
ja 0x4703d0
cmp byte [ebx + ebp], 0x30
jne 0x4703d0
mov cl, byte [ebx + ebp + 1]
cmp cl, 0x78
je 0x4703ce
cmp cl, 0x58
jne 0x4703d0
mov ebx, eax
lea eax, [esp + 0x18]
mov ecx, esi
push eax
call fcn.004586b1
push eax
call fcn.00458e7c
pop ecx
lea ecx, [esp + 0x18]
mov esi, eax
call fcn.0045afec
push 0
push edi
lea ecx, [esp + 0x30]
call fcn.00459025
push 0
lea ecx, [esp + 0x2c]
call fcn.00456e56
push eax
lea eax, [edi + ebp]
mov ecx, esi
push eax
push ebp
call fcn.0045b690
mov ebp, dword [esp + 0x20]
lea eax, [esp + 0x18]
push eax
mov ecx, ebp
call fcn.004586b1
push eax
call fcn.0045c67b
pop ecx
mov esi, eax
lea ecx, [esp + 0x18]
mov dword [esp + 0x10], esi
call fcn.0045afec
lea eax, [esp + 0x40]
mov ecx, esi
push eax
call fcn.0045aa2e
push 0
lea ecx, [esp + 0x44]
call fcn.00457ae5
mov esi, eax
mov al, byte [esi]
cmp al, 0x7f
je 0x47049a
test al, al
jle 0x47049a
mov ecx, dword [esp + 0x10]
call fcn.0045b9ec
mov byte [esp + 0x10], al
jmp 0x470494
test al, al
jle 0x47049a
movsx ecx, al
mov eax, edi
sub eax, ebx
cmp ecx, eax
jae 0x47049a
push dword [esp + 0x10]
sub edi, ecx
lea ecx, [esp + 0x2c]
push 1
push edi
call fcn.0045b81b
lea eax, [esi + 1]
cmp byte [eax], 0
cmovg esi, eax
mov al, byte [esi]
cmp al, 0x7f
jne 0x47046a
lea ecx, [esp + 0x28]
call fcn.0045a137
mov edi, eax
mov ecx, ebp
mov dword [esp + 0x18], edi
call fcn.00456c1c
mov ebp, eax
test edx, edx
jl 0x4704c4
jg 0x4704bc
test ebp, ebp
je 0x4704c4
cmp ebp, edi
jbe 0x4704c4
sub ebp, edi
jmp 0x4704c6
xor ebp, ebp
mov ecx, dword [esp + 0x20]
call fcn.004569dd
mov esi, eax
and esi, 0x1c0
cmp esi, 0x40
je 0x470533
cmp esi, 0x100
je 0x470533
push ebp
push dword [esp + 0x78]
lea eax, [esp + 0x18]
push dword [esp + 0x74]
push dword [esp + 0x74]
push eax
push dword [esp + 0x74]
call fcn.00457f4a
add esp, 0x18
lea ecx, [esp + 0x28]
xor ebp, ebp
mov edi, dword [eax]
mov esi, dword [eax + 4]
push ebx
push ebp
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], esi
call fcn.00456e56
push eax
push esi
push edi
lea eax, [esp + 0x20]
push eax
push dword [esp + 0x74]
call fcn.00456d5c
mov edi, dword [esp + 0x30]
jmp 0x470597
push 0
lea ecx, [esp + 0x2c]
call fcn.00456e56
push ebx
push eax
lea eax, [esp + 0x20]
push dword [esp + 0x74]
push dword [esp + 0x74]
push eax
cmp esi, 0x100
jne 0x47058e
mov esi, dword [esp + 0x74]
push esi
call fcn.00456d5c
push ebp
push dword [esp + 0x90]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push eax
mov dword [esp + 0x90], eax
lea eax, [esp + 0x3c]
push ecx
push eax
push esi
mov dword [esp + 0x98], ecx
call fcn.00457f4a
add esp, 0x30
xor ebp, ebp
jmp 0x47059a
push dword [esp + 0x74]
call fcn.00456d5c
add esp, 0x18
mov esi, dword [eax]
lea ecx, [esp + 0x28]
mov eax, dword [eax + 4]
sub edi, ebx
push edi
push ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], eax
call fcn.00456e56
mov ebx, dword [esp + 0x64]
push eax
push dword [esp + 0x18]
lea eax, [esp + 0x24]
push esi
push eax
push ebx
call fcn.00456d5c
mov ecx, dword [esp + 0x38]
add esp, 0x18
mov edi, dword [eax]
mov esi, dword [eax + 4]
push 0
push 0
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], esi
call fcn.0045a402
push ebp
push dword [esp + 0x78]
push esi
mov esi, dword [esp + 0x30]
push edi
push esi
push ebx
call fcn.00457f4a
add esp, 0x18
lea ecx, [esp + 0x40]
call fcn.00459462
lea ecx, [esp + 0x28]
call fcn.00459462
mov ecx, dword [esp + 0x58]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0045880f
add esp, 0x4c
ret