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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x46a283
sub esp, 0x60
mov ecx, dword [esp + 0x68]
test ecx, ecx
jle 0x46a223
mov edx, dword [esp + 0x64]
movzx ebx, byte [edx]
cmp bl, 0x2b
jne 0x46a206
mov eax, 1
xor ebx, ebx
lea ebp, [eax + 2]
cmp ebp, ecx
jge 0x46a1e5
cmp eax, ecx
jae 0x46a27d
movzx esi, byte [edx + eax]
xchg esi, eax
cmp al, 0x30
xchg esi, eax
jne 0x46a1e5
lea esi, [eax + 1]
cmp esi, ecx
jae 0x46a276
movzx esi, byte [edx + eax + 1]
or esi, 0x20
xchg esi, eax
cmp al, 0x78
xchg esi, eax
jne 0x46a1e5
mov eax, 0x10
mov esi, 0x10
mov edi, 0x70
mov eax, 1
mov byte [esp + 0xf], al
mov eax, 0x10
mov dword [esp + 0x28], esi
mov byte [esp + 0xe], bl
xchg edi, eax
mov byte [esp + 0xb], al
xchg edi, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x58], eax
xor eax, eax
mov byte [esp + 0xa], al
xor eax, eax
mov byte [esp + 9], al
xor eax, eax
mov dword [esp + 0x24], eax
xor eax, eax
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x38], eax
xor eax, eax
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 0x34], eax
xor eax, eax
mov byte [esp + 0xd], al
mov eax, dword [esp + 0x58]
jmp 0x469ca1
inc ebp
xchg edi, eax
mov byte [esp + 0xa], al
xchg edi, eax
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x24], eax
movzx edi, byte [esp + 0xb]
mov eax, dword [esp + 0x50]
cmp ebp, ecx
jge 0x469ed2
jae 0x46a26f
movzx edi, byte [edx + ebp]
xchg edi, eax
cmp al, 0x5f
xchg edi, eax
jne 0x469cce
movzx edi, byte [esp + 0xa]
mov edi, dword [esp + 0x24]
mov dword [esp + 0x14], edi
movzx edi, byte [esp + 0xa]
jmp 0x469c85
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x469d3a
movzx edi, byte [esp + 9]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x469d03
movzx edi, byte [esp + 0xa]
mov edi, 1
xchg edi, eax
mov byte [esp + 9], al
xchg edi, eax
mov edi, dword [esp + 0x24]
mov dword [esp + 0x14], edi
mov dword [esp + 0x34], edi
movzx edi, byte [esp + 0xa]
jmp 0x469c85
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
mov byte [esp + 0x78], bl
movzx eax, byte [esp + 0xd]
mov byte [esp + 0x79], al
movzx eax, byte [esp + 0xf]
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], 0
add esp, 0x60
ret
mov dword [esp + 0x1c], ebp
xchg edi, eax
cmp al, 0x30
xchg edi, eax
jb 0x469e25
xchg edi, eax
cmp al, 0x39
xchg edi, eax
ja 0x469e25
xchg edi, eax
cmp al, 0x30
xchg edi, eax
jne 0x469e1c
mov ebx, dword [esp + 0x24]
test ebx, ebx
jne 0x469d8f
mov edi, dword [esp + 0x34]
dec edi
movzx ebx, byte [esp + 0xe]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], edi
mov edi, 1
mov eax, dword [esp + 0x48]
jmp 0x469c85
mov edx, dword [esp + 0x10]
cmp edx, eax
jge 0x469df9
mov eax, esi
mov ebp, dword [esp + 0x3c]
mul ebp
lea ebp, [edi - 0x30]
xchg ebp, eax
movzx eax, al
xchg ebp, eax
mov edi, eax
add eax, ebp
mov ebx, dword [esp + 0x38]
imul ebx, esi
add edx, ebx
add edi, ebp
adc edx, 0
mov ebx, dword [esp + 0x10]
inc ebx
movzx ebp, byte [esp + 0xd]
mov edi, dword [esp + 0x24]
inc edi
mov dword [esp + 0x14], edi
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x10], ebx
xchg ebp, eax
mov byte [esp + 0xd], al
xchg ebp, eax
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x64]
movzx ebx, byte [esp + 0xe]
mov ebp, dword [esp + 0x1c]
mov edi, 1
jmp 0x469c85
xchg edi, eax
cmp al, 0x30
xchg edi, eax
xchg edi, ebx
setne bl
xchg edi, ebx
movzx eax, byte [esp + 0xd]
or edi, eax
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x10]
mov ebp, edi
jmp 0x469dc3
mov ebx, dword [esp + 0x24]
jmp 0x469d8f
cmp esi, 0x10
sete bl
and ebx, 1
test bl, bl
je 0x469ed2
or edi, 0x20
xchg edi, eax
cmp al, 0x61
xchg edi, eax
jb 0x469ed2
xchg edi, eax
cmp al, 0x66
xchg edi, eax
ja 0x469ed2
mov ebx, dword [esp + 0x10]
cmp ebx, eax
jge 0x469ec1
mov esi, dword [esp + 0x3c]
shl esi, 4
add edi, 0xffffffa9
xchg edi, eax
movzx eax, al
xchg edi, eax
mov dword [esp + 0x30], edi
add edi, esi
mov edx, dword [esp + 0x3c]
shr edx, 0x1c
mov ebp, dword [esp + 0x38]
shl ebp, 4
or ebp, edx
mov edx, dword [esp + 0x30]
add edx, esi
adc ebp, 0
lea edx, [ebx + 1]
movzx ebx, byte [esp + 0xd]
mov esi, dword [esp + 0x24]
inc esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], ebp
mov dword [esp + 0x10], edx
mov byte [esp + 0xd], bl
mov edx, dword [esp + 0x64]
movzx ebx, byte [esp + 0xe]
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x28]
mov edi, 1
jmp 0x469c85
mov edi, dword [esp + 0x3c]
mov ebp, dword [esp + 0x38]
mov edx, ebx
mov ebx, 1
jmp 0x469e8d
movzx ebx, byte [esp + 0xa]
test bl, bl
je 0x46a1a9
movzx ebx, byte [esp + 9]
test bl, bl
je 0x46a1a0
mov eax, dword [esp + 0x34]
cmp esi, 0x10
sete bl
and ebx, 1
test bl, bl
je 0x46a195
shl eax, 2
mov esi, dword [esp + 0x10]
shl esi, 2
cmp ebp, ecx
mov dword [esp + 0x10], esi
jge 0x46a191
cmp ebp, ecx
jae 0x46a268
movzx edi, byte [edx + ebp]
or edi, 0x20
movzx esi, byte [esp + 0xb]
xchg esi, eax
xchg edi, ebx
cmp al, bl
xchg edi, ebx
xchg esi, eax
jne 0x46a14a
lea ebx, [ebp + 1]
cmp ebx, ecx
jge 0x46a10e
jae 0x46a261
movzx esi, byte [edx + ebp + 1]
xchg esi, eax
cmp al, 0x2b
xchg esi, eax
jne 0x46a0f0
lea ebx, [ebp + 2]
mov ebp, 1
cmp ebx, ecx
jge 0x46a0b4
jae 0x46a25a
movzx esi, byte [edx + ebx]
xchg esi, eax
cmp al, 0x30
xchg esi, eax
jb 0x46a0b4
xchg esi, eax
cmp al, 0x39
xchg esi, eax
ja 0x46a0b4
mov dword [esp + 0x2c], eax
mov dword [esp + 0x20], ebp
xor esi, esi
jmp 0x469f9b
inc ebx
mov ebp, dword [esp + 0x20]
cmp ebx, ecx
jge 0x469ffe
jae 0x46a253
movzx edi, byte [edx + ebx]
xchg edi, eax
cmp al, 0x30
xchg edi, eax
jb 0x46a09f
xchg edi, eax
cmp al, 0x39
xchg edi, eax
ja 0x46a09f
mov dword [esp + 0x40], eax
mov eax, 1
mov byte [esp + 0xc], al
mov eax, dword [esp + 0x40]
movzx ebp, byte [esp + 0xc]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x469ffe
xchg edi, eax
cmp al, 0x5f
xchg edi, eax
je 0x469f96
cmp esi, 0x2710
jge 0x469ffa
lea ebp, [esi + esi*4]
xchg edi, eax
movzx esi, al
xchg edi, eax
lea ebp, [esi + ebp*2 - 0x30]
mov esi, ebp
jmp 0x469f96
mov ebp, esi
jmp 0x469ff6
mov edx, dword [esp + 0x20]
imul edx, esi
add eax, edx
cmp ebx, ecx
jne 0x46a063
mov ecx, dword [esp + 0x3c]
test ecx, ecx
setne dl
mov ebx, dword [esp + 0x38]
test ebx, ebx
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x46a05f
mov edx, dword [esp + 0x10]
sub eax, edx
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], eax
movzx eax, byte [esp + 0xe]
mov byte [esp + 0x78], al
movzx eax, byte [esp + 0xd]
mov byte [esp + 0x79], al
movzx eax, byte [esp + 0xf]
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], 1
add esp, 0x60
ret
xor eax, eax
jmp 0x46a02f
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
movzx eax, byte [esp + 0xe]
mov byte [esp + 0x78], al
movzx eax, byte [esp + 0xd]
mov byte [esp + 0x79], al
movzx eax, byte [esp + 0xf]
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], 0
add esp, 0x60
ret
xchg edi, eax
cmp al, 0x5f
xchg edi, eax
sete al
mov byte [esp + 0xc], al
mov eax, dword [esp + 0x2c]
jmp 0x469fd0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
movzx eax, byte [esp + 0xe]
mov byte [esp + 0x78], al
movzx eax, byte [esp + 0xd]
mov byte [esp + 0x79], al
movzx eax, byte [esp + 0xf]
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], 0
add esp, 0x60
ret
xchg esi, eax
cmp al, 0x2d
xchg esi, eax
jne 0x46a104
lea ebx, [ebp + 2]
mov ebp, 0xffffffff
jmp 0x469f62
mov ebp, 1
jmp 0x469f62
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
movzx eax, byte [esp + 0xe]
mov byte [esp + 0x78], al
movzx eax, byte [esp + 0xd]
mov byte [esp + 0x79], al
movzx eax, byte [esp + 0xf]
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], 0
add esp, 0x60
ret
test bl, bl
jne 0x46a155
mov ebx, ebp
jmp 0x46a007
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
movzx eax, byte [esp + 0xe]
mov byte [esp + 0x78], al
movzx eax, byte [esp + 0xd]
mov byte [esp + 0x79], al
movzx eax, byte [esp + 0xf]
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], 0
add esp, 0x60
ret
test bl, bl
jmp 0x46a14c
cmp ebp, ecx
mov esi, dword [esp + 0x10]
jmp 0x469f0d
mov eax, dword [esp + 0x24]
jmp 0x469ef0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
movzx eax, byte [esp + 0xe]
mov byte [esp + 0x78], al
movzx eax, byte [esp + 0xd]
mov byte [esp + 0x79], al
movzx eax, byte [esp + 0xf]
mov byte [esp + 0x7a], al
mov byte [esp + 0x7b], 0
add esp, 0x60
ret
mov ebp, eax
mov eax, 0x13
mov esi, 0xa
mov edi, 0x65
xor eax, eax
mov byte [esp + 0xf], al
mov eax, 0x13
jmp 0x469c39
cmp bl, 0x2d
jne 0x46a21a
mov eax, 1
mov ebx, 1
jmp 0x469bdc
xor eax, eax
xor ebx, ebx
jmp 0x469bdc
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov byte [esp + 0x78], 0
mov byte [esp + 0x79], 0
mov byte [esp + 0x7a], 0
mov byte [esp + 0x7b], 0
add esp, 0x60
ret
mov eax, ebx
call fcn.00450da0
mov eax, ebx
call fcn.00450da0
mov eax, ebx
call fcn.00450da0
mov eax, ebp
call fcn.00450da0
mov eax, ebp
call fcn.00450da0
mov eax, esi
call fcn.00450da0
call fcn.00450da0
nop
call fcn.0044f4e0
jmp fcn.00469ba0