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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x98
mov ebx, edx
mov edi, ecx
mov esi, dword [ebp + 0xc]
mov eax, dword [0x101ef014]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [edx + 0x44]
mov dword [ebp - 0x4c], eax
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x78], eax
mov eax, dword [ecx + 8]
test eax, eax
jne 0x10172a29
cmp dword [edi + 0x78], 0
jne 0x10172a22
mov eax, dword [edi]
test byte [eax + 0x50], 8
jne 0x10172a22
mov byte [edi + 0x17], 1
mov ecx, edi
call fcn.1002f500
mov edx, dword [ebx + 0x20]
mov ecx, dword [edx + 0x18]
mov edx, dword [edx + 0x34]
mov dword [ebp - 0x60], edx
movsx ebx, word [ecx + 0x22]
mov ecx, dword [edi + 0x38]
mov dword [ebp - 0xa4], ecx
dec ecx
mov dword [ebp - 0x8c], ecx
mov dword [edi + 0x38], ecx
xorps xmm0, xmm0
movups xmmword [ebp - 0x24], xmm0
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x58], edi
mov dword [ebp - 0x48], edi
mov edi, dword [ebp - 0x4c]
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], esi
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x3c], eax
mov eax, dword [edi + 0x30]
mov dword [ebp - 0x20], eax
lea ecx, [eax + 2]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x70], eax
add eax, 3
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x18], eax
movzx eax, byte [edi + 0x11]
cmp eax, 0x5a
mov dword [ebp - 0x9c], ecx
je 0x10173201
mov ecx, 2
cmp eax, 0x56
jne 0x10172ac9
cmp byte [edi + 0x10], 0x59
je 0x10172acc
mov edx, dword [edi + 0x18]
mov ecx, dword [ebp - 0x58]
call fcn.10176ad0
test eax, eax
je 0x10172acc
xor ecx, ecx
inc ecx
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x58]
mov esi, dword [ecx + 0x2c]
lea eax, [esi + ebx]
add eax, 2
mov dword [ecx + 0x2c], eax
mov dword [ebp - 0x2c], eax
movzx edx, byte [edi + 0x11]
cmp edx, 0x58
je 0x10172af5
mov dword [ebp - 0x5c], 0
mov ecx, eax
cmp edx, 0x56
jne 0x10172b04
lea ecx, [esi + ebx]
add ecx, 3
mov edx, dword [ebp - 0x58]
mov dword [edx + 0x2c], ecx
mov dword [ebp - 0x5c], ecx
movzx edx, byte [edi + 0x12]
cmp edx, 0x58
mov dword [ebp - 0xa0], eax
je 0x10172b1c
cmp edx, 0x56
jne 0x1017327b
inc ecx
mov edx, dword [ebp - 0x58]
mov dword [edx + 0x2c], ecx
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x6c], esi
inc esi
mov dword [ebp - 0x94], 0
cmp byte [edi + 0x10], 0x4c
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x88], 0
mov eax, 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x54], ebx
je 0x10172bc0
xor edx, edx
cmp dword [ebp - 0x78], 0
mov edi, dword [ebp - 0x4c]
je 0x10172b6d
mov edx, dword [ebp - 0x78]
mov edx, dword [edx]
mov eax, dword [edi + 0x4c]
add eax, esi
mov ebx, dword [edi + 8]
test ebx, ebx
je 0x10172b7b
add eax, dword [ebx]
mov dword [ebp - 0x7c], eax
lea ebx, [edx + ecx]
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x88], eax
lea edi, [edx + ebx]
inc edi
add ebx, edx
lea eax, [edx + ebx]
inc eax
add edx, edx
add edx, ebx
mov ebx, dword [ebp - 0x88]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x58]
mov dword [eax + 0x2c], edx
lea eax, [ecx + 1]
mov ebx, dword [ebp - 0x54]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x6c]
add eax, ebx
inc eax
mov dword [ebp - 0x80], eax
test bx, bx
mov ecx, dword [ebp - 0x50]
jle 0x10172bf9
xor ebx, ebx
lea eax, [esi + ebx]
mov edi, esi
mov esi, ecx
mov edx, 0x5e
push eax
push ebx
push dword [ebp - 0x60]
call fcn.1002fb80
mov ecx, esi
mov esi, edi
add esp, 0xc
inc ebx
cmp dword [ebp - 0x54], ebx
jne 0x10172bd6
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x98], eax
mov edi, ecx
mov edx, 0x61
push dword [ebp - 0x80]
push dword [ebp - 0x54]
push esi
call fcn.1002fb80
add esp, 0xc
mov ebx, dword [ebp - 0x4c]
mov edx, dword [ebx + 8]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x74], 0
test edx, edx
je 0x10172ceb
mov eax, dword [edx]
mov dword [ebp - 0x54], eax
add esi, dword [ebx + 0x4c]
xor eax, eax
mov edi, dword [ebp - 0x58]
mov ecx, edi
push eax
push eax
call fcn.101576d0
add esp, 8
mov dword [ebp - 0x74], eax
mov eax, dword [edi + 0x2c]
inc eax
mov dword [ebp - 0x6c], eax
mov dword [edi + 0x2c], eax
mov edi, dword [ebp - 0x50]
mov ecx, edi
mov edx, 0x5a
push dword [ebp - 0x54]
push dword [ebx + 0x44]
mov dword [ebp - 0x60], esi
push esi
call fcn.1002fb80
add esp, 0xc
mov ebx, eax
mov eax, dword [edi]
cmp byte [eax + 0x57], 0
jne 0x10173287
mov eax, dword [edi + 0x68]
mov ecx, dword [edi + 0x6c]
lea ecx, [ecx + ecx*4]
mov byte [eax + ecx*4 - 0x13], 0xf8
mov edx, dword [ebp - 0x74]
mov dword [eax + ecx*4 - 4], edx
lea eax, [ebx + 2]
add ebx, 4
mov edi, dword [ebp - 0x50]
mov ecx, edi
mov edx, 0xe
push eax
push ebx
push eax
call fcn.1002fb80
add esp, 0xc
xor eax, eax
mov ecx, edi
mov edx, 0xa
push eax
push eax
push dword [ebp - 0x6c]
call fcn.1002fb80
add esp, 0xc
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x54]
dec eax
mov ecx, edi
mov edx, 0x50
push eax
mov ebx, dword [ebp - 0x4c]
push dword [ebx + 0x44]
push dword [ebp - 0x60]
call fcn.1002fb80
add esp, 0xc
mov ecx, edi
mov edx, 0x7f
xor eax, eax
push eax
mov ebx, dword [ebp - 0xa0]
push ebx
mov esi, dword [ebp - 0x98]
push esi
call fcn.1002fb80
add esp, 0xc
mov ecx, edi
mov edx, 0x80
push ebx
push dword [ebp - 0x80]
push esi
call fcn.1002fb80
add esp, 0xc
mov ecx, edi
mov edx, 0x34
push ebx
mov edi, dword [ebp - 0x4c]
xor eax, eax
push eax
push dword [edi + 0x54]
call fcn.1002fb80
add esp, 0xc
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x58]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x60], eax
test eax, eax
jne 0x10172d62
cmp dword [ecx + 0x78], 0
jne 0x10172d5a
mov eax, dword [ecx]
test byte [eax + 0x50], 8
jne 0x10172d5a
mov byte [ecx + 0x17], 1
call fcn.1002f500
mov dword [ebp - 0x60], eax
xor esi, esi
mov ebx, esi
mov eax, dword [edi + 0x2c]
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x60]
mov edx, 0x4b
xor eax, eax
push eax
push dword [edi + 0x34]
push eax
call fcn.1002fb80
add esp, 0xc
mov eax, dword [edi + 0x48]
mov eax, dword [eax + 0x14]
mov esi, 0
test eax, eax
je 0x10172d94
mov esi, dword [eax]
cmp ebx, esi
cmovg esi, ebx
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 0x58], 0
je 0x10172dae
mov edi, dword [edi + 0x24]
test edi, edi
jne 0x10172d64
jmp 0x10172e3a
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 0x20]
cmp eax, str.nth_value
je 0x10172dc2
cmp eax, str.first_value
jne 0x10172df5
mov ebx, dword [ebp - 0x60]
mov ecx, ebx
mov edx, 0x47
xor eax, eax
push eax
push dword [edi + 0x40]
push eax
call fcn.1002fb80
add esp, 0xc
mov eax, dword [edi + 0x40]
inc eax
mov ecx, ebx
mov edx, 0x47
xor ebx, ebx
push ebx
xor ebx, ebx
push eax
push ebx
call fcn.1002fb80
add esp, 0xc
mov eax, dword [ebp - 0x54]
test byte [eax + 5], 0x10
je 0x10172da2
mov eax, dword [edi + 0x3c]
test eax, eax
je 0x10172da2
mov ecx, dword [ebp - 0x60]
mov edx, 0x92
xor ebx, ebx
push ebx
xor ebx, ebx
push ebx
push eax
call fcn.1002fb80
add esp, 0xc
mov eax, dword [edi + 0x40]
inc eax
mov ecx, dword [ebp - 0x60]
mov edx, 0x47
xor ebx, ebx
push ebx
push eax
push ebx
call fcn.1002fb80
add esp, 0xc
jmp 0x10172da2
mov edi, dword [ebp - 0x58]
mov eax, dword [edi + 0x2c]
lea ecx, [eax + 1]
add esi, eax
mov dword [edi + 0x2c], esi
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x5c], 0
je 0x10172e7e
mov ebx, dword [ebp - 0x4c]
mov edx, dword [ebx + 0x18]
mov ecx, edi
mov esi, dword [ebp - 0x5c]
push esi
call fcn.10059020
add esp, 4
xor eax, eax
cmp byte [ebx + 0x10], 0x59
sete al
lea eax, [eax + eax*2]
mov ecx, edi
mov edx, esi
push eax
call fcn.10176b40
add esp, 4
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x10172eb3
mov ebx, dword [ebp - 0x4c]
mov edx, dword [ebx + 0x1c]
mov edi, dword [ebp - 0x58]
mov ecx, edi
push esi
call fcn.10059020
add esp, 4
xor eax, eax
cmp byte [ebx + 0x10], 0x59
sete al
lea eax, [eax + eax*2 + 1]
mov ecx, edi
mov edx, esi
push eax
call fcn.10176b40
add esp, 4
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x10], 0x59
mov edi, dword [ebp - 0x68]
jne 0x101730e6
mov eax, dword [ebp - 0x4c]
mov al, byte [eax + 0x11]
cmp al, 0x56
jne 0x10172ef6
test esi, esi
je 0x10172efa
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x10], 0x59
je 0x10172efa
mov ecx, dword [ebp - 0x50]
mov edx, 0x6b
mov eax, dword [ebp - 0x5c]
push eax
push esi
push eax
call fcn.1002fb80
add esp, 0xc
mov eax, dword [ebp - 0x4c]
mov al, byte [eax + 0x11]
cmp al, 0x5a
je 0x10172f14
xor eax, eax
mov ecx, dword [ebp - 0x50]
mov edx, 0x24
push eax
push eax
push dword [ebp - 0x9c]
call fcn.1002fb80
add esp, 0xc
xor eax, eax
mov esi, dword [ebp - 0x50]
mov ecx, esi
mov edx, 0x24
push eax
push eax
push dword [ebp - 0x70]
call fcn.1002fb80
add esp, 0xc
mov ecx, esi
xor esi, esi
mov edx, 0x24
push esi
push esi
push dword [ebp - 0x84]
call fcn.1002fb80
add esp, 0xc
test edi, edi
je 0x10172fc6
cmp dword [ebp - 0x78], 0
je 0x10172fc6
mov edi, dword [ebp - 0x78]
mov eax, dword [edi]
dec eax
mov esi, dword [ebp - 0x50]
mov ecx, esi
mov edx, 0x50
push eax
push dword [ebp - 0x68]
push dword [ebp - 0x7c]
call fcn.1002fb80
add esp, 0xc
mov eax, dword [edi]
dec eax
mov ecx, esi
mov edx, 0x50
push eax
push dword [ebp - 0x88]
push dword [ebp - 0x68]
call fcn.1002fb80
add esp, 0xc
mov eax, dword [edi]
dec eax
mov ecx, esi
mov edx, 0x50
push eax
push dword [ebp - 0x90]
push dword [ebp - 0x68]
call fcn.1002fb80
add esp, 0xc
mov eax, dword [edi]
mov edi, dword [ebp - 0x68]
dec eax
mov ecx, esi
xor esi, esi
mov edx, 0x50
push eax
push dword [ebp - 0x94]
push edi
call fcn.1002fb80
add esp, 0xc
mov ecx, dword [ebp - 0x50]
mov edx, 9
push esi
push dword [ebp - 0x8c]
push esi
mov esi, ecx
call fcn.1002fb80
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101f2320
cmp byte [edx + 0x57], 0
jne 0x10172ffc
mov ecx, dword [ebp - 0x80]
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [esi + 0x68]
mov dword [ecx + 8], eax
test edi, edi
mov esi, edi
mov edi, dword [ebp - 0x58]
mov eax, dword [ebp - 0x7c]
je 0x10173020
mov ecx, edi
mov edx, dword [ebp - 0x78]
push dword [ebp - 0x8c]
push esi
push eax
call fcn.101776b0
add esp, 0xc
mov eax, dword [ebp - 0x4c]
mov al, byte [eax + 0x11]
cmp al, 0x56
jne 0x101731a3
xor eax, eax
lea ecx, [ebp - 0x48]
mov edx, 3
push eax
push eax
call fcn.101777a0
add esp, 8
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x12], 0x5a
je 0x101733b0
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x10], 0x59
jne 0x10173366
mov esi, dword [edi + 0x38]
lea eax, [esi - 1]
mov dword [edi + 0x38], eax
mov edi, dword [ebp - 0x50]
mov ecx, dword [edi + 0x6c]
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x48]
mov edx, 0x39
push eax
push dword [ebp - 0x84]
push dword [ebp - 0x64]
push dword [ebp - 0x70]
call fcn.10177ca0
add esp, 0x10
xor ebx, ebx
lea ecx, [ebp - 0x48]
mov edx, 2
push ebx
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
xor edx, edx
inc edx
lea ecx, [ebp - 0x48]
push ebx
push ebx
call fcn.101777a0
add esp, 8
mov ecx, edi
mov edx, 9
push ebx
push dword [ebp - 0x54]
push ebx
call fcn.1002fb80
add esp, 0xc
mov ecx, dword [edi + 0xc]
neg esi
mov eax, dword [ecx + 0x38]
add eax, dword [ecx + 0x3c]
jns 0x101735c3
mov edx, edi
push esi
call fcn.10032440
add esp, 4
jmp 0x101733b0
mov eax, dword [ebp - 0x4c]
mov al, byte [eax + 0x11]
cmp dword [ebp - 0x5c], 0
je 0x10172ec9
mov ecx, dword [ebp - 0x4c]
cmp al, byte [ecx + 0x12]
jne 0x10172ec9
xor ecx, ecx
cmp al, 0x56
sete cl
lea edx, [ecx + ecx]
add edx, 0x37
mov eax, esi
xor ebx, ebx
mov esi, dword [ebp - 0x50]
mov ecx, esi
push eax
push ebx
push dword [ebp - 0x5c]
call fcn.1002fb80
add esp, 0xc
mov dword [ebp - 0x54], eax
lea ecx, [ebp - 0x48]
xor edx, edx
call fcn.10176d00
mov ecx, esi
mov edx, 0x24
push ebx
push ebx
mov ebx, dword [ebp - 0x70]
push ebx
call fcn.1002fb80
add esp, 0xc
lea ecx, [ebp - 0x48]
call fcn.10176ec0
mov ecx, esi
mov edx, 0x92
xor eax, eax
push eax
push eax
push ebx
call fcn.1002fb80
add esp, 0xc
mov ecx, esi
mov edx, 9
xor eax, eax
push eax
push dword [ebp - 0x8c]
push eax
call fcn.1002fb80
add esp, 0xc
mov edx, dword [esi]
mov eax, dword [esi + 0x6c]
mov ecx, 0x101f2320
cmp byte [edx + 0x57], 0
jne 0x10173198
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [esi + 0x68]
mov dword [ecx + 8], eax
mov esi, dword [ebp - 0x64]
jmp 0x10172ec3
mov ecx, dword [ebp - 0x4c]
cmp byte [ecx + 0x12], 0x58
jne 0x101732b4
cmp al, 0x58
mov esi, dword [ebp - 0x64]
jne 0x10173376
mov eax, dword [ebp - 0x4c]
mov bl, byte [eax + 0x10]
lea ecx, [ebp - 0x48]
mov edx, 3
push 0
push esi
call fcn.101777a0
add esp, 8
cmp bl, 0x59
jne 0x10173389
xor esi, esi
lea edi, [ebp - 0x48]
mov ecx, edi
mov edx, 2
push esi
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
xor edx, edx
inc edx
mov ecx, edi
push esi
push esi
jmp 0x101733a8
cmp dword [edi + 0x58], 0
jne 0x10172acc
mov eax, edi
mov ecx, dword [eax + 0x2c]
mov ecx, dword [ecx + 0x20]
cmp ecx, 0x101b45b7
je 0x10172acc
cmp ecx, str.lead
je 0x10172acc
cmp ecx, str.nth_value
je 0x10172acc
cmp ecx, str.first_value
je 0x10172acc
mov eax, dword [eax + 0x24]
test eax, eax
jne 0x1017320d
cmp byte [edi + 0x12], 0x58
jne 0x10172ac6
cmp byte [edi + 0x10], 0x59
je 0x10172acc
mov edx, dword [edi + 0x1c]
mov ecx, dword [ebp - 0x58]
call fcn.10176ad0
mov ecx, 3
test eax, eax
jne 0x10172ac9
jmp 0x10172acc
mov dword [ebp - 0x64], 0
jmp 0x10172b26
mov edx, dword [ebp - 0x74]
test edx, edx
je 0x10172c9a
cmp dword [eax + 0x208], 0
jne 0x10172c9a
dec dword [edx]
jne 0x10172c9a
mov ecx, dword [edx + 0xc]
call fcn.1014c8d0
jmp 0x10172c9a
xor eax, eax
lea ecx, [ebp - 0x48]
mov edx, 3
push eax
push eax
call fcn.101777a0
add esp, 8
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x12], 0x5a
je 0x101733b0
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x10], 0x59
jne 0x101735d1
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 0x6c]
mov dword [ebp - 0x54], eax
mov esi, 0
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x10173319
mov esi, dword [edi + 0x38]
dec esi
mov dword [edi + 0x38], esi
lea ecx, [ebp - 0x48]
mov edx, 0x39
push esi
push dword [ebp - 0x84]
push ebx
push dword [ebp - 0x70]
call fcn.10177ca0
add esp, 0x10
lea ecx, [ebp - 0x48]
xor edx, edx
inc edx
xor edi, edi
push edi
push edi
call fcn.101777a0
add esp, 8
lea ecx, [ebp - 0x48]
mov edx, 2
push edi
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
test ebx, ebx
je 0x101733b0
xor eax, eax
mov edi, dword [ebp - 0x50]
mov ecx, edi
mov edx, 9
push eax
push dword [ebp - 0x54]
push eax
call fcn.1002fb80
add esp, 0xc
mov ecx, dword [edi + 0xc]
not esi
jmp 0x101730ca
xor esi, esi
lea edi, [ebp - 0x48]
xor edx, edx
inc edx
mov ecx, edi
push esi
push dword [ebp - 0x64]
jmp 0x10173395
lea ecx, [ebp - 0x48]
mov edx, 3
push 0
push esi
call fcn.101777a0
add esp, 8
xor esi, esi
lea edi, [ebp - 0x48]
xor edx, edx
inc edx
mov ecx, edi
push esi
push esi
call fcn.101777a0
add esp, 8
mov ecx, edi
mov edx, 2
push esi
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
mov edi, dword [ebp - 0x50]
mov ecx, dword [edi + 0xc]
mov esi, dword [ebp - 0xa4]
neg esi
mov eax, dword [ecx + 0x38]
add eax, dword [ecx + 0x3c]
jns 0x101733d3
mov edx, edi
push esi
call fcn.10032440
add esp, 4
jmp 0x101733dc
mov eax, dword [edi + 0x6c]
mov ecx, dword [ecx + 0x40]
mov dword [ecx + esi*4], eax
mov ecx, dword [ebp + 8]
call fcn.10031790
xor esi, esi
mov eax, dword [ebp - 0x4c]
cmp dword [eax + 8], 0
mov dword [ebp - 0x54], 0
je 0x1017342e
xor eax, eax
mov ecx, edi
mov edx, 0x47
push eax
push dword [ebp - 0x6c]
push eax
call fcn.1002fb80
add esp, 0xc
mov dword [ebp - 0x54], eax
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101f2320
cmp byte [edx + 0x57], 0
jne 0x1017342b
mov ecx, dword [ebp - 0x74]
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [edi + 0x68]
mov dword [ecx + 8], eax
mov dword [ebp - 0x2c], esi
mov ecx, edi
mov edx, 0x24
push esi
push esi
push dword [ebp - 0x98]
call fcn.1002fb80
add esp, 0xc
mov esi, eax
mov eax, dword [ebp - 0x4c]
mov bl, byte [eax + 0x11]
cmp byte [eax + 0x12], 0x58
jne 0x10173492
cmp bl, 0x58
jne 0x101734f3
mov eax, dword [ebp - 0x4c]
mov bl, byte [eax + 0x10]
lea ecx, [ebp - 0x48]
mov edx, 3
push 0
push dword [ebp - 0x64]
call fcn.101777a0
add esp, 8
cmp bl, 0x59
jne 0x10173508
lea ecx, [ebp - 0x48]
mov edx, 2
push 0
push dword [ebp - 0x5c]
jmp 0x10173500
mov dword [ebp - 0x60], esi
xor esi, esi
lea ecx, [ebp - 0x48]
mov edx, 3
push esi
push esi
call fcn.101777a0
add esp, 8
cmp bl, 0x56
jne 0x10173522
mov eax, dword [ebp - 0x4c]
cmp byte [eax + 0x10], 0x59
mov esi, dword [ebp - 0x64]
jne 0x1017358e
mov esi, dword [edi + 0x6c]
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x48]
mov edx, 2
push ebx
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
mov dword [ebp - 0x58], eax
lea ecx, [ebp - 0x48]
mov edx, ebx
push ebx
push 0
call fcn.101777a0
add esp, 8
mov dword [ebp - 0x68], eax
jmp 0x1017367f
lea ecx, [ebp - 0x48]
mov edx, 3
push 0
push dword [ebp - 0x64]
call fcn.101777a0
add esp, 8
xor eax, eax
lea ecx, [ebp - 0x48]
xor edx, edx
inc edx
push eax
push eax
call fcn.101777a0
add esp, 8
mov ebx, dword [ebp - 0x4c]
jmp 0x10173726
mov eax, dword [ebp - 0x50]
mov edi, dword [eax + 0x6c]
lea ebx, [ebp - 0x48]
xor edx, edx
inc edx
mov ecx, ebx
push 1
push esi
call fcn.101777a0
add esp, 8
mov dword [ebp - 0x58], eax
mov ecx, ebx
mov edx, 2
push esi
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
mov ecx, dword [ebp - 0x50]
mov edx, 9
push esi
push edi
mov edi, dword [ebp - 0x50]
push esi
call fcn.1002fb80
add esp, 0xc
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101f2320
cmp byte [edx + 0x57], 0
jne 0x10173583
mov ecx, dword [ebp - 0x58]
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [edi + 0x68]
mov dword [ecx + 8], eax
mov ebx, dword [ebp - 0x4c]
jmp 0x10173723
cmp byte [eax + 0x12], 0x5a
mov ebx, dword [edi + 0x6c]
jne 0x1017364e
xor edi, edi
inc edi
lea esi, [ebp - 0x48]
mov ecx, esi
mov edx, edi
push edi
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
mov dword [ebp - 0x68], eax
mov ecx, esi
mov edx, 2
push edi
push 0
jmp 0x1017366f
mov eax, dword [edi + 0x6c]
mov ecx, dword [ecx + 0x40]
mov dword [ecx + esi*4], eax
jmp 0x101733b0
xor esi, esi
mov eax, 0
mov edi, dword [ebp - 0x64]
test edi, edi
je 0x101735f4
mov ecx, dword [ebp - 0x50]
mov edx, 0x3b
push 1
push 0
push edi
call fcn.1002fb80
add esp, 0xc
mov dword [ebp - 0x54], eax
lea ebx, [ebp - 0x48]
xor edx, edx
inc edx
mov ecx, ebx
push esi
push esi
call fcn.101777a0
add esp, 8
mov ecx, ebx
mov edx, 2
push esi
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
test edi, edi
je 0x101733b0
mov eax, dword [ebp - 0x50]
mov edx, dword [eax]
mov eax, dword [eax + 0x6c]
mov ecx, 0x101f2320
cmp byte [edx + 0x57], 0
jne 0x10173646
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, dword [ebp - 0x50]
add ecx, dword [edx + 0x68]
mov dword [ecx + 8], eax
jmp 0x101733b0
xor edi, edi
inc edi
lea ecx, [ebp - 0x48]
mov edx, edi
push edi
push esi
call fcn.101777a0
add esp, 8
mov dword [ebp - 0x68], eax
lea ecx, [ebp - 0x48]
mov edx, 2
push edi
push dword [ebp - 0x5c]
call fcn.101777a0
add esp, 8
mov dword [ebp - 0x58], eax
mov edi, dword [ebp - 0x50]
mov esi, ebx
xor ebx, ebx
mov ecx, edi
mov edx, 9
push ebx
push esi
push ebx
call fcn.1002fb80
add esp, 0xc
mov ecx, dword [edi]
mov eax, dword [edi + 0x6c]
mov esi, 0x101f2320
cmp byte [ecx + 0x57], 0
mov ecx, 0x101f2320
jne 0x101736b4
mov ecx, dword [ebp - 0x58]
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [edi + 0x68]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x50]
mov edi, dword [eax + 0x6c]
lea ecx, [ebp - 0x48]
xor edx, edx
inc edx
push 1
push ebx
call fcn.101777a0
add esp, 8
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x50]
mov edx, 9
push ebx
push edi
mov edi, dword [ebp - 0x50]
push ebx
call fcn.1002fb80
add esp, 0xc
mov ecx, dword [edi]
mov eax, dword [edi + 0x6c]
cmp byte [ecx + 0x57], 0
jne 0x101736fe
mov ecx, dword [ebp - 0x68]
lea esi, [ecx + ecx*4]
shl esi, 2
add esi, dword [edi + 0x68]
mov dword [esi + 8], eax
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101f2320
cmp byte [edx + 0x57], 0
mov ebx, dword [ebp - 0x4c]
jne 0x10173720
mov ecx, dword [ebp - 0x58]
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [edi + 0x68]
mov dword [ecx + 8], eax
mov esi, dword [ebp - 0x60]
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101f2320
cmp byte [edx + 0x57], 0
jne 0x1017373f
lea ecx, [esi + esi*4]
shl ecx, 2
add ecx, dword [edi + 0x68]
mov dword [ecx + 8], eax
xor esi, esi
mov ecx, edi
mov edx, 0x92
push esi
push esi
push dword [ebp - 0x70]
call fcn.1002fb80
add esp, 0xc
cmp dword [ebx + 8], esi
je 0x101737c2
mov eax, dword [ebx + 0x58]
test eax, eax
je 0x1017378d
xor esi, esi
mov ecx, edi
mov edx, 0x47
push esi
push eax
push 1
call fcn.1002fb80
add esp, 0xc
mov ecx, edi
mov edx, 0x47
push esi
push dword [ebx + 0x5c]
push esi
call fcn.1002fb80
add esp, 0xc
mov edx, dword [edi]
mov eax, dword [edi + 0x6c]
mov ecx, 0x101f2320
cmp byte [edx + 0x57], 0
jne 0x101737a9
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx + ecx*4]
shl ecx, 2
add ecx, dword [edi + 0x68]
mov dword [ecx + 4], eax
xor eax, eax
mov ecx, edi
mov edx, 0x43
push eax
push eax
push dword [ebp - 0x6c]
call fcn.1002fb80
add esp, 0xc
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10156ff0
add esp, 0x98
pop esi
pop edi
pop ebx
pop ebp
ret