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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5c3053
sub esp, 0x60
mov esi, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
xor ebx, ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
xor ebx, ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x24], 0
mov byte [esp + 0x23], 0
xor eax, eax
cmp eax, edx
jge 0x5c2a00
cmp eax, edx
jae 0x5c2f65
mov ebp, esi
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x25
jne 0x5c2f41
mov ebx, dword [esp + 0x24]
inc ebx
mov dword [esp + 0x24], ebx
mov ecx, eax
add ecx, 2
cmp ecx, edx
jge 0x5c2e57
mov ebx, eax
inc ebx
cmp ebx, edx
jae 0x5c2f3a
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
mov ecx, ebx
cmp bl, 0x30
jb 0x5c2f0b
cmp cl, 0x39
ja 0x5c2f0b
mov ecx, 1
cmp cl, 0
je 0x5c2e57
mov ebx, eax
add ebx, 2
cmp ebx, edx
jae 0x5c2f04
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
mov ecx, ebx
cmp bl, 0x30
jb 0x5c2ed5
cmp cl, 0x39
ja 0x5c2ed5
mov ecx, 1
cmp cl, 0
je 0x5c2e57
mov ebx, dword [esp + 0x6c]
cmp ebx, 2
jne 0x5c2909
mov ebx, eax
inc ebx
cmp ebx, edx
jae 0x5c2e50
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
mov ecx, ebx
cmp bl, 0x30
jb 0x5c2e17
cmp cl, 0x39
ja 0x5c2e17
mov ebx, ecx
sub ebx, 0x30
mov ecx, ebx
cmp cl, 8
jae 0x5c2909
mov ecx, eax
add ecx, 3
mov dword [esp + 0x28], eax
cmp ecx, edx
ja 0x5c2e10
cmp eax, ecx
ja 0x5c2e10
mov edi, ecx
sub edi, eax
mov ecx, esi
cmp edi, 0
je 0x5c28bd
add ecx, eax
mov dword [esp + 0x44], ecx
cmp edi, 3
jne 0x5c2da5
mov ebp, dword [esp + 0x44]
mov dword [esp], ebp
mov dword [esp + 0x48], edi
mov dword [esp + 4], edi
mov ebp, 0x757a87
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 3
call fcn.004633f0
mov esi, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x28]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5c2da5
mov ebx, dword [esp + 0x6c]
cmp ebx, 3
jne 0x5c29f5
mov ebx, eax
inc ebx
cmp ebx, edx
jae 0x5c2d9e
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
mov ecx, ebx
cmp bl, 0x30
jb 0x5c2d65
cmp cl, 0x39
ja 0x5c2d65
mov ebx, ecx
sub ebx, 0x30
mov edi, ebx
mov ebx, eax
add ebx, 2
cmp ebx, edx
jae 0x5c2d5e
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
mov ecx, ebx
cmp bl, 0x30
jb 0x5c2d25
cmp cl, 0x39
ja 0x5c2d25
mov ebx, ecx
sub ebx, 0x30
mov ecx, ebx
mov ebx, edi
shl ebx, 4
mov ebp, ebx
or ebp, ecx
xchg ebp, eax
mov byte [esp + 0x22], al
xchg ebp, eax
mov ebp, eax
add ebp, 3
mov dword [esp + 0x28], eax
cmp ebp, edx
ja 0x5c2d1e
cmp eax, ebp
ja 0x5c2d1e
mov edi, ebp
sub edi, eax
mov ebp, esi
cmp edi, 0
je 0x5c29a9
add ebp, eax
mov dword [esp + 0x3c], ebp
cmp edi, 3
jne 0x5c2c74
mov ebp, dword [esp + 0x3c]
mov dword [esp], ebp
mov dword [esp + 0x40], edi
mov dword [esp + 4], edi
mov ebp, 0x757a87
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 3
call fcn.004633f0
mov esi, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x28]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x5c2c74
add eax, 3
cmp eax, edx
jl 0x5c27bc
mov ebx, dword [esp + 0x24]
cmp ebx, 0
jne 0x5c2a26
cmp byte [esp + 0x23], 0
jne 0x5c2a26
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], edx
xor ebx, ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
add esp, 0x60
ret
mov ebx, dword [esp + 0x24]
shl ebx, 1
mov eax, edx
sub eax, ebx
mov dword [esp], 0x70b300
mov ecx, eax
cdq
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, ecx
cdq
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.00449940
mov edi, dword [esp + 0x68]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x58], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x5c], ebx
xor ecx, ecx
xor eax, eax
cmp eax, edi
jge 0x5c2b14
cmp eax, edi
jae 0x5c2c13
mov ebp, dword [esp + 0x64]
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x25
jne 0x5c2bdd
mov ebx, eax
inc ebx
cmp ebx, edi
jae 0x5c2bd6
mov ebp, dword [esp + 0x64]
add ebp, ebx
movzx ebx, byte [ebp]
mov edx, ebx
cmp bl, 0x30
jb 0x5c2b9d
cmp dl, 0x39
ja 0x5c2b9d
mov ebx, edx
sub ebx, 0x30
mov esi, ebx
mov ebx, eax
add ebx, 2
cmp ebx, edi
jae 0x5c2b96
mov ebp, dword [esp + 0x64]
add ebp, ebx
movzx ebx, byte [ebp]
mov edx, ebx
cmp bl, 0x30
jb 0x5c2b5d
cmp dl, 0x39
ja 0x5c2b5d
mov ebx, edx
sub ebx, 0x30
mov edx, ebx
mov ebp, esi
shl ebp, 4
mov ebx, ebp
or ebx, edx
mov esi, dword [esp + 0x58]
cmp ecx, esi
jae 0x5c2b56
mov esi, dword [esp + 0x54]
add esi, ecx
mov byte [esi], bl
inc ecx
add eax, 3
cmp eax, edi
jl 0x5c2a7a
mov dword [esp], 0
mov ebx, dword [esp + 0x54]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0xc], ebx
call fcn.0044d780
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x74], ebx
xor ebx, ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebx
add esp, 0x60
ret
call fcn.00435970
ud2
cmp dl, 0x61
jb 0x5c2b76
cmp dl, 0x66
ja 0x5c2b76
mov ebx, edx
sub ebx, 0x61
add ebx, 0xa
mov edx, ebx
jmp 0x5c2aef
cmp dl, 0x41
jb 0x5c2b8f
cmp dl, 0x46
ja 0x5c2b8f
mov ebx, edx
sub ebx, 0x41
add ebx, 0xa
mov edx, ebx
jmp 0x5c2aef
xor edx, edx
jmp 0x5c2aef
call fcn.00435970
ud2
cmp dl, 0x61
jb 0x5c2bb6
cmp dl, 0x66
ja 0x5c2bb6
mov ebx, edx
sub ebx, 0x61
add ebx, 0xa
mov esi, ebx
jmp 0x5c2ac5
cmp dl, 0x41
jb 0x5c2bcf
cmp dl, 0x46
ja 0x5c2bcf
mov ebx, edx
sub ebx, 0x41
add ebx, 0xa
mov esi, ebx
jmp 0x5c2ac5
xor esi, esi
jmp 0x5c2ac5
call fcn.00435970
ud2
cmp bl, 0x2b
jne 0x5c2c40
mov ebx, dword [esp + 0x6c]
cmp ebx, 5
jne 0x5c2c21
mov edx, 0x20
mov ebp, dword [esp + 0x58]
cmp ecx, ebp
jae 0x5c2c1a
mov ebp, dword [esp + 0x54]
add ebp, ecx
mov byte [ebp], dl
inc ecx
inc eax
cmp eax, edi
jge 0x5c2b14
cmp eax, edi
jb 0x5c2a82
call fcn.00435970
ud2
call fcn.00435970
ud2
mov edx, 0x2b
mov ebp, dword [esp + 0x58]
cmp ecx, ebp
jae 0x5c2c39
mov ebp, dword [esp + 0x54]
add ebp, ecx
mov byte [ebp], dl
jmp 0x5c2c01
call fcn.00435970
ud2
cmp eax, edi
jae 0x5c2c6d
mov ebp, dword [esp + 0x64]
add ebp, eax
movzx ebx, byte [ebp]
mov ebp, dword [esp + 0x58]
cmp ecx, ebp
jae 0x5c2c66
mov ebp, dword [esp + 0x54]
add ebp, ecx
mov byte [ebp], bl
inc ecx
inc eax
jmp 0x5c2a72
call fcn.00435970
ud2
call fcn.00435970
ud2
movzx ebx, byte [esp + 0x22]
cmp bl, 0x20
je 0x5c29f5
movzx ebx, byte [esp + 0x22]
mov byte [esp], bl
mov dword [esp + 4], 2
call fcn.005c2500
mov esi, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x28]
movzx ebx, byte [esp + 8]
cmp bl, 0
je 0x5c29f5
mov ebp, eax
add ebp, 3
mov ecx, eax
cmp ebp, edx
ja 0x5c2d17
cmp eax, ebp
ja 0x5c2d17
mov edx, ebp
sub edx, eax
mov eax, esi
cmp edx, 0
je 0x5c2ccd
add eax, ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x50], edx
xor ebx, ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp], 0x8c3e90
lea ebx, [esp + 0x4c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.00417980
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x7c], ebx
add esp, 0x60
ret
call fcn.004359e0
ud2
call fcn.004359e0
ud2
cmp cl, 0x61
jb 0x5c2d3e
cmp cl, 0x66
ja 0x5c2d3e
mov ebx, ecx
sub ebx, 0x61
add ebx, 0xa
mov ecx, ebx
jmp 0x5c2974
cmp cl, 0x41
jb 0x5c2d57
cmp cl, 0x46
ja 0x5c2d57
mov ebx, ecx
sub ebx, 0x41
add ebx, 0xa
mov ecx, ebx
jmp 0x5c2974
xor ecx, ecx
jmp 0x5c2974
call fcn.00435970
ud2
cmp cl, 0x61
jb 0x5c2d7e
cmp cl, 0x66
ja 0x5c2d7e
mov ebx, ecx
sub ebx, 0x61
add ebx, 0xa
mov edi, ebx
jmp 0x5c2944
cmp cl, 0x41
jb 0x5c2d97
cmp cl, 0x46
ja 0x5c2d97
mov ebx, ecx
sub ebx, 0x41
add ebx, 0xa
mov edi, ebx
jmp 0x5c2944
xor edi, edi
jmp 0x5c2944
call fcn.00435970
ud2
mov ecx, eax
add ecx, 3
cmp ecx, edx
ja 0x5c2e09
cmp eax, ecx
ja 0x5c2e09
mov edx, ecx
sub edx, eax
mov ecx, esi
cmp edx, 0
je 0x5c2dbf
add ecx, eax
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x40], edx
mov dword [esp + 0x50], edx
xor ebx, ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp], 0x8c3e90
lea ebx, [esp + 0x4c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.00417980
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x7c], ebx
add esp, 0x60
ret
call fcn.004359e0
ud2
call fcn.004359e0
ud2
cmp cl, 0x61
jb 0x5c2e30
cmp cl, 0x66
ja 0x5c2e30
mov ebx, ecx
sub ebx, 0x61
add ebx, 0xa
mov ecx, ebx
jmp 0x5c2892
cmp cl, 0x41
jb 0x5c2e49
cmp cl, 0x46
ja 0x5c2e49
mov ebx, ecx
sub ebx, 0x41
add ebx, 0xa
mov ecx, ebx
jmp 0x5c2892
xor ecx, ecx
jmp 0x5c2892
call fcn.00435970
ud2
mov ecx, eax
cmp eax, edx
ja 0x5c2ece
sub edx, eax
mov eax, esi
cmp edx, 0
je 0x5c2e68
add eax, ecx
mov ecx, edx
mov edx, eax
cmp ecx, 3
jle 0x5c2ecc
cmp ecx, 3
jb 0x5c2ec5
mov ecx, 3
mov dword [esp + 0x64], edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x50], ecx
xor ebx, ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp], 0x8c3e90
lea ebx, [esp + 0x4c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.00417980
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x7c], ebx
add esp, 0x60
ret
call fcn.004359e0
ud2
jmp 0x5c2e7b
call fcn.004359e0
ud2
cmp cl, 0x61
jb 0x5c2ee9
cmp cl, 0x66
ja 0x5c2ee9
mov ecx, 1
jmp 0x5c284e
cmp cl, 0x41
jb 0x5c2efd
cmp cl, 0x46
ja 0x5c2efd
mov ecx, 1
jmp 0x5c284e
xor ecx, ecx
jmp 0x5c284e
call fcn.00435970
ud2
cmp cl, 0x61
jb 0x5c2f1f
cmp cl, 0x66
ja 0x5c2f1f
mov ecx, 1
jmp 0x5c2817
cmp cl, 0x41
jb 0x5c2f33
cmp cl, 0x46
ja 0x5c2f33
mov ecx, 1
jmp 0x5c2817
xor ecx, ecx
jmp 0x5c2817
call fcn.00435970
ud2
cmp bl, 0x2b
jne 0x5c2f73
mov ebx, dword [esp + 0x6c]
cmp ebx, 5
je 0x5c2f6c
mov byte [esp + 0x23], 0
inc eax
cmp eax, edx
jge 0x5c2a00
cmp eax, edx
jb 0x5c27c4
call fcn.00435970
ud2
mov byte [esp + 0x23], 1
jmp 0x5c2f54
mov ebx, dword [esp + 0x6c]
cmp ebx, 2
je 0x5c2f8b
mov ebx, dword [esp + 0x6c]
cmp ebx, 3
je 0x5c2f8b
inc eax
jmp 0x5c27b4
cmp eax, edx
jae 0x5c304c
mov ebp, esi
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x80
jae 0x5c2f85
mov dword [esp + 0x28], eax
cmp eax, edx
jae 0x5c3045
mov ebp, esi
add ebp, eax
movzx ebx, byte [ebp]
mov byte [esp], bl
mov ebx, dword [esp + 0x6c]
mov dword [esp + 4], ebx
call fcn.005c2500
mov esi, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x28]
movzx ebx, byte [esp + 8]
cmp bl, 0
je 0x5c2f85
mov ebp, eax
inc ebp
mov ecx, eax
cmp ebp, edx
ja 0x5c303e
cmp eax, ebp
ja 0x5c303e
mov edx, ebp
sub edx, eax
mov eax, esi
cmp edx, 0
je 0x5c2ff4
add eax, ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x30], edx
xor ebx, ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov dword [esp], 0x8c3eb0
lea ebx, [esp + 0x2c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.00417980
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x7c], ebx
add esp, 0x60
ret
call fcn.004359e0
ud2
call fcn.00435970
ud2
call fcn.00435970
ud2
call fcn.004616d0
jmp fcn.005c2770