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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xc]
cmp eax, dword [ecx + 8]
jbe 0x4bcf8d
sub esp, 0x8c
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.004bcfa0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x94]
cmp eax, ecx
ja 0x4bcf87
mov ebx, ecx
sub ecx, eax
mov ebp, ecx
neg ecx
sar ecx, 0x1f
and ecx, eax
mov esi, dword [esp + 0x90]
mov edx, ebx
lea ebx, [esi + ecx]
test ebp, ebp
je 0x4bce09
movzx ecx, byte [esi + ecx]
cmp cl, 0x5c
jne 0x4bcdfe
mov ecx, 1
mov dword [esp + 0x28], eax
mov dword [esp + 0x40], ebp
mov dword [esp + 0x90], ebx
mov byte [esp + 0x26], cl
lea edi, [esp + 0x68]
xor eax, eax
call fcn.0045cbb7
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], edx
mov esi, dword [esp + 0x28]
mov dword [esp + 0x88], esi
movzx esi, byte [esp + 0x26]
xchg esi, eax
test al, al
xchg esi, eax
je 0x4bcdf7
test ecx, ecx
je 0x4bcd6e
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jae 0x4bcf79
mov byte [edi + eax], 0x5c
inc dword [esp + 0x7c]
mov eax, 1
mov ecx, eax
jmp 0x4bc5f1
mov eax, edi
cmp ebp, eax
jle 0x4bcbc6
jbe 0x4bcf72
movzx edi, byte [eax + ebx]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
jne 0x4bc60f
lea edi, [eax + 1]
jmp 0x4bc5ef
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x4bc60a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4bcbbf
mov edx, esi
lea esi, [eax + 1]
cmp ebp, esi
jne 0x4bc630
mov edi, esi
mov esi, edx
jmp 0x4bc5ef
jbe 0x4bcf69
movzx ebx, byte [eax + ebx + 1]
cmp bl, 0x5c
jne 0x4bc649
mov ebx, dword [esp + 0x90]
jmp 0x4bc62a
cmp bl, 0x2f
jne 0x4bc657
mov ebx, dword [esp + 0x90]
jmp 0x4bc62a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x4bcbb1
lea ebx, [eax + 1]
cmp ebp, ebx
jbe 0x4bcf60
mov ebx, dword [esp + 0x90]
lea esi, [eax + ebx + 1]
cmp byte [esi], 0x2e
jne 0x4bcbaa
lea esi, [eax + 2]
cmp ebp, esi
jne 0x4bc963
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jle 0x4bc6f9
dec edi
mov dword [esp + 0x7c], edi
jmp 0x4bc6a9
lea edi, [eax - 1]
mov dword [esp + 0x7c], edi
mov ebx, dword [esp + 0x90]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jle 0x4bc6d3
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
test edi, edi
je 0x4bc6e3
cmp eax, ebx
jae 0x4bcf50
movzx ebx, byte [edi + eax]
cmp bl, 0x5c
je 0x4bc6d3
cmp bl, 0x2f
jne 0x4bc69b
mov ebx, dword [esp + 0x90]
mov edi, esi
mov esi, edx
jmp 0x4bc5ef
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp eax, ebx
jae 0x4bcf49
movzx ebx, byte [edi + eax]
jmp 0x4bc6c9
test dl, dl
jne 0x4bc6d3
mov dword [esp + 0x3c], esi
test edi, edi
jle 0x4bc95c
mov eax, ebx
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4bc8c1
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x4bcf39
mov byte [ebx + edi], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4bc823
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jae 0x4bcf22
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x4bc788
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x4bcf0b
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ecx, dword [esp + 0x7c]
jmp 0x4bc6d3
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ecx, ebx
jle 0x4bc7ac
jbe 0x4bcf1b
add edi, ebx
cmp byte [edi], 0x2e
jne 0x4bc7ac
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4bc77f
mov dword [esp + 0x38], ecx
lea eax, [0x643900]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4bcf12
cmp ecx, ebp
jle 0x4bc81f
cmp eax, edx
je 0x4bc806
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045d2c0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4bc763
mov ebp, ecx
jmp 0x4bc7f2
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ebx, ecx
jge 0x4bc84a
jae 0x4bcf32
add edi, ebx
cmp byte [edi], 0x2e
jne 0x4bc84a
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x4bc75b
mov dword [esp + 0x38], ecx
lea eax, [0x643900]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4bcf29
cmp ebp, ecx
jge 0x4bc8bd
cmp eax, edx
je 0x4bc8a4
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045d2c0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4bc73f
mov ebp, ecx
jmp 0x4bc890
mov ebx, dword [esp + 0x6c]
mov ecx, ebp
mov ebp, dword [esp + 0x68]
cmp edi, ebx
jge 0x4bc8e5
add ebp, edi
cmp byte [ebp], 0x5c
jne 0x4bc8e5
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
mov ebp, ecx
jmp 0x4bc733
mov dword [esp + 0x38], ebx
lea eax, [0x643900]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4bcf40
cmp ecx, ebp
jle 0x4bc958
cmp eax, edx
je 0x4bc93f
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045d2c0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x4bc717
mov ebp, ecx
jmp 0x4bc92b
mov eax, ebx
jmp 0x4bc733
jbe 0x4bcf57
movzx edi, byte [eax + ebx + 2]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
je 0x4bc68c
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x4bc68c
test dl, dl
mov dword [esp + 0x30], ecx
je 0x4bcb93
cmp dword [esp + 0x7c], 1
je 0x4bcb91
mov esi, dword [esp + 0x70]
test esi, esi
je 0x4bcae9
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x7c]
cmp ebx, esi
jae 0x4bcef0
mov byte [edi + ebx], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x90]
jmp 0x4bc9dc
inc eax
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x90]
mov ebx, edi
mov ebp, esi
cmp ebp, eax
jle 0x4bcae0
jbe 0x4bcee9
movzx esi, byte [eax + ebx]
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
je 0x4bcae0
xchg esi, eax
cmp al, 0x2f
xchg esi, eax
je 0x4bcae0
mov edi, dword [esp + 0x70]
test edi, edi
je 0x4bca2b
mov edi, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
cmp edi, ebp
jbe 0x4bcece
xchg esi, eax
mov byte [ebx + ebp], al
xchg esi, eax
inc dword [esp + 0x7c]
jmp 0x4bc9cc
mov dword [esp + 0x2c], eax
xchg esi, eax
mov byte [esp + 0x27], al
xchg esi, eax
mov edi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp edi, ebx
jge 0x4bca60
jae 0x4bcee0
add ebp, edi
xchg esi, eax
cmp byte [ebp], al
xchg esi, eax
jne 0x4bca60
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4bc9cc
mov dword [esp + 0x38], ebx
lea eax, [0x643900]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x4bced7
cmp ecx, ebp
jle 0x4bcadc
cmp edx, eax
je 0x4bcaba
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045d2c0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
movzx edx, byte [esp + 0x26]
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
movzx esi, byte [esp + 0x27]
jmp 0x4bca0c
mov ebp, ecx
jmp 0x4bcaa6
mov esi, edx
mov edi, eax
jmp 0x4bc5ef
mov dword [esp + 0x34], eax
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
cmp esi, edi
jge 0x4bcb16
jae 0x4bcf02
add ebx, esi
cmp byte [ebx], 0x5c
jne 0x4bcb16
lea ebx, [esi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x4bc9c3
mov dword [esp + 0x38], edi
lea eax, [0x643900]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4bcef9
cmp ebp, ecx
jge 0x4bcb8d
cmp eax, edx
je 0x4bcb70
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045d2c0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
movzx edx, byte [esp + 0x26]
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
jmp 0x4bc9a7
mov ebp, ecx
jmp 0x4bcb5c
test dl, dl
jne 0x4bc9c3
mov esi, dword [esp + 0x7c]
test esi, esi
jne 0x4bc99b
jmp 0x4bc9c3
test dl, dl
jmp 0x4bc986
test dl, dl
mov ebx, dword [esp + 0x90]
jmp 0x4bc986
mov edx, esi
jmp 0x4bc65c
mov ebx, dword [esp + 0x7c]
test ebx, ebx
jne 0x4bcbf6
mov ebp, dword [esp + 0x70]
test ebp, ebp
je 0x4bcce7
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp ecx, eax
jbe 0x4bcec0
mov byte [ebx + eax], 0x2e
inc dword [esp + 0x7c]
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x78]
test eax, eax
je 0x4bccc5
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
cmp ebx, ecx
jb 0x4bceb4
mov ebx, dword [esp + 0x7c]
cmp edx, ebx
jb 0x4bcead
mov dword [esp + 0x64], ebp
mov dword [esp + 0x40], ecx
lea ecx, [esp + 0x44]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.00447720
mov dword [esp], 0
mov eax, dword [esp + 0x64]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 8], eax
call fcn.004475a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
nop
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x67991f]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x679936]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004bb770
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
add esp, 0x8c
ret
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
add ecx, dword [esp + 0x7c]
cmp edx, ecx
jae 0x4bcc6f
jmp 0x4bcebb
mov eax, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp eax, ebx
jle 0x4bcd07
add ebp, ebx
cmp byte [ebp], 0x2e
jne 0x4bcd07
lea eax, [ebx + 1]
mov dword [esp + 0x7c], eax
jmp 0x4bcbf6
mov dword [esp + 0x40], eax
lea ecx, [0x643900]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebx, ebp
jb 0x4bcec5
cmp ecx, ebp
jle 0x4bcd6a
cmp edx, eax
je 0x4bcbda
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045d2c0
jmp 0x4bcbda
mov ebp, ecx
jmp 0x4bcd4d
mov edi, dword [esp + 0x68]
test ebp, ebp
jle 0x4bcd88
cmp byte [edi], 0x5c
jne 0x4bcd88
mov dword [esp + 0x7c], 1
jmp 0x4bc5e6
lea eax, [0x643900]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.00444130
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
ja 0x4bcf7e
cmp ecx, ebp
jle 0x4bcdf3
cmp eax, edx
je 0x4bcdde
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.0045d2c0
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
movzx esi, byte [esp + 0x26]
jmp 0x4bc5ca
mov ebp, ecx
jmp 0x4bcdca
xor eax, eax
jmp 0x4bc5eb
cmp cl, 0x2f
sete cl
jmp 0x4bc570
cmp eax, 1
jle 0x4bce14
cmp byte [esi + 1], 0x3a
jne 0x4bce57
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edx
lea eax, [0x67991e]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
call fcn.004475a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
add esp, 0x8c
ret
nop
mov dword [esp], esi
mov dword [esp + 4], edx
lea eax, [0x67991f]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x679936]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004bb770
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], ecx
add esp, 0x8c
ret
mov ecx, ebx
call fcn.0045c9e0
mov edx, ebx
call fcn.0045c9c0
call fcn.0045c9c0
call fcn.0045c9a0
mov ecx, ebp
mov edx, ebx
call fcn.0045c9c0
mov eax, ebp
mov ecx, edi
call fcn.0045c9a0
mov ecx, ebp
mov edx, ebx
call fcn.0045c9c0
mov eax, edi
mov ecx, ebx
call fcn.0045c9a0
mov ecx, ebp
call fcn.0045c9a0
mov eax, ebx
mov ecx, esi
call fcn.0045c9a0
mov ecx, ebp
mov edx, ebx
call fcn.0045c9c0
mov eax, esi
mov ecx, edi
call fcn.0045c9a0
mov eax, edi
call fcn.0045c9a0
mov ecx, ebp
mov edx, ebx
call fcn.0045c9c0
mov eax, ebx
call fcn.0045c9a0
mov eax, edi
call fcn.0045c9a0
mov ecx, ebp
mov edx, ebx
call fcn.0045c9c0
mov eax, ebx
call fcn.0045c9a0
mov eax, edi
call fcn.0045c9a0
mov ecx, ebp
mov edx, ebx
call fcn.0045c9c0
mov ecx, ebx
call fcn.0045c9a0
mov ecx, ebx
call fcn.0045c9a0
mov eax, esi
mov ecx, ebp
call fcn.0045c9a0
mov eax, ebx
mov ecx, ebp
call fcn.0045c9a0
mov eax, esi
mov ecx, ebp
call fcn.0045c9a0
mov ecx, ebp
call fcn.0045c9a0
call fcn.0045c9a0
mov ecx, ebp
mov edx, ebx
call fcn.0045c9c0
call fcn.0045ca00
nop
call fcn.0045b380
jmp fcn.004bc4f0