Function at 0x5c6660
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 0x5c70fd
sub esp, 0x8c
mov eax, dword [esp + 0x90]
mov dword [esp], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 4], ecx
call fcn.005c8320
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x94]
cmp eax, ecx
ja 0x5c70f7
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 0x5c6f79
movzx ecx, byte [esi + ecx]
cmp cl, 0x5c
jne 0x5c6f6e
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.00460de7
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 0x5c6f67
test ecx, ecx
je 0x5c6ede
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jae 0x5c70e9
mov byte [edi + eax], 0x5c
inc dword [esp + 0x7c]
mov eax, 1
mov ecx, eax
jmp 0x5c6761
mov eax, edi
cmp ebp, eax
jle 0x5c6d36
jbe 0x5c70e2
movzx edi, byte [eax + ebx]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
jne 0x5c677f
lea edi, [eax + 1]
jmp 0x5c675f
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x5c677a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x5c6d2f
mov edx, esi
lea esi, [eax + 1]
cmp ebp, esi
jne 0x5c67a0
mov edi, esi
mov esi, edx
jmp 0x5c675f
jbe 0x5c70d9
movzx ebx, byte [eax + ebx + 1]
cmp bl, 0x5c
jne 0x5c67b9
mov ebx, dword [esp + 0x90]
jmp 0x5c679a
cmp bl, 0x2f
jne 0x5c67c7
mov ebx, dword [esp + 0x90]
jmp 0x5c679a
xchg edi, eax
cmp al, 0x2e
xchg edi, eax
jne 0x5c6d21
lea ebx, [eax + 1]
cmp ebp, ebx
jbe 0x5c70d0
mov ebx, dword [esp + 0x90]
lea esi, [eax + ebx + 1]
cmp byte [esi], 0x2e
jne 0x5c6d1a
lea esi, [eax + 2]
cmp ebp, esi
jne 0x5c6ad3
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jle 0x5c6869
dec edi
mov dword [esp + 0x7c], edi
jmp 0x5c6819
lea edi, [eax - 1]
mov dword [esp + 0x7c], edi
mov ebx, dword [esp + 0x90]
mov eax, dword [esp + 0x7c]
cmp eax, ecx
jle 0x5c6843
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x74]
test edi, edi
je 0x5c6853
cmp eax, ebx
jae 0x5c70c0
movzx ebx, byte [edi + eax]
cmp bl, 0x5c
je 0x5c6843
cmp bl, 0x2f
jne 0x5c680b
mov ebx, dword [esp + 0x90]
mov edi, esi
mov esi, edx
jmp 0x5c675f
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp eax, ebx
jae 0x5c70b9
movzx ebx, byte [edi + eax]
jmp 0x5c6839
test dl, dl
jne 0x5c6843
mov dword [esp + 0x3c], esi
test edi, edi
jle 0x5c6acc
mov eax, ebx
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x5c6a31
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x5c70a9
mov byte [ebx + edi], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x5c6993
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp edi, ecx
jae 0x5c7092
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x5c68f8
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov edi, dword [esp + 0x7c]
cmp ecx, edi
jbe 0x5c707b
mov byte [ebx + edi], 0x2e
inc dword [esp + 0x7c]
mov ecx, dword [esp + 0x7c]
jmp 0x5c6843
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ecx, ebx
jle 0x5c691c
jbe 0x5c708b
add edi, ebx
cmp byte [edi], 0x2e
jne 0x5c691c
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x5c68ef
mov dword [esp + 0x38], ecx
lea eax, [0xaa98e0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00446f30
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 0x5c7082
cmp ecx, ebp
jle 0x5c698f
cmp eax, edx
je 0x5c6976
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004614f0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x5c68d3
mov ebp, ecx
jmp 0x5c6962
mov ebx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp ebx, ecx
jge 0x5c69ba
jae 0x5c70a2
add edi, ebx
cmp byte [edi], 0x2e
jne 0x5c69ba
inc ebx
mov dword [esp + 0x7c], ebx
jmp 0x5c68cb
mov dword [esp + 0x38], ecx
lea eax, [0xaa98e0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00446f30
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 0x5c7099
cmp ebp, ecx
jge 0x5c6a2d
cmp eax, edx
je 0x5c6a14
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004614f0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x5c68af
mov ebp, ecx
jmp 0x5c6a00
mov ebx, dword [esp + 0x6c]
mov ecx, ebp
mov ebp, dword [esp + 0x68]
cmp edi, ebx
jge 0x5c6a55
add ebp, edi
cmp byte [ebp], 0x5c
jne 0x5c6a55
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
mov ebp, ecx
jmp 0x5c68a3
mov dword [esp + 0x38], ebx
lea eax, [0xaa98e0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00446f30
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 0x5c70b0
cmp ecx, ebp
jle 0x5c6ac8
cmp eax, edx
je 0x5c6aaf
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004614f0
mov eax, dword [esp + 0x90]
movzx edx, byte [esp + 0x26]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
jmp 0x5c6887
mov ebp, ecx
jmp 0x5c6a9b
mov eax, ebx
jmp 0x5c68a3
jbe 0x5c70c7
movzx edi, byte [eax + ebx + 2]
xchg edi, eax
cmp al, 0x5c
xchg edi, eax
je 0x5c67fc
xchg edi, eax
cmp al, 0x2f
xchg edi, eax
je 0x5c67fc
test dl, dl
mov dword [esp + 0x30], ecx
je 0x5c6d03
cmp dword [esp + 0x7c], 1
je 0x5c6d01
mov esi, dword [esp + 0x70]
test esi, esi
je 0x5c6c59
mov esi, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov ebx, dword [esp + 0x7c]
cmp ebx, esi
jae 0x5c7060
mov byte [edi + ebx], 0x5c
inc dword [esp + 0x7c]
mov ebx, dword [esp + 0x90]
jmp 0x5c6b4c
inc eax
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x90]
mov ebx, edi
mov ebp, esi
cmp ebp, eax
jle 0x5c6c50
jbe 0x5c7059
movzx esi, byte [eax + ebx]
xchg esi, eax
cmp al, 0x5c
xchg esi, eax
je 0x5c6c50
xchg esi, eax
cmp al, 0x2f
xchg esi, eax
je 0x5c6c50
mov edi, dword [esp + 0x70]
test edi, edi
je 0x5c6b9b
mov edi, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x7c]
cmp edi, ebp
jbe 0x5c703e
xchg esi, eax
mov byte [ebx + ebp], al
xchg esi, eax
inc dword [esp + 0x7c]
jmp 0x5c6b3c
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 0x5c6bd0
jae 0x5c7050
add ebp, edi
xchg esi, eax
cmp byte [ebp], al
xchg esi, eax
jne 0x5c6bd0
lea ebx, [edi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x5c6b3c
mov dword [esp + 0x38], ebx
lea eax, [0xaa98e0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00446f30
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 0x5c7047
cmp ecx, ebp
jle 0x5c6c4c
cmp edx, eax
je 0x5c6c2a
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004614f0
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 0x5c6b7c
mov ebp, ecx
jmp 0x5c6c16
mov esi, edx
mov edi, eax
jmp 0x5c675f
mov dword [esp + 0x34], eax
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
cmp esi, edi
jge 0x5c6c86
jae 0x5c7072
add ebx, esi
cmp byte [ebx], 0x5c
jne 0x5c6c86
lea ebx, [esi + 1]
mov dword [esp + 0x7c], ebx
jmp 0x5c6b33
mov dword [esp + 0x38], edi
lea eax, [0xaa98e0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.00446f30
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 0x5c7069
cmp ebp, ecx
jge 0x5c6cfd
cmp eax, edx
je 0x5c6ce0
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004614f0
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 0x5c6b17
mov ebp, ecx
jmp 0x5c6ccc
test dl, dl
jne 0x5c6b33
mov esi, dword [esp + 0x7c]
test esi, esi
jne 0x5c6b0b
jmp 0x5c6b33
test dl, dl
jmp 0x5c6af6
test dl, dl
mov ebx, dword [esp + 0x90]
jmp 0x5c6af6
mov edx, esi
jmp 0x5c67cc
mov ebx, dword [esp + 0x7c]
test ebx, ebx
jne 0x5c6d66
mov ebp, dword [esp + 0x70]
test ebp, ebp
je 0x5c6e57
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
cmp ecx, eax
jbe 0x5c7030
mov byte [ebx + eax], 0x2e
inc dword [esp + 0x7c]
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x78]
test eax, eax
je 0x5c6e35
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x80]
mov ecx, dword [esp + 0x88]
cmp ebx, ecx
jb 0x5c7024
mov ebx, dword [esp + 0x7c]
cmp edx, ebx
jb 0x5c701d
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.0044a5c0
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.0044a440
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
nop
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0xb8e062]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0xb8e084]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004b50e0
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 0x5c6ddf
jmp 0x5c702b
mov eax, dword [esp + 0x6c]
mov ebp, dword [esp + 0x68]
cmp eax, ebx
jle 0x5c6e77
add ebp, ebx
cmp byte [ebp], 0x2e
jne 0x5c6e77
lea eax, [ebx + 1]
mov dword [esp + 0x7c], eax
jmp 0x5c6d66
mov dword [esp + 0x40], eax
lea ecx, [0xaa98e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00446f30
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 0x5c7035
cmp ecx, ebp
jle 0x5c6eda
cmp edx, eax
je 0x5c6d4a
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004614f0
jmp 0x5c6d4a
mov ebp, ecx
jmp 0x5c6ebd
mov edi, dword [esp + 0x68]
test ebp, ebp
jle 0x5c6ef8
cmp byte [edi], 0x5c
jne 0x5c6ef8
mov dword [esp + 0x7c], 1
jmp 0x5c6756
lea eax, [0xaa98e0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.00446f30
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 0x5c70ee
cmp ecx, ebp
jle 0x5c6f63
cmp eax, edx
je 0x5c6f4e
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004614f0
mov ebx, dword [esp + 0x90]
mov ebp, dword [esp + 0x40]
movzx esi, byte [esp + 0x26]
jmp 0x5c673a
mov ebp, ecx
jmp 0x5c6f3a
xor eax, eax
jmp 0x5c675b
cmp cl, 0x2f
sete cl
jmp 0x5c66e0
cmp eax, 1
jle 0x5c6f84
cmp byte [esi + 1], 0x3a
jne 0x5c6fc7
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edx
lea eax, [0xb8e061]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
call fcn.0044a440
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, [0xb8e062]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0xb8e084]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0xffffffff
call fcn.004b50e0
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.00460c00
mov edx, ebx
call fcn.00460be0
call fcn.00460be0
call fcn.00460bc0
mov ecx, ebp
mov edx, ebx
call fcn.00460be0
mov eax, ebp
mov ecx, edi
call fcn.00460bc0
mov ecx, ebp
mov edx, ebx
call fcn.00460be0
mov eax, edi
mov ecx, ebx
call fcn.00460bc0
mov ecx, ebp
call fcn.00460bc0
mov eax, ebx
mov ecx, esi
call fcn.00460bc0
mov ecx, ebp
mov edx, ebx
call fcn.00460be0
mov eax, esi
mov ecx, edi
call fcn.00460bc0
mov eax, edi
call fcn.00460bc0
mov ecx, ebp
mov edx, ebx
call fcn.00460be0
mov eax, ebx
call fcn.00460bc0
mov eax, edi
call fcn.00460bc0
mov ecx, ebp
mov edx, ebx
call fcn.00460be0
mov eax, ebx
call fcn.00460bc0
mov eax, edi
call fcn.00460bc0
mov ecx, ebp
mov edx, ebx
call fcn.00460be0
mov ecx, ebx
call fcn.00460bc0
mov ecx, ebx
call fcn.00460bc0
mov eax, esi
mov ecx, ebp
call fcn.00460bc0
mov eax, ebx
mov ecx, ebp
call fcn.00460bc0
mov eax, esi
mov ecx, ebp
call fcn.00460bc0
mov ecx, ebp
call fcn.00460bc0
call fcn.00460bc0
mov ecx, ebp
mov edx, ebx
call fcn.00460be0
call fcn.00460c20
nop
call fcn.0045f5f0
jmp fcn.005c6660