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

Disassembly:
sub esp, 0x50
mov edx, dword [esp + 0x58]
push ebx
push ebp
mov ebp, ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x14], ebp
push esi
push edi
cmp edx, 2
jb 0x1002de5a
cmp byte [ecx], 0x22
jne 0x1002de5a
cmp byte [ecx + edx - 1], 0x22
jne 0x1002de5a
mov al, 1
jmp 0x1002de5c
xor al, al
test al, al
mov byte [esp + 0x18], al
lea esi, [edx - 2]
lea edi, [ecx + 1]
cmove esi, edx
cmove edi, ecx
xor ebx, ebx
cmp esi, 0xc
jb 0x1002df52
cmp dword [edi], 0x2347534d
jne 0x1002df52
add esi, 0xfffffffc
lea edx, [esp + 0x64]
add edi, 4
push 0xa
push esi
mov ecx, edi
call fcn.1000a9b0
add esp, 8
test eax, eax
je 0x1002df52
mov cl, byte [eax + edi]
inc eax
cmp cl, 0x23
jne 0x1002df52
sub esi, eax
lea edx, [esp + 0x2c]
add edi, eax
push 0xa
push esi
mov ecx, edi
call fcn.1000a9b0
add esp, 8
test eax, eax
je 0x1002df52
mov cl, byte [eax + edi]
inc eax
cmp cl, 0x23
jne 0x1002df52
sub esi, eax
lea edx, [esp + 0x14]
add edi, eax
push 0xa
push esi
mov ecx, edi
call fcn.1000a9b0
add esp, 8
test eax, eax
je 0x1002df52
mov cl, byte [eax + edi]
inc eax
cmp cl, 0x23
jne 0x1002df52
sub esi, eax
lea edx, [esp + 0x68]
add edi, eax
mov dword [esp + 0x20], esi
push 0xa
push esi
mov ecx, edi
mov dword [esp + 0x2c], edi
call fcn.1000a9b0
add esp, 8
test eax, eax
je 0x1002df52
sub esi, eax
add edi, eax
mov eax, dword [esp + 0x20]
add eax, dword [esp + 0x24]
mov dword [esp + 0x28], esi
mov esi, edi
cmp edi, eax
jae 0x1002df42
cmp byte [esi], 0x2c
je 0x1002df3e
inc esi
cmp esi, eax
jb 0x1002df30
mov esi, edi
jmp 0x1002df48
test esi, esi
jne 0x1002df69
mov esi, edi
cmp edi, eax
jae 0x1002df52
cmp byte [esi], 0x3b
je 0x1002df65
inc esi
cmp esi, eax
jb 0x1002df48
mov ecx, dword [esp + 0x1c]
call fcn.1002c210
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
test esi, esi
je 0x1002df52
cmp esi, edi
jbe 0x1002df95
cmp byte [edi], 0x3a
mov ebp, edi
jne 0x1002df8d
inc ebp
push str.0123456789._
push ebp
call dword [sym.imp.msvcrt.dll_strspn]
add ebp, eax
add esp, 8
inc ebx
cmp byte [ebp], 0x3a
je 0x1002df74
cmp ebp, esi
jne 0x1002df52
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x28]
inc edi
inc esi
mov eax, edi
sub eax, esi
dec ecx
add ecx, eax
movzx eax, byte [esp + 0x2c]
dec eax
cmp eax, 0x64
ja case.0x1002dfb8.3
movzx eax, byte [eax + 0x1002e2e0]
jmp dword [eax*4 + 0x1002e298]
cmp ebx, 4
jb 0x1002df52
push ecx
push esi
push edi
push dword [esp + 0x74]
push dword [esp + 0x24]
push ecx
mov ecx, ebp
call fcn.1002e700
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 4
jb 0x1002df52
push dword [esp + 0x18]
push ecx
push esi
push edi
push dword [esp + 0x78]
mov ecx, ebp
push dword [esp + 0x28]
push dword [esp + 0x7c]
call fcn.1002e800
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 1
jb 0x1002df52
sub esp, 8
mov ecx, ebp
push edi
push dword [esp + 0x74]
sub esp, 8
call fcn.1002eec0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 7
jb 0x1002df52
push ecx
push esi
push edi
push dword [esp + 0x74]
mov ecx, ebp
push dword [esp + 0x24]
push dword [esp + 0x78]
call fcn.1002efa0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 5
jb 0x1002df52
sub esp, 8
mov ecx, ebp
push edi
push dword [esp + 0x74]
sub esp, 8
call fcn.1002f500
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 1
jb 0x1002df52
sub esp, 8
mov ecx, ebp
push edi
push dword [esp + 0x74]
sub esp, 8
call fcn.1002f630
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 6
jb 0x1002df52
sub esp, 8
mov ecx, ebp
push edi
push dword [esp + 0x74]
sub esp, 8
call fcn.1002f700
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 6
jb 0x1002df52
sub esp, 8
mov ecx, ebp
push edi
push dword [esp + 0x74]
sub esp, 8
call fcn.1002f920
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 6
jb 0x1002df52
push dword [esp + 0x6c]
push ecx
push esi
push edi
push dword [esp + 0x78]
mov ecx, ebp
push dword [esp + 0x28]
push dword [esp + 0x7c]
call fcn.1002faa0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
push ecx
push esi
push edi
push dword [esp + 0x74]
mov ecx, ebp
push dword [esp + 0x24]
push dword [esp + 0x78]
call fcn.1002fe50
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 1
jb 0x1002df52
push ecx
push esi
push edi
push dword [esp + 0x74]
push ecx
push dword [esp + 0x78]
mov ecx, ebp
call fcn.10031230
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 2
jb 0x1002df52
push ecx
push esi
push edi
push dword [esp + 0x74]
mov ecx, ebp
sub esp, 8
call fcn.10031440
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 2
jb 0x1002df52
sub esp, 8
mov ecx, ebp
push edi
sub esp, 0xc
call fcn.1002e7b0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 3
jb 0x1002df52
push ecx
push esi
push edi
sub esp, 0xc
mov ecx, ebp
call fcn.10031b30
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 5
jb 0x1002df52
push ecx
push esi
push edi
sub esp, 0xc
mov ecx, ebp
call fcn.10031cf0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
cmp ebx, 4
jb 0x1002df52
push ecx
push esi
push edi
sub esp, 0xc
mov ecx, ebp
call fcn.10031e80
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
sub esp, 0xc
push dword [esp + 0x74]
push ecx
push dword [esp + 0x78]
mov ecx, ebp
call fcn.1002e4c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc
test byte [esp + 0x68], 1
je 0x1002df5b
lea eax, [esp + 0x30]
mov byte [esp + 0x30], 0
push eax
lea eax, [esp + 0x44]
mov dword [esp + 0x3c], 0
push eax
lea eax, [esp + 0x58]
mov dword [esp + 0x44], 0
push eax
push 0
push dword [esp + 0x74]
mov ecx, ebp
mov byte [esp + 0x54], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov byte [esp + 0x64], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
call fcn.10032d60
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 0xc