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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x47b3ba
sub esp, 0x5c
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov byte [esp + 0x78], 0
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x24], ebx
test ebx, ebx
je 0x47b01c
jmp 0x47b045
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov byte [esp + 0x78], 0
add esp, 0x5c
ret
jmp 0x47b047
mov ecx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
test ecx, ecx
ja 0x47b058
jmp 0x47b3b2
cmp byte [ebx], 0x3c
jne 0x47b05f
jmp 0x47b07c
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x40], 0
jmp 0x47b1eb
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebp
mov dword [esp + 0x30], 0
jmp 0x47b096
mov ebx, dword [esp + 0x58]
cmp dword [esp + 0x30], ebx
jl 0x47b0a5
jmp 0x47b1ae
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x54]
add ebx, dword [esp + 0x30]
movzx ebx, byte [ebx]
mov dword [esp + 0x28], ebx
cmp ebx, 0x80
jl 0x47b0c6
jmp 0x47b0d1
mov ebx, dword [esp + 0x30]
inc ebx
mov dword [esp + 0x30], ebx
jmp 0x47b0ff
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00458b80
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], ecx
jmp 0x47b0ff
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x18], ebx
cmp ebx, 0x3e
je 0x47b119
jmp 0x47b1a7
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
cmp edx, ecx
jae 0x47b12e
jmp 0x47b1e6
cmp ecx, 1
jae 0x47b138
jmp 0x47b1dc
lea edx, [ecx - 1]
mov ebp, edx
neg edx
sar edx, 0x1f
and edx, 1
add edx, ebx
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ebp
mov edx, dword [esp + 0x20]
lea eax, [edx + 1]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
cmp ecx, eax
jae 0x47b168
jmp 0x47b1d7
sub ecx, edx
dec ecx
mov edx, ecx
neg ecx
sar ecx, 0x1f
and eax, ecx
add eax, ebx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], edx
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
mov byte [esp + 0x78], 1
add esp, 0x5c
ret
jmp 0x47b1a9
jmp 0x47b096
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov byte [esp + 0x78], 0
add esp, 0x5c
ret
call fcn.0045d9c0
mov eax, 1
call fcn.0045d9c0
call fcn.0045d980
mov ebx, dword [esp + 0x40]
cmp dword [esp + 0x48], ebx
jg 0x47b1fa
jmp 0x47b345
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x3c], ebx
mov ebx, dword [esp + 0x44]
add ebx, dword [esp + 0x40]
movzx ebx, byte [ebx]
mov dword [esp + 0x38], ebx
cmp ebx, 0x80
jl 0x47b21b
jmp 0x47b226
mov ebx, dword [esp + 0x40]
inc ebx
mov dword [esp + 0x40], ebx
jmp 0x47b254
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00458b80
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], ecx
jmp 0x47b254
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x34], ebx
cmp ebx, 0x2b
jge 0x47b26f
jmp 0x47b27a
cmp ebx, 0x2d
jle 0x47b276
jmp 0x47b278
jmp 0x47b292
jmp 0x47b27c
jmp 0x47b27c
cmp ebx, 0x30
jge 0x47b286
jmp 0x47b338
cmp ebx, 0x39
jle 0x47b290
jmp 0x47b336
jmp 0x47b292
cmp dword [esp + 0x1c], 3
jl 0x47b29b
jmp 0x47b2c4
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov byte [esp + 0x78], 0
add esp, 0x5c
ret
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x60]
cmp edx, ecx
jae 0x47b2d9
jmp 0x47b3ad
jmp 0x47b2db
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ecx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x60]
cmp eax, ecx
jbe 0x47b2f8
jmp 0x47b3a8
sub ecx, eax
mov ebx, ecx
neg ecx
sar ecx, 0x1f
and eax, ecx
add eax, edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], ebx
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
mov byte [esp + 0x78], 1
add esp, 0x5c
ret
jmp 0x47b33a
jmp 0x47b33a
jmp 0x47b33c
jmp 0x47b33e
jmp 0x47b340
jmp 0x47b1eb
mov eax, dword [esp + 0x64]
mov dword [esp + 0x24], eax
cmp eax, 3
jl 0x47b354
jmp 0x47b37d
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov byte [esp + 0x78], 0
add esp, 0x5c
ret
jmp 0x47b37f
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov byte [esp + 0x78], 1
add esp, 0x5c
ret
call fcn.0045d9c0
call fcn.0045d980
xor eax, eax
call fcn.0045d960
nop
call fcn.0045c4a0
jmp fcn.0047afd0