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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x48e7ff
sub esp, 0x64
mov edx, dword [esp + 0x6c]
test edx, edx
je 0x48e438
mov ebx, dword [esp + 0x70]
lea ebp, [ebx - 2]
cmp ebp, 0x22
ja 0x48e120
mov ebp, dword [esp + 0x68]
mov eax, ebx
mov edi, edx
mov esi, ebp
jmp 0x48e24c
test ebx, ebx
jne 0x48e3e6
mov ebp, dword [esp + 0x68]
cmp byte [ebp], 0x30
jne 0x48e243
cmp edx, 3
jge 0x48e13f
xor eax, eax
jmp 0x48e15f
movzx eax, byte [ebp + 1]
mov byte [esp], al
call fcn.0048daf0
cmp byte [esp + 4], 0x62
sete al
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x68]
test al, al
je 0x48e189
cmp edx, 2
jb 0x48e7ef
lea esi, [edx - 2]
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 2
add esi, ebp
mov eax, 2
jmp 0x48e24c
cmp edx, 3
jge 0x48e192
xor eax, eax
jmp 0x48e1b2
movzx eax, byte [ebp + 1]
mov byte [esp], al
call fcn.0048daf0
cmp byte [esp + 4], 0x6f
sete al
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x68]
test al, al
je 0x48e1d9
cmp edx, 2
jb 0x48e7e0
lea esi, [edx - 2]
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 2
add esi, ebp
mov eax, 8
jmp 0x48e24c
cmp edx, 3
jge 0x48e1e2
xor eax, eax
jmp 0x48e202
movzx eax, byte [ebp + 1]
mov byte [esp], al
call fcn.0048daf0
cmp byte [esp + 4], 0x78
sete al
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x68]
test al, al
je 0x48e229
cmp edx, 2
jb 0x48e7d1
lea esi, [edx - 2]
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 2
add esi, ebp
mov eax, 0x10
jmp 0x48e24c
lea esi, [edx - 1]
mov edi, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 1
add esi, ebp
mov eax, 8
jmp 0x48e24c
mov eax, 0xa
mov edi, edx
mov esi, ebp
mov ecx, edx
mov edx, dword [esp + 0x74]
test edx, edx
jne 0x48e25d
mov edx, 0x20
jmp 0x48e266
cmp edx, 0x40
ja 0x48e398
mov dword [esp + 0x44], edi
mov dword [esp + 0x60], esi
mov dword [esp + 0x40], edx
mov dword [esp + 0x3c], eax
cmp eax, 0xa
jne 0x48e297
mov dword [esp + 0x58], eax
mov eax, 0x19999999
mov dword [esp + 0x2c], eax
mov eax, 0x9999999a
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x58]
jmp 0x48e308
cmp eax, 0x10
jne 0x48e2b5
mov dword [esp + 0x50], eax
mov eax, 0x10000000
mov dword [esp + 0x2c], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x50]
jmp 0x48e308
mov dword [esp + 4], 0xffffffff
mov dword [esp], 0xffffffff
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
call fcn.00462a10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
add eax, 1
adc ecx, 0
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x68]
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x44]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x6c]
lea ebp, [edx - 0x20]
mov dword [esp + 0x38], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
cmp ebp, 0x20
sbb ebx, ebx
cmp edx, 0x20
sbb esi, esi
mov dword [esp + 0x34], esi
mov edi, dword [esp + 0x38]
cmp edi, 0x20
sbb esi, esi
mov ecx, ebp
mov edx, 1
shr edx, cl
and edx, ebx
mov ecx, edi
mov ebx, 1
shl ebx, cl
and esi, ebx
mov ecx, dword [esp + 0x40]
mov ebx, 1
shl ebx, cl
mov ebp, dword [esp + 0x34]
and ebx, ebp
or edx, esi
add ebx, 0xffffffff
mov dword [esp + 0x24], ebx
adc edx, 0xffffffff
mov dword [esp + 0x30], edx
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x60]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x48], eax
xor eax, eax
mov dword [esp + 0x40], eax
xor eax, eax
mov byte [esp + 0x1a], al
xor eax, eax
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x48]
jmp 0x48e49b
lea eax, [0x512439]
mov dword [esp], eax
mov dword [esp + 4], 9
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.0048dfa0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
lea ecx, [0x5269fc]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x64
ret
lea eax, [0x512439]
mov dword [esp], eax
mov dword [esp + 4], 9
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
call fcn.0048de60
mov eax, dword [esp + 0x14]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
lea ecx, [0x5269fc]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x64
ret
lea eax, [0x512439]
mov dword [esp], eax
mov dword [esp + 4], 9
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
call fcn.0048dca0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
lea ecx, [0x5269fc]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x64
ret
inc edx
mov edi, dword [esp + 0x60]
mov dword [esp + 0x40], edx
mov byte [esp + 0x1a], bl
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x40]
cmp edx, esi
jge 0x48e72f
movzx ebx, byte [edi + edx]
cmp bl, 0x5f
jne 0x48e4bf
mov edi, dword [esp + 0x70]
test edi, edi
jne 0x48e4c3
mov ebx, 1
jmp 0x48e486
mov edi, dword [esp + 0x70]
mov byte [esp + 0x1b], bl
add ebx, 0xffffffd0
cmp bl, 9
jbe 0x48e52c
movzx eax, byte [esp + 0x1b]
mov byte [esp], al
call fcn.0048daf0
cmp byte [esp + 4], 0x61
jb 0x48e6dd
movzx eax, byte [esp + 0x1b]
mov byte [esp], al
call fcn.0048daf0
cmp byte [esp + 4], 0x7a
ja 0x48e6dd
movzx eax, byte [esp + 0x1b]
mov byte [esp], al
call fcn.0048daf0
movzx eax, byte [esp + 4]
lea ebx, [eax - 0x57]
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x40]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x70]
cmp bl, al
jae 0x48e68b
mov edi, dword [esp + 0x1c]
cmp edi, ecx
setae cl
mov esi, dword [esp + 0x20]
cmp esi, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
seta dl
and ecx, ebp
or ecx, edx
test cl, cl
jne 0x48e639
mov ecx, eax
mov eax, edi
mul ecx
imul esi, ecx
add edx, esi
mov ebp, ecx
sar ecx, 0x1f
imul edi, ecx
lea ecx, [edx + edi]
movzx edx, bl
add edx, eax
mov ebx, ecx
adc ecx, 0
cmp ecx, ebx
xchg esi, ebx
setb bl
xchg esi, ebx
cmp eax, edx
xchg edi, ebx
seta bl
xchg edi, ebx
cmp ecx, ebx
sete bl
and ebx, edi
or esi, ebx
xchg esi, eax
test al, al
xchg esi, eax
jne 0x48e5e7
mov ebx, dword [esp + 0x24]
cmp edx, ebx
xchg esi, ebx
seta bl
xchg esi, ebx
mov edi, dword [esp + 0x30]
cmp ecx, edi
xchg edi, ebx
sete bl
xchg edi, ebx
seta bl
and edi, esi
or ebx, edi
test bl, bl
jne 0x48e5e7
mov eax, ebp
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x70]
movzx ebx, byte [esp + 0x1a]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x40]
jmp 0x48e486
lea eax, [0x512439]
mov dword [esp], eax
mov dword [esp + 4], 9
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
call fcn.0048dd80
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x78], ecx
lea ecx, [0x5269fc]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x64
ret
lea eax, [0x512439]
mov dword [esp], eax
mov dword [esp + 4], 9
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
call fcn.0048dd80
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x78], ecx
lea ecx, [0x5269fc]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x64
ret
lea eax, [0x512439]
mov dword [esp], eax
mov dword [esp + 4], 9
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
call fcn.0048dca0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
lea ecx, [0x5269fc]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x64
ret
lea eax, [0x512439]
mov dword [esp], eax
mov dword [esp + 4], 9
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
call fcn.0048dca0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
lea ecx, [0x5269fc]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x64
ret
movzx eax, byte [esp + 0x1a]
test al, al
je 0x48e755
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
call fcn.0048ec10
movzx eax, byte [esp + 8]
test al, al
je 0x48e77f
mov eax, dword [esp + 0x20]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x78], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
add esp, 0x64
ret
lea eax, [0x512439]
mov dword [esp], eax
mov dword [esp + 4], 9
mov eax, dword [esp + 0x68]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
call fcn.0048dca0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
lea ecx, [0x5269fc]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
add esp, 0x64
ret
mov eax, 2
mov ecx, 1
call fcn.00468a60
mov eax, 2
mov ecx, 1
call fcn.00468a60
mov eax, 2
mov ecx, 1
call fcn.00468a60
nop
call fcn.00467570
jmp fcn.0048e0e0