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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
push ebx
push esi
push edi
mov edi, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x44]
mov esi, dword [edi + 8]
mov ecx, dword [eax + 0xc]
xor ebx, ebx
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], ecx
cmp esi, ebx
je 0x101cd8f4
mov dword [esp + 0x84], esi
jmp 0x101cd917
cmp dword [edi + 0x74], ebx
jne 0x101cd905
mov edx, dword [edi]
test byte [edx + 0x4c], 8
jne 0x101cd905
mov byte [edi + 0x17], 1
push edi
call fcn.10166f40
add esp, 4
mov dword [esp + 0x84], eax
mov esi, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x20]
mov ecx, dword [eax + 0x34]
mov edx, dword [eax + 0x18]
movsx eax, word [edx + 0x2a]
dec dword [edi + 0x38]
push 0x34
mov dword [esp + 0x2c], ecx
mov ecx, dword [edi + 0x38]
lea edx, [esp + 0x50]
push ebx
push edx
mov dword [esp + 0x40], eax
mov dword [esp + 0x94], ebx
mov dword [esp + 0xa0], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x98], ecx
call fcn.100ffab0
mov ecx, dword [esp + 0x3c]
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov dword [esp + 0x68], eax
mov eax, dword [ecx + 0x30]
mov dword [esp + 0x64], edx
lea edx, [eax + 1]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x8c], edx
lea edx, [eax + 2]
add eax, 3
mov dword [esp + 0x84], eax
mov al, byte [ecx + 0x11]
add esp, 0xc
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], esi
mov dword [esp + 0x68], edx
cmp al, 0x56
je 0x101cd9f7
cmp al, 0x5a
je 0x101cd9c6
mov dword [esp + 0x64], 2
jmp 0x101cda15
mov edx, ecx
call fcn.1011ab20
test eax, eax
jne 0x101cda15
cmp byte [edx + 0x12], 0x58
jne 0x101cda0d
cmp byte [edx + 0x10], 0x59
je 0x101cda15
mov eax, edx
mov edx, dword [eax + 0x1c]
mov eax, edi
call fcn.1019af60
test eax, eax
je 0x101cda15
mov dword [esp + 0x64], 3
jmp 0x101cda15
cmp byte [ecx + 0x10], 0x59
je 0x101cda15
mov edx, ecx
mov edx, dword [edx + 0x18]
mov eax, edi
call fcn.1019af60
test eax, eax
je 0x101cda15
mov dword [esp + 0x64], 1
mov eax, dword [edi + 0x2c]
mov edx, dword [esp + 0x34]
lea ecx, [eax + 1]
lea eax, [eax + edx + 1]
mov dword [esp + 0x18], ecx
lea ecx, [eax + 1]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x30]
mov dword [edi + 0x2c], ecx
mov al, byte [eax + 0x11]
mov dword [esp + 0xc], ecx
cmp al, 0x58
je 0x101cda44
cmp al, 0x56
jne 0x101cda4e
lea eax, [ecx + 1]
mov dword [edi + 0x2c], eax
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0x30]
mov al, byte [ecx + 0x12]
cmp al, 0x58
je 0x101cda5d
cmp al, 0x56
jne 0x101cda67
inc dword [edi + 0x2c]
mov eax, dword [edi + 0x2c]
mov dword [esp + 0x40], eax
cmp byte [ecx + 0x10], 0x4c
je 0x101cdac5
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x101cda79
mov eax, dword [eax]
jmp 0x101cda7b
xor eax, eax
mov ecx, dword [ecx + 0x4c]
mov edx, dword [esp + 0x30]
add ecx, dword [esp + 0x18]
mov edx, dword [edx + 8]
mov dword [esp + 0x20], ecx
cmp edx, ebx
je 0x101cda97
add ecx, dword [edx]
mov dword [esp + 0x20], ecx
mov ecx, dword [edi + 0x2c]
lea edx, [ecx + 1]
add ecx, eax
mov dword [esp + 0x10], edx
lea edx, [ecx + 1]
add ecx, eax
mov dword [esp + 0x6c], edx
lea edx, [ecx + 1]
add ecx, eax
mov dword [esp + 0x74], edx
lea edx, [ecx + 1]
add ecx, eax
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x34]
mov dword [edi + 0x2c], ecx
xor ecx, ecx
mov dword [esp + 0x2c], ecx
cmp edx, ebx
jle 0x101cdb3b
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101cdafb
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
lea edx, [eax + ecx]
push edx
push eax
mov eax, dword [esp + 0x30]
push eax
push 0x59
mov eax, esi
call fcn.1015b8e0
mov ecx, dword [esp + 0x3c]
add esp, 0x10
jmp 0x101cdb2e
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x28]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x18]
add edx, ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ebx
mov word [eax], 0x59
mov dword [eax + 0x14], ebx
mov edx, dword [esp + 0x34]
inc ecx
mov dword [esp + 0x2c], ecx
cmp ecx, edx
jl 0x101cdacf
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101cdb60
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x18]
push eax
push ecx
push edx
push 0x5b
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cdb91
lea ecx, [eax + 1]
mov dword [esi + 0x6c], ecx
mov ecx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
xor ecx, ecx
mov word [eax + 2], cx
mov ecx, dword [esp + 0x18]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x24]
mov dword [eax + 4], ecx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ebx
mov word [eax], 0x5b
mov dword [eax + 0x14], ebx
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 8]
cmp eax, ebx
je 0x101cdd86
mov ecx, dword [eax]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edx + 0x4c]
add ecx, dword [esp + 0x18]
push edi
xor edx, edx
xor ebx, ebx
mov dword [esp + 0x38], ecx
call fcn.101910f0
inc dword [edi + 0x2c]
mov ecx, dword [esp + 0x34]
mov edx, dword [ecx + 0x44]
mov ecx, dword [esi + 0x6c]
mov dword [esp + 0x2c], eax
mov eax, dword [edi + 0x2c]
add esp, 4
mov dword [esp + 0x90], eax
cmp dword [esi + 0x70], ecx
jg 0x101cdbff
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x34]
push eax
push edx
push ecx
push 0x56
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
mov dword [esp + 0x18], eax
jmp 0x101cdc36
mov ebx, dword [esi + 0x68]
lea eax, [ecx + 1]
mov dword [esi + 0x6c], eax
lea eax, [ecx + ecx*2]
lea eax, [ebx + eax*8]
xor ebx, ebx
mov word [eax + 2], bx
mov ebx, dword [esp + 0x34]
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov edx, dword [esp + 0x2c]
xor ebx, ebx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ebx
mov word [eax], 0x56
mov dword [eax + 0x14], ebx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi]
cmp byte [ecx + 0x51], bl
je 0x101cdc4d
mov eax, dword [esp + 0x28]
mov edx, 0xfffffff7
call fcn.10145340
jmp 0x101cdc65
mov eax, dword [esi + 0x6c]
mov ecx, dword [esi + 0x68]
mov edx, dword [esp + 0x28]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8 - 0x18]
mov byte [eax + 1], 0xf7
mov dword [eax + 0x10], edx
mov edx, dword [esp + 0x18]
mov eax, dword [esi + 0x6c]
lea ecx, [edx + 2]
add edx, 4
mov dword [esp + 0x88], edx
cmp dword [esi + 0x70], eax
jg 0x101cdc8f
push ecx
push edx
push ecx
push 0x10
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cdcbf
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x88]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov word [eax], 0x10
mov dword [eax + 0x14], ebx
mov ecx, dword [esi + 0x6c]
cmp dword [esi + 0x70], ecx
jg 0x101cdcdf
mov eax, dword [esp + 0x90]
push ebx
push ebx
push eax
push 0xc
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cdd11
lea edx, [ecx + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [ecx + ecx*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x90]
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov word [eax], 0xc
mov dword [eax + 0x14], ebx
mov eax, ecx
push str.call_flush_partition
push esi
mov dword [esp + 0x90], eax
call fcn.10166d20
mov eax, dword [esp + 0x38]
mov edx, dword [eax + 0x44]
mov ecx, dword [esp + 0x34]
mov eax, dword [esi + 0x6c]
add esp, 8
dec ecx
mov dword [esp + 0x38], edx
cmp dword [esi + 0x70], eax
jg 0x101cdd53
push ecx
mov ecx, dword [esp + 0x38]
push edx
push ecx
push 0x4d
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cdd84
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x34]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x38]
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov word [eax], 0x4d
mov dword [eax + 0x14], ebx
xor ebx, ebx
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101cddaa
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x80]
push ebx
push eax
push ecx
push 0x78
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cddde
mov ecx, dword [esi + 0x68]
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x80]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0xc]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov word [eax], 0x78
mov dword [eax + 0x14], ebx
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101cde06
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x80]
push eax
push ecx
push edx
push 0x79
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cde3e
lea ecx, [eax + 1]
mov dword [esi + 0x6c], ecx
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x80]
xor ecx, ecx
mov word [eax + 2], cx
mov ecx, dword [esp + 0x24]
mov dword [eax + 4], edx
mov edx, dword [esp + 0xc]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ebx
mov word [eax], 0x79
mov dword [eax + 0x14], ebx
mov eax, dword [esp + 0x30]
mov ecx, dword [esi + 0x6c]
mov eax, dword [eax + 0x54]
mov dword [esp + 0x38], eax
cmp dword [esi + 0x70], ecx
jg 0x101cde6a
mov ecx, dword [esp + 0xc]
push ecx
push ebx
push eax
push 0x34
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
mov dword [esp + 0x28], eax
jmp 0x101cde9f
lea edx, [ecx + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [ecx + ecx*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x38]
mov dword [eax + 4], edx
mov edx, dword [esp + 0xc]
mov dword [eax + 8], ebx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ebx
mov word [eax], 0x34
mov dword [eax + 0x14], ebx
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x30]
push eax
push edi
call fcn.1016f310
add esp, 8
mov dword [esp + 0x60], eax
cmp dword [esp + 0x1c], ebx
je 0x101cdeec
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 0x18]
push ecx
push eax
push edi
call fcn.101e30a0
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x28]
xor ecx, ecx
add esp, 0xc
cmp byte [edx + 0x10], 0x59
setne cl
dec ecx
and ecx, 3
push ecx
push eax
call fcn.1016f8b0
add esp, 8
cmp dword [esp + 0x40], ebx
je 0x101cdf28
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 0x1c]
push ecx
push eax
push edi
call fcn.101e30a0
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x4c]
xor ecx, ecx
add esp, 0xc
cmp byte [edx + 0x10], 0x59
setne cl
dec ecx
and ecx, 3
inc ecx
push ecx
push eax
call fcn.1016f8b0
add esp, 8
mov ecx, dword [esp + 0x30]
cmp byte [ecx + 0x10], 0x59
je 0x101ce093
mov al, byte [ecx + 0x11]
cmp al, byte [ecx + 0x12]
jne 0x101ce093
cmp dword [esp + 0x1c], ebx
je 0x101ce093
mov edx, dword [esp + 0x40]
xor ecx, ecx
cmp al, 0x56
sete cl
push edx
push ebx
lea eax, [ecx + ecx + 0x37]
mov ecx, dword [esp + 0x24]
push ecx
push eax
push esi
call fcn.1015e0f0
add esp, 0x14
push ebx
lea ecx, [esp + 0x50]
mov dword [esp + 0x3c], eax
call fcn.1016f530
mov eax, dword [esi + 0x6c]
add esp, 4
cmp dword [esi + 0x70], eax
jg 0x101cdf9b
mov edx, dword [esp + 0x70]
push ebx
push 1
push edx
push 0x25
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cdfc7
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x70]
mov dword [esi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x25
mov dword [eax + 0x14], ebx
lea eax, [esp + 0x4c]
push eax
call fcn.101c1cb0
mov eax, dword [esi + 0x6c]
add esp, 4
cmp dword [esi + 0x70], eax
jg 0x101cdff4
mov ecx, dword [esp + 0x70]
push ebx
push ebx
push ecx
push 0x8a
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce01c
mov ecx, dword [esi + 0x68]
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x70]
mov dword [eax + 4], ecx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x8a
mov dword [eax + 0x14], ebx
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101ce03c
mov edx, dword [esp + 0x8c]
push ebx
push edx
push ebx
push 0xb
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce067
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x8c]
mov dword [esi + 0x6c], ecx
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov eax, dword [esp + 0x38]
mov ecx, dword [esi + 0x6c]
cmp eax, ebx
jge 0x101ce075
lea eax, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], bl
je 0x101ce083
mov eax, 0x10299328
jmp 0x101ce08c
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x30]
cmp byte [ecx + 0x11], 0x56
jne 0x101ce0bf
cmp byte [ecx + 0x10], 0x59
je 0x101ce0bf
cmp dword [esp + 0x40], ebx
je 0x101ce0bf
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x40]
push eax
push ecx
push eax
push 0x6a
push esi
call fcn.1015e0f0
mov ecx, dword [esp + 0x44]
add esp, 0x14
cmp byte [ecx + 0x11], 0x5a
je 0x101ce10f
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101ce0e3
mov edx, dword [esp + 0x68]
push ebx
push 1
push edx
push 0x25
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce10f
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x68]
mov dword [esi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x25
mov dword [eax + 0x14], ebx
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101ce12d
mov eax, dword [esp + 0x70]
push ebx
push 1
push eax
push 0x25
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce159
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x70]
mov dword [esi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x25
mov dword [eax + 0x14], ebx
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101ce177
mov eax, dword [esp + 0x78]
push ebx
push 1
push eax
push 0x25
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce1a3
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x78]
mov dword [esi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x25
mov dword [eax + 0x14], ebx
cmp dword [esp + 0x10], ebx
je 0x101ce31c
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x101ce31c
mov ecx, dword [eax]
mov eax, dword [esi + 0x6c]
dec ecx
cmp dword [esi + 0x70], eax
jg 0x101ce1dd
mov eax, dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x24]
push eax
push ecx
push 0x4d
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce20e
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x20]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x10]
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov word [eax], 0x4d
mov dword [eax + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov eax, dword [esi + 0x6c]
dec ecx
cmp dword [esi + 0x70], eax
jg 0x101ce236
mov edx, dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x70]
push ecx
push edx
push 0x4d
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce267
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x10]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x6c]
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov word [eax], 0x4d
mov dword [eax + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov eax, dword [esi + 0x6c]
dec ecx
cmp dword [esi + 0x70], eax
jg 0x101ce28f
mov edx, dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x78]
push ecx
push edx
push 0x4d
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce2c0
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x10]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x74]
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov word [eax], 0x4d
mov dword [eax + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov eax, dword [esi + 0x6c]
dec ecx
cmp dword [esi + 0x70], eax
jg 0x101ce2eb
mov edx, dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x80]
push ecx
push edx
push 0x4d
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce31c
lea edx, [eax + 1]
mov dword [esi + 0x6c], edx
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
xor edx, edx
mov word [eax + 2], dx
mov edx, dword [esp + 0x10]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [eax + 8], edx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov word [eax], 0x4d
mov dword [eax + 0x14], ebx
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101ce33c
mov eax, dword [esp + 0x8c]
push ebx
push eax
push ebx
push 0xb
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce367
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x8c]
mov dword [esi + 0x6c], ecx
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov eax, dword [esp + 0x28]
mov ecx, dword [esi + 0x6c]
cmp eax, ebx
jge 0x101ce375
lea eax, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], bl
je 0x101ce383
mov eax, 0x10299328
jmp 0x101ce38c
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 8], ecx
cmp dword [esp + 0x10], ebx
je 0x101ce3b6
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x18]
push ecx
push edx
push eax
mov eax, edi
call fcn.101953f0
add esp, 0x10
mov ecx, dword [esp + 0x30]
mov al, byte [ecx + 0x11]
cmp al, 0x56
jne 0x101cec38
push ebx
push ebx
push 3
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov ecx, dword [esp + 0x3c]
add esp, 0xc
cmp byte [ecx + 0x12], 0x5a
je 0x101cfcd5
mov edx, ecx
cmp byte [edx + 0x10], 0x59
mov edx, dword [esp + 0x40]
jne 0x101ce861
dec dword [edi + 0x38]
mov edi, dword [edi + 0x38]
mov ecx, dword [esp + 0x78]
mov eax, dword [esi + 0x6c]
push edi
push ecx
push edx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x7c]
push eax
lea ecx, [esp + 0x5c]
push 0x39
push ecx
mov dword [esp + 0x5c], edi
call fcn.10177aa0
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x64]
mov edi, dword [esp + 0x6c]
xor edx, edx
mov dword [esp + 0x38], ecx
add ecx, 0x10
add esp, 0x18
cmp byte [ecx], 0x4c
mov dword [esp + 0xc], eax
setne dl
dec dword [eax + 0x38]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x50]
add eax, 0x11
mov dword [esp + 0x14], eax
mov al, byte [eax]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x48], edx
mov dword [esp + 0x34], ebx
cmp al, 0x5a
je 0x101ce7e8
cmp dword [esp + 0x1c], ebx
jle 0x101ce4e2
cmp byte [ecx], 0x59
mov edx, edi
jne 0x101ce4cb
mov ecx, dword [edx + 0x6c]
mov dword [esp + 0x34], ecx
cmp al, 0x56
jne 0x101ce4a6
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x74]
push eax
push ecx
push edx
lea eax, [esp + 0x5c]
push 0x37
push eax
call fcn.10177aa0
add esp, 0x18
jmp 0x101ce4e2
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x6c]
push edx
push eax
push ecx
lea edx, [esp + 0x5c]
push 0x39
push edx
call fcn.10177aa0
add esp, 0x18
jmp 0x101ce4e2
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
push 1
push eax
push ecx
push 0x30
push edx
call fcn.1015e0f0
add esp, 0x14
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x14]
mov dl, byte [ecx]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x20]
cmp dl, byte [eax + 0x12]
jne 0x101ce57e
cmp dword [esp + 0x1c], ebx
je 0x101ce57e
mov ecx, dword [esp + 0x10]
cmp byte [ecx], 0x59
jne 0x101ce57e
mov ecx, dword [esp + 0xc]
call fcn.1011c1d0
mov edx, eax
mov dword [esp + 0x28], edx
call fcn.1011c1d0
push ebx
push edx
mov edx, dword [esp + 0x70]
push edx
push 0x7f
push edi
mov dword [esp + 0x40], eax
call fcn.1015e0f0
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x8c]
add esp, 0x14
push ebx
push eax
push ecx
push 0x7f
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x40]
add esp, 0x14
push edx
push eax
push ecx
push 0x39
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x20]
add esp, 0x14
call fcn.1011c1b0
mov edx, dword [esp + 0x2c]
call fcn.1011c1b0
mov ecx, dword [esp + 0x20]
mov ecx, dword [ecx + 0x58]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], eax
cmp ecx, ebx
je 0x101ce5da
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101ce5b0
push ebx
push 1
push ecx
push 0x52
mov eax, edi
call fcn.1015b8e0
jmp 0x101ce5f4
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x52
mov dword [eax + 0x14], ebx
jmp 0x101ce5f7
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x20]
push eax
push 1
push ecx
push edx
lea eax, [esp + 0x5c]
call fcn.101afed0
add esp, 0x10
cmp dword [esp + 0x64], 2
jne 0x101ce65a
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101ce61b
mov eax, dword [esp + 0x24]
push ebx
push ebx
push eax
push 0x7a
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce643
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x24]
mov dword [edi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x7a
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0x6c]
cmp eax, ebx
jle 0x101ce65a
mov ecx, dword [edi + 0x68]
lea eax, [eax + eax*2]
mov edx, 2
mov word [ecx + eax*8 - 0x16], dx
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x48]
push ebx
lea edx, [eax + ecx + 1]
mov eax, dword [esp + 0x28]
push edx
push eax
push 5
push edi
call fcn.1015e0f0
add esp, 0x14
cmp dword [esp + 0x48], ebx
je 0x101ce779
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101ce69e
mov ecx, dword [esp + 0x18]
push ebx
push ecx
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce6c6
mov ecx, dword [edi + 0x68]
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
cmp eax, ebx
je 0x101ce6f3
mov eax, dword [eax]
mov dword [esp + 0x10], eax
cmp eax, ebx
je 0x101ce6f7
mov ecx, dword [esp + 0xc]
mov esi, eax
call fcn.10129010
mov esi, dword [esp + 0x84]
mov dword [esp + 0x14], eax
jmp 0x101ce6fb
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
push eax
push ecx
lea eax, [esp + 0x54]
call fcn.1016f7e0
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [edx + 0xc]
push ecx
push eax
mov eax, dword [esp + 0x24]
call fcn.101953f0
add esp, 0x18
cmp dword [esp + 0x10], 1
jne 0x101ce760
cmp dword [esp + 0x14], ebx
je 0x101ce779
mov ecx, dword [esp + 0xc]
mov al, byte [ecx + 0x13]
cmp al, 8
jae 0x101ce779
mov ecx, dword [esp + 0x14]
movzx edx, al
mov eax, dword [esp + 0xc]
mov dword [eax + edx*4 + 0x94], ecx
inc byte [eax + 0x13]
jmp 0x101ce779
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
cmp edx, dword [eax + 0x1c]
jle 0x101ce779
mov ecx, edx
mov edx, dword [esp + 0x14]
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], edx
mov ecx, dword [esp + 0x34]
cmp ecx, ebx
je 0x101ce7c0
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101ce79c
push ebx
mov eax, ecx
push eax
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce7c0
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0xc]
mov edx, dword [eax + 0x3c]
add edx, dword [eax + 0x38]
mov ecx, dword [esp + 0x18]
not ecx
jns 0x101ce7df
push ecx
push edi
mov edi, eax
call fcn.1015b870
add esp, 8
jmp 0x101ce7e8
mov eax, dword [eax + 0x40]
mov edx, dword [edi + 0x6c]
mov dword [eax + ecx*4], edx
push ebx
push ebx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov eax, dword [esi + 0x6c]
add esp, 0xc
cmp dword [esi + 0x70], eax
jg 0x101ce815
mov eax, dword [esp + 0x3c]
push ebx
push eax
push ebx
push 0xb
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ce83d
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x3c]
mov dword [esi + 0x6c], ecx
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov edi, dword [esi + 0xc]
mov ecx, dword [edi + 0x3c]
add ecx, dword [edi + 0x38]
mov eax, dword [esp + 0x44]
not eax
jns 0x101cf8c6
push eax
push esi
call fcn.1015b870
add esp, 8
jmp 0x101cfcd5
push ebx
push edx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
mov edi, dword [esp + 0x60]
xor edx, edx
mov dword [esp + 0x2c], ecx
add ecx, 0x10
add esp, 0xc
cmp byte [ecx], 0x4c
mov dword [esp + 0xc], eax
setne dl
dec dword [eax + 0x38]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x50]
add eax, 0x11
mov dword [esp + 0x14], eax
mov al, byte [eax]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x48], edx
mov dword [esp + 0x34], ebx
cmp al, 0x5a
je 0x101cfcd5
cmp dword [esp + 0x1c], ebx
jle 0x101ce934
cmp byte [ecx], 0x59
mov edx, edi
jne 0x101ce91d
mov ecx, dword [edx + 0x6c]
mov dword [esp + 0x34], ecx
cmp al, 0x56
jne 0x101ce8f8
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x74]
push eax
push ecx
push edx
lea eax, [esp + 0x5c]
push 0x37
push eax
call fcn.10177aa0
add esp, 0x18
jmp 0x101ce934
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x6c]
push edx
push eax
push ecx
lea edx, [esp + 0x5c]
push 0x39
push edx
call fcn.10177aa0
add esp, 0x18
jmp 0x101ce934
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
push 1
push eax
push ecx
push 0x30
push edx
call fcn.1015e0f0
add esp, 0x14
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x14]
mov dl, byte [ecx]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x20]
cmp dl, byte [eax + 0x12]
jne 0x101ce9d0
cmp dword [esp + 0x1c], ebx
je 0x101ce9d0
mov ecx, dword [esp + 0x10]
cmp byte [ecx], 0x59
jne 0x101ce9d0
mov ecx, dword [esp + 0xc]
call fcn.1011c1d0
mov edx, eax
mov dword [esp + 0x3c], edx
call fcn.1011c1d0
push ebx
push edx
mov edx, dword [esp + 0x70]
push edx
push 0x7f
push edi
mov dword [esp + 0x40], eax
call fcn.1015e0f0
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x8c]
add esp, 0x14
push ebx
push eax
push ecx
push 0x7f
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x40]
add esp, 0x14
push edx
push eax
push ecx
push 0x39
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x20]
add esp, 0x14
call fcn.1011c1b0
mov edx, dword [esp + 0x2c]
call fcn.1011c1b0
mov ecx, dword [esp + 0x20]
mov ecx, dword [ecx + 0x58]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x24], edx
mov dword [esp + 0x38], eax
cmp ecx, ebx
je 0x101cea2c
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cea02
push ebx
push 1
push ecx
push 0x52
mov eax, edi
call fcn.1015b8e0
jmp 0x101cea46
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x52
mov dword [eax + 0x14], ebx
jmp 0x101cea49
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x20]
push eax
push 1
push ecx
push edx
lea eax, [esp + 0x5c]
call fcn.101afed0
add esp, 0x10
cmp dword [esp + 0x64], 2
jne 0x101ceaac
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cea6d
mov eax, dword [esp + 0x24]
push ebx
push ebx
push eax
push 0x7a
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cea95
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x24]
mov dword [edi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x7a
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0x6c]
cmp eax, ebx
jle 0x101ceaac
mov ecx, dword [edi + 0x68]
lea eax, [eax + eax*2]
mov edx, 2
mov word [ecx + eax*8 - 0x16], dx
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x48]
push ebx
lea edx, [ecx + eax + 1]
mov eax, dword [esp + 0x28]
push edx
push eax
push 5
push edi
call fcn.1015e0f0
add esp, 0x14
cmp dword [esp + 0x48], ebx
je 0x101cebcb
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101ceaf0
mov ecx, dword [esp + 0x18]
push ebx
push ecx
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101ceb18
mov ecx, dword [edi + 0x68]
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
cmp eax, ebx
je 0x101ceb45
mov eax, dword [eax]
mov dword [esp + 0x10], eax
cmp eax, ebx
je 0x101ceb49
mov ecx, dword [esp + 0xc]
mov esi, eax
call fcn.10129010
mov esi, dword [esp + 0x84]
mov dword [esp + 0x14], eax
jmp 0x101ceb4d
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
push eax
push ecx
lea eax, [esp + 0x54]
call fcn.1016f7e0
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [edx + 0xc]
push ecx
push eax
mov eax, dword [esp + 0x24]
call fcn.101953f0
add esp, 0x18
cmp dword [esp + 0x10], 1
jne 0x101cebb2
cmp dword [esp + 0x14], ebx
je 0x101cebcb
mov ecx, dword [esp + 0xc]
mov al, byte [ecx + 0x13]
cmp al, 8
jae 0x101cebcb
mov ecx, dword [esp + 0x14]
movzx edx, al
mov eax, dword [esp + 0xc]
mov dword [eax + edx*4 + 0x94], ecx
inc byte [eax + 0x13]
jmp 0x101cebcb
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
cmp edx, dword [eax + 0x1c]
jle 0x101cebcb
mov ecx, edx
mov edx, dword [esp + 0x14]
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], edx
mov ecx, dword [esp + 0x34]
cmp ecx, ebx
je 0x101cec12
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cebee
push ebx
mov eax, ecx
push eax
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cec12
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov ecx, dword [esp + 0x18]
mov eax, dword [edi + 0xc]
mov edx, dword [eax + 0x3c]
add edx, dword [eax + 0x38]
not ecx
jns 0x101cf40a
push ecx
push edi
mov edi, eax
call fcn.1015b870
add esp, 8
jmp 0x101cfcd5
cmp byte [ecx + 0x12], 0x58
jne 0x101cf418
cmp al, 0x58
jne 0x101cec54
cmp byte [ecx + 0x10], 0x59
mov dword [esp + 0x28], 1
je 0x101cec58
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x40]
push ebx
push eax
push 3
lea eax, [esp + 0x58]
call fcn.101c7ee0
add esp, 0xc
cmp dword [esp + 0x28], ebx
je 0x101cf03f
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x54]
xor edx, edx
mov dword [esp + 0x20], ecx
add ecx, 0x10
cmp byte [ecx], 0x4c
mov dword [esp + 0xc], eax
setne dl
dec dword [eax + 0x38]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x50]
add eax, 0x11
mov dword [esp + 0x14], eax
mov al, byte [eax]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x48], edx
mov dword [esp + 0x34], ebx
cmp al, 0x5a
je 0x101cf03f
cmp dword [esp + 0x1c], ebx
jle 0x101ced3d
cmp byte [ecx], 0x59
jne 0x101ced22
mov ecx, edi
mov edx, dword [ecx + 0x6c]
mov dword [esp + 0x34], edx
cmp al, 0x56
jne 0x101cecfd
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x74]
push ecx
push edx
push eax
lea ecx, [esp + 0x5c]
push 0x37
push ecx
call fcn.10177aa0
add esp, 0x18
jmp 0x101ced3d
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x6c]
push eax
push ecx
push edx
lea eax, [esp + 0x5c]
push 0x39
push eax
call fcn.10177aa0
add esp, 0x18
jmp 0x101ced3d
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x54]
push 1
push ecx
push edx
push 0x30
push eax
call fcn.1015e0f0
add esp, 0x14
mov ecx, dword [edi + 0x6c]
mov edx, dword [esp + 0x14]
mov al, byte [edx]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x20]
cmp al, byte [ecx + 0x12]
jne 0x101cedd9
cmp dword [esp + 0x1c], ebx
je 0x101cedd9
mov edx, dword [esp + 0x10]
cmp byte [edx], 0x59
jne 0x101cedd9
mov ecx, dword [esp + 0xc]
call fcn.1011c1d0
mov edx, eax
mov dword [esp + 0x3c], edx
call fcn.1011c1d0
push ebx
push edx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x70]
push eax
push 0x7f
push edi
call fcn.1015e0f0
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x8c]
add esp, 0x14
push ebx
push ecx
push edx
push 0x7f
push edi
call fcn.1015e0f0
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x40]
add esp, 0x14
push eax
push ecx
push edx
push 0x39
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x20]
add esp, 0x14
call fcn.1011c1b0
mov edx, dword [esp + 0x2c]
call fcn.1011c1b0
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x68]
mov dword [esp + 0x38], ecx
mov ecx, dword [edx + 0x58]
mov dword [esp + 0x24], eax
cmp ecx, ebx
je 0x101cee35
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cee0b
push ebx
push 1
push ecx
push 0x52
mov eax, edi
call fcn.1015b8e0
jmp 0x101cee4b
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x52
mov dword [eax + 0x14], ebx
jmp 0x101cee4e
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
push eax
push 1
push ecx
push edx
lea eax, [esp + 0x5c]
call fcn.101afed0
add esp, 0x10
cmp dword [esp + 0x64], 2
jne 0x101ceeb1
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cee72
mov eax, dword [esp + 0x24]
push ebx
push ebx
push eax
push 0x7a
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cee9a
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x24]
mov dword [edi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x7a
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0x6c]
cmp eax, ebx
jle 0x101ceeb1
mov ecx, dword [edi + 0x68]
lea eax, [eax + eax*2]
mov edx, 2
mov word [ecx + eax*8 - 0x16], dx
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x48]
push ebx
lea edx, [ecx + eax + 1]
mov eax, dword [esp + 0x28]
push edx
push eax
push 5
push edi
call fcn.1015e0f0
add esp, 0x14
cmp dword [esp + 0x48], ebx
je 0x101cefd0
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101ceef5
mov ecx, dword [esp + 0x18]
push ebx
push ecx
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cef1d
mov ecx, dword [edi + 0x68]
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
cmp eax, ebx
je 0x101cef4a
mov eax, dword [eax]
mov dword [esp + 0x10], eax
cmp eax, ebx
je 0x101cef4e
mov ecx, dword [esp + 0xc]
mov esi, eax
call fcn.10129010
mov esi, dword [esp + 0x84]
mov dword [esp + 0x14], eax
jmp 0x101cef52
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
push eax
push ecx
lea eax, [esp + 0x54]
call fcn.1016f7e0
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [edx + 0xc]
push ecx
push eax
mov eax, dword [esp + 0x24]
call fcn.101953f0
add esp, 0x18
cmp dword [esp + 0x10], 1
jne 0x101cefb7
cmp dword [esp + 0x14], ebx
je 0x101cefd0
mov ecx, dword [esp + 0xc]
mov al, byte [ecx + 0x13]
cmp al, 8
jae 0x101cefd0
mov ecx, dword [esp + 0x14]
movzx edx, al
mov eax, dword [esp + 0xc]
mov dword [eax + edx*4 + 0x94], ecx
inc byte [eax + 0x13]
jmp 0x101cefd0
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
cmp edx, dword [eax + 0x1c]
jle 0x101cefd0
mov ecx, edx
mov edx, dword [esp + 0x14]
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], edx
mov ecx, dword [esp + 0x34]
cmp ecx, ebx
je 0x101cf017
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101ceff3
push ebx
mov eax, ecx
push eax
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cf017
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0xc]
mov edx, dword [eax + 0x3c]
add edx, dword [eax + 0x38]
mov ecx, dword [esp + 0x18]
not ecx
jns 0x101cf036
push ecx
push edi
mov edi, eax
call fcn.1015b870
add esp, 8
jmp 0x101cf03f
mov eax, dword [eax + 0x40]
mov edx, dword [edi + 0x6c]
mov dword [eax + ecx*4], edx
push ebx
push ebx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
add esp, 0xc
cmp dword [esp + 0x28], ebx
jne 0x101cfcd5
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x54]
xor edx, edx
mov dword [esp + 0x20], ecx
add ecx, 0x10
cmp byte [ecx], 0x4c
mov dword [esp + 0xc], eax
setne dl
dec dword [eax + 0x38]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x50]
add eax, 0x11
mov dword [esp + 0x14], eax
mov al, byte [eax]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x48], edx
mov dword [esp + 0x2c], ebx
cmp al, 0x5a
je 0x101cfcd5
cmp dword [esp + 0x1c], ebx
jle 0x101cf120
cmp byte [ecx], 0x59
jne 0x101cf105
mov ecx, edi
mov edx, dword [ecx + 0x6c]
mov dword [esp + 0x2c], edx
cmp al, 0x56
jne 0x101cf0e0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x74]
push ecx
push edx
push eax
lea ecx, [esp + 0x5c]
push 0x37
push ecx
call fcn.10177aa0
add esp, 0x18
jmp 0x101cf120
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x6c]
push eax
push ecx
push edx
lea eax, [esp + 0x5c]
push 0x39
push eax
call fcn.10177aa0
add esp, 0x18
jmp 0x101cf120
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x54]
push 1
push ecx
push edx
push 0x30
push eax
call fcn.1015e0f0
add esp, 0x14
mov ecx, dword [edi + 0x6c]
mov edx, dword [esp + 0x14]
mov al, byte [edx]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x20]
cmp al, byte [ecx + 0x12]
jne 0x101cf1bc
cmp dword [esp + 0x1c], ebx
je 0x101cf1bc
mov edx, dword [esp + 0x10]
cmp byte [edx], 0x59
jne 0x101cf1bc
mov ecx, dword [esp + 0xc]
call fcn.1011c1d0
mov edx, eax
mov dword [esp + 0x3c], edx
call fcn.1011c1d0
push ebx
push edx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x70]
push eax
push 0x7f
push edi
call fcn.1015e0f0
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x8c]
add esp, 0x14
push ebx
push ecx
push edx
push 0x7f
push edi
call fcn.1015e0f0
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x3c]
add esp, 0x14
push eax
push ecx
push edx
push 0x39
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x20]
add esp, 0x14
call fcn.1011c1b0
mov edx, dword [esp + 0x28]
call fcn.1011c1b0
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x68]
mov dword [esp + 0x38], ecx
mov ecx, dword [edx + 0x58]
mov dword [esp + 0x24], eax
cmp ecx, ebx
je 0x101cf218
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cf1ee
push ebx
push 1
push ecx
push 0x52
mov eax, edi
call fcn.1015b8e0
jmp 0x101cf22e
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x52
mov dword [eax + 0x14], ebx
jmp 0x101cf231
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
push eax
push 1
push ecx
push edx
lea eax, [esp + 0x5c]
call fcn.101afed0
add esp, 0x10
cmp dword [esp + 0x64], 2
jne 0x101cf294
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cf255
mov eax, dword [esp + 0x24]
push ebx
push ebx
push eax
push 0x7a
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cf27d
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x24]
mov dword [edi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x7a
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0x6c]
cmp eax, ebx
jle 0x101cf294
mov ecx, dword [edi + 0x68]
lea eax, [eax + eax*2]
mov edx, 2
mov word [ecx + eax*8 - 0x16], dx
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x48]
push ebx
lea edx, [eax + ecx + 1]
mov eax, dword [esp + 0x28]
push edx
push eax
push 5
push edi
call fcn.1015e0f0
add esp, 0x14
cmp dword [esp + 0x48], ebx
je 0x101cf3b3
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cf2d8
mov ecx, dword [esp + 0x18]
push ebx
push ecx
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cf300
mov ecx, dword [edi + 0x68]
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
cmp eax, ebx
je 0x101cf32d
mov eax, dword [eax]
mov dword [esp + 0x10], eax
cmp eax, ebx
je 0x101cf331
mov ecx, dword [esp + 0xc]
mov esi, eax
call fcn.10129010
mov esi, dword [esp + 0x84]
mov dword [esp + 0x14], eax
jmp 0x101cf335
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
push eax
push ecx
lea eax, [esp + 0x54]
call fcn.1016f7e0
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [edx + 0xc]
push ecx
push eax
mov eax, dword [esp + 0x24]
call fcn.101953f0
add esp, 0x18
cmp dword [esp + 0x10], 1
jne 0x101cf39a
cmp dword [esp + 0x14], ebx
je 0x101cf3b3
mov ecx, dword [esp + 0xc]
mov al, byte [ecx + 0x13]
cmp al, 8
jae 0x101cf3b3
mov ecx, dword [esp + 0x14]
movzx edx, al
mov eax, dword [esp + 0xc]
mov dword [eax + edx*4 + 0x94], ecx
inc byte [eax + 0x13]
jmp 0x101cf3b3
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
cmp edx, dword [eax + 0x1c]
jle 0x101cf3b3
mov ecx, edx
mov edx, dword [esp + 0x14]
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], edx
mov ecx, dword [esp + 0x2c]
cmp ecx, ebx
je 0x101cf401
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cf3dd
push ebx
mov eax, ecx
push eax
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
mov ecx, dword [esp + 0x28]
add esp, 0x10
jmp 0x101cec16
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov ecx, dword [esp + 0x18]
jmp 0x101cec16
mov eax, dword [eax + 0x40]
mov edx, dword [edi + 0x6c]
mov dword [eax + ecx*4], edx
jmp 0x101cfcd5
push ebx
push ebx
push 3
lea eax, [esp + 0x58]
mov dword [esp + 0x40], ebx
call fcn.101c7ee0
mov eax, dword [esp + 0x3c]
add esp, 0xc
cmp byte [eax + 0x12], 0x5a
je 0x101cfcd5
mov ecx, eax
cmp byte [ecx + 0x10], 0x59
mov eax, dword [esp + 0x40]
jne 0x101cf8d4
mov edx, dword [esi + 0x6c]
mov dword [esp + 0x38], ebx
mov dword [esp + 0x34], edx
cmp eax, ebx
je 0x101cf47e
dec dword [edi + 0x38]
mov edi, dword [edi + 0x38]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x70]
push edi
push ecx
push eax
push edx
lea eax, [esp + 0x5c]
push 0x39
push eax
mov dword [esp + 0x50], edi
call fcn.10177aa0
add esp, 0x18
push ebx
push ebx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
mov edi, dword [esp + 0x60]
xor edx, edx
mov dword [esp + 0x2c], ecx
add ecx, 0x10
add esp, 0xc
cmp byte [ecx], 0x4c
mov dword [esp + 0xc], eax
setne dl
dec dword [eax + 0x38]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x50]
add eax, 0x11
mov dword [esp + 0x14], eax
mov al, byte [eax]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x48], edx
mov dword [esp + 0x2c], ebx
cmp al, 0x5a
je 0x101cf857
cmp dword [esp + 0x1c], ebx
jle 0x101cf551
cmp byte [ecx], 0x59
mov edx, edi
jne 0x101cf53a
mov ecx, dword [edx + 0x6c]
mov dword [esp + 0x2c], ecx
cmp al, 0x56
jne 0x101cf515
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x74]
push eax
push ecx
push edx
lea eax, [esp + 0x5c]
push 0x37
push eax
call fcn.10177aa0
add esp, 0x18
jmp 0x101cf551
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x6c]
push edx
push eax
push ecx
lea edx, [esp + 0x5c]
push 0x39
push edx
call fcn.10177aa0
add esp, 0x18
jmp 0x101cf551
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
push 1
push eax
push ecx
push 0x30
push edx
call fcn.1015e0f0
add esp, 0x14
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x14]
mov dl, byte [ecx]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x20]
cmp dl, byte [eax + 0x12]
jne 0x101cf5ed
cmp dword [esp + 0x1c], ebx
je 0x101cf5ed
mov ecx, dword [esp + 0x10]
cmp byte [ecx], 0x59
jne 0x101cf5ed
mov ecx, dword [esp + 0xc]
call fcn.1011c1d0
mov edx, eax
mov dword [esp + 0x3c], edx
call fcn.1011c1d0
push ebx
push edx
mov edx, dword [esp + 0x70]
push edx
push 0x7f
push edi
mov dword [esp + 0x3c], eax
call fcn.1015e0f0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x8c]
add esp, 0x14
push ebx
push eax
push ecx
push 0x7f
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x3c]
add esp, 0x14
push edx
push eax
push ecx
push 0x39
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x20]
add esp, 0x14
call fcn.1011c1b0
mov edx, dword [esp + 0x28]
call fcn.1011c1b0
mov ecx, dword [esp + 0x20]
mov ecx, dword [ecx + 0x58]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x24], edx
mov dword [esp + 0x3c], eax
cmp ecx, ebx
je 0x101cf649
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cf61f
push ebx
push 1
push ecx
push 0x52
mov eax, edi
call fcn.1015b8e0
jmp 0x101cf663
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x52
mov dword [eax + 0x14], ebx
jmp 0x101cf666
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x20]
push eax
push 1
push ecx
push edx
lea eax, [esp + 0x5c]
call fcn.101afed0
add esp, 0x10
cmp dword [esp + 0x64], 2
jne 0x101cf6c9
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cf68a
mov eax, dword [esp + 0x24]
push ebx
push ebx
push eax
push 0x7a
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cf6b2
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x24]
mov dword [edi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x7a
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0x6c]
cmp eax, ebx
jle 0x101cf6c9
mov ecx, dword [edi + 0x68]
lea eax, [eax + eax*2]
mov edx, 2
mov word [ecx + eax*8 - 0x16], dx
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x48]
push ebx
lea edx, [eax + ecx + 1]
mov eax, dword [esp + 0x28]
push edx
push eax
push 5
push edi
call fcn.1015e0f0
add esp, 0x14
cmp dword [esp + 0x48], ebx
je 0x101cf7e8
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cf70d
mov ecx, dword [esp + 0x18]
push ebx
push ecx
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cf735
mov ecx, dword [edi + 0x68]
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
cmp eax, ebx
je 0x101cf762
mov eax, dword [eax]
mov dword [esp + 0x10], eax
cmp eax, ebx
je 0x101cf766
mov ecx, dword [esp + 0xc]
mov esi, eax
call fcn.10129010
mov esi, dword [esp + 0x84]
mov dword [esp + 0x14], eax
jmp 0x101cf76a
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
push eax
push ecx
lea eax, [esp + 0x54]
call fcn.1016f7e0
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [edx + 0xc]
push ecx
push eax
mov eax, dword [esp + 0x24]
call fcn.101953f0
add esp, 0x18
cmp dword [esp + 0x10], 1
jne 0x101cf7cf
cmp dword [esp + 0x14], ebx
je 0x101cf7e8
mov ecx, dword [esp + 0xc]
mov al, byte [ecx + 0x13]
cmp al, 8
jae 0x101cf7e8
mov ecx, dword [esp + 0x14]
movzx edx, al
mov eax, dword [esp + 0xc]
mov dword [eax + edx*4 + 0x94], ecx
inc byte [eax + 0x13]
jmp 0x101cf7e8
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
cmp edx, dword [eax + 0x1c]
jle 0x101cf7e8
mov ecx, edx
mov edx, dword [esp + 0x14]
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], edx
mov ecx, dword [esp + 0x2c]
cmp ecx, ebx
je 0x101cf82f
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cf80b
push ebx
mov eax, ecx
push eax
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cf82f
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0xc]
mov edx, dword [eax + 0x3c]
add edx, dword [eax + 0x38]
mov ecx, dword [esp + 0x18]
not ecx
jns 0x101cf84e
push ecx
push edi
mov edi, eax
call fcn.1015b870
add esp, 8
jmp 0x101cf857
mov eax, dword [eax + 0x40]
mov edx, dword [edi + 0x6c]
mov dword [eax + ecx*4], edx
cmp dword [esp + 0x40], ebx
je 0x101cfcd5
mov eax, dword [esi + 0x6c]
cmp dword [esi + 0x70], eax
jg 0x101cf87e
mov eax, dword [esp + 0x34]
push ebx
push eax
push ebx
push 0xb
mov eax, esi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cf8a6
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x34]
mov dword [esi + 0x6c], ecx
mov dword [eax + 4], ebx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov edi, dword [esi + 0xc]
mov ecx, dword [edi + 0x3c]
add ecx, dword [edi + 0x38]
mov eax, dword [esp + 0x38]
not eax
jns 0x101cf8c6
push eax
push esi
call fcn.1015b870
add esp, 8
jmp 0x101cfcd5
mov edx, dword [edi + 0x40]
mov ecx, dword [esi + 0x6c]
mov dword [edx + eax*4], ecx
jmp 0x101cfcd5
cmp eax, ebx
je 0x101cf8eb
push 1
push ebx
push eax
push 0x30
push esi
call fcn.1015e0f0
add esp, 0x14
mov dword [esp + 0x34], eax
push ebx
push ebx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
mov edi, dword [esp + 0x60]
xor edx, edx
mov dword [esp + 0x2c], ecx
add ecx, 0x10
add esp, 0xc
cmp byte [ecx], 0x4c
mov dword [esp + 0xc], eax
setne dl
dec dword [eax + 0x38]
mov eax, dword [eax + 0x38]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x50]
add eax, 0x11
mov dword [esp + 0x14], eax
mov al, byte [eax]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x2c], ebx
cmp al, 0x5a
je 0x101cfcc4
cmp dword [esp + 0x1c], ebx
jle 0x101cf9be
cmp byte [ecx], 0x59
mov edx, edi
jne 0x101cf9a7
mov ecx, dword [edx + 0x6c]
mov dword [esp + 0x2c], ecx
cmp al, 0x56
jne 0x101cf982
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x74]
push eax
push ecx
push edx
lea eax, [esp + 0x5c]
push 0x37
push eax
call fcn.10177aa0
add esp, 0x18
jmp 0x101cf9be
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x6c]
push edx
push eax
push ecx
lea edx, [esp + 0x5c]
push 0x39
push edx
call fcn.10177aa0
add esp, 0x18
jmp 0x101cf9be
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
push 1
push eax
push ecx
push 0x30
push edx
call fcn.1015e0f0
add esp, 0x14
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x14]
mov dl, byte [ecx]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x20]
cmp dl, byte [eax + 0x12]
jne 0x101cfa5a
cmp dword [esp + 0x1c], ebx
je 0x101cfa5a
mov ecx, dword [esp + 0x10]
cmp byte [ecx], 0x59
jne 0x101cfa5a
mov ecx, dword [esp + 0xc]
call fcn.1011c1d0
mov edx, eax
mov dword [esp + 0x38], edx
call fcn.1011c1d0
push ebx
push edx
mov edx, dword [esp + 0x70]
push edx
push 0x7f
push edi
mov dword [esp + 0x3c], eax
call fcn.1015e0f0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x8c]
add esp, 0x14
push ebx
push eax
push ecx
push 0x7f
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x3c]
add esp, 0x14
push edx
push eax
push ecx
push 0x39
push edi
call fcn.1015e0f0
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x20]
add esp, 0x14
call fcn.1011c1b0
mov edx, dword [esp + 0x28]
call fcn.1011c1b0
mov ecx, dword [esp + 0x20]
mov ecx, dword [ecx + 0x58]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x24], edx
mov dword [esp + 0x38], eax
cmp ecx, ebx
je 0x101cfab6
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cfa8c
push ebx
push 1
push ecx
push 0x52
mov eax, edi
call fcn.1015b8e0
jmp 0x101cfad0
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ecx
mov dword [eax + 8], 1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x52
mov dword [eax + 0x14], ebx
jmp 0x101cfad3
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x20]
push eax
push 1
push ecx
push edx
lea eax, [esp + 0x5c]
call fcn.101afed0
add esp, 0x10
cmp dword [esp + 0x64], 2
jne 0x101cfb36
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cfaf7
mov eax, dword [esp + 0x24]
push ebx
push ebx
push eax
push 0x7a
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cfb1f
lea ecx, [eax + 1]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x68]
lea eax, [eax + edx*8]
mov edx, dword [esp + 0x24]
mov dword [edi + 0x6c], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0x7a
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0x6c]
cmp eax, ebx
jle 0x101cfb36
mov ecx, dword [edi + 0x68]
lea eax, [eax + eax*2]
mov edx, 2
mov word [ecx + eax*8 - 0x16], dx
mov eax, dword [edi + 0x6c]
mov ecx, dword [esp + 0x3c]
push ebx
lea edx, [ecx + eax + 1]
mov eax, dword [esp + 0x28]
push edx
push eax
push 5
push edi
call fcn.1015e0f0
add esp, 0x14
cmp dword [esp + 0x3c], ebx
je 0x101cfc55
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cfb7a
mov ecx, dword [esp + 0x18]
push ebx
push ecx
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cfba2
mov ecx, dword [edi + 0x68]
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
lea eax, [eax + eax*2]
lea eax, [ecx + eax*8]
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
cmp eax, ebx
je 0x101cfbcf
mov eax, dword [eax]
mov dword [esp + 0x10], eax
cmp eax, ebx
je 0x101cfbd3
mov ecx, dword [esp + 0xc]
mov esi, eax
call fcn.10129010
mov esi, dword [esp + 0x84]
mov dword [esp + 0x14], eax
jmp 0x101cfbd7
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
push eax
push ecx
lea eax, [esp + 0x54]
call fcn.1016f7e0
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [edx + 0xc]
push ecx
push eax
mov eax, dword [esp + 0x24]
call fcn.101953f0
add esp, 0x18
cmp dword [esp + 0x10], 1
jne 0x101cfc3c
cmp dword [esp + 0x14], ebx
je 0x101cfc55
mov ecx, dword [esp + 0xc]
mov al, byte [ecx + 0x13]
cmp al, 8
jae 0x101cfc55
mov ecx, dword [esp + 0x14]
movzx edx, al
mov eax, dword [esp + 0xc]
mov dword [eax + edx*4 + 0x94], ecx
inc byte [eax + 0x13]
jmp 0x101cfc55
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
cmp edx, dword [eax + 0x1c]
jle 0x101cfc55
mov ecx, edx
mov edx, dword [esp + 0x14]
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x20], edx
mov ecx, dword [esp + 0x2c]
cmp ecx, ebx
je 0x101cfc9c
mov eax, dword [edi + 0x6c]
cmp dword [edi + 0x70], eax
jg 0x101cfc78
push ebx
mov eax, ecx
push eax
push ebx
push 0xb
mov eax, edi
call fcn.1015b8e0
add esp, 0x10
jmp 0x101cfc9c
lea edx, [eax + 1]
mov dword [edi + 0x6c], edx
mov edx, dword [edi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax], 0xb
mov dword [eax + 0x14], ebx
mov eax, dword [edi + 0xc]
mov edx, dword [eax + 0x3c]
add edx, dword [eax + 0x38]
mov ecx, dword [esp + 0x18]
not ecx
jns 0x101cfcbb
push ecx
push edi
mov edi, eax
call fcn.1015b870
add esp, 8
jmp 0x101cfcc4
mov eax, dword [eax + 0x40]
mov edx, dword [edi + 0x6c]
mov dword [eax + ecx*4], edx
cmp dword [esp + 0x40], ebx
je 0x101cfcd5
mov eax, dword [esp + 0x34]
mov edx, esi
call fcn.10129df0
mov edi, dword [esi + 0xc]
mov ecx, dword [edi + 0x3c]
add ecx, dword [edi + 0x38]
mov eax, dword [esp + 0x8c]
not eax
jns 0x101cfcf5
push eax
push esi
call fcn.1015b870
add esp, 8
jmp 0x101cfcfe
mov edx, dword [edi + 0x40]
mov ecx, dword [esi + 0x6c]
mov dword [edx + eax*4], ecx
mov edx, dword [ebp + 0xc]
push edx
call fcn.10169b60
mov edi, dword [esp + 0x34]
add esp, 4
cmp dword [edi + 8], ebx
je 0x101cfd5a
mov eax, dword [esp + 0x90]
push ebx
push eax
push ebx
push 0x45
push esi
call fcn.1015e0f0
mov ecx, dword [esi + 0x6c]
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x9c]
add esp, 0x14
cmp eax, ebx
jge 0x101cfd40
lea eax, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], bl
je 0x101cfd4e
mov eax, 0x10299328
jmp 0x101cfd57
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x80]
push ebx
push ebx
push eax
push 0x25
push esi
call fcn.1015e0f0
add esp, 0x14
cmp byte [edi + 0x12], 0x58
mov dword [esp + 0x88], eax
jne 0x101cfdd2
cmp byte [edi + 0x11], 0x58
jne 0x101cfd8f
cmp byte [edi + 0x10], 0x59
jne 0x101cfd8f
mov edi, 1
jmp 0x101cfd91
xor edi, edi
mov ecx, dword [esp + 0x40]
push ebx
push ecx
push 3
lea eax, [esp + 0x58]
call fcn.101c7ee0
add esp, 0xc
cmp edi, ebx
je 0x101cfdbd
mov edx, dword [esp + 0x1c]
push ebx
push edx
push 2
lea eax, [esp + 0x58]
call fcn.101c7ee0
add esp, 0xc
push ebx
push ebx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
add esp, 0xc
jmp 0x101cff9d
cmp byte [edi + 0x11], 0x56
push ebx
push ebx
lea eax, [esp + 0x54]
push 3
jne 0x101cff2f
call fcn.101c7ee0
add esp, 0xc
cmp byte [edi + 0x10], 0x59
push 1
jne 0x101cfe27
mov eax, dword [esi + 0x6c]
mov ecx, dword [esp + 0x20]
push ecx
mov dword [esp + 0x88], eax
push 2
lea eax, [esp + 0x58]
call fcn.101c7ee0
add esp, 0xc
push 1
mov dword [esp + 0x2c], eax
push ebx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov edi, eax
jmp 0x101cfe86
cmp byte [edi + 0x12], 0x5a
jne 0x101cfe51
mov eax, dword [esp + 0x20]
mov edx, dword [esi + 0x6c]
push eax
push 1
lea eax, [esp + 0x58]
mov dword [esp + 0x8c], edx
call fcn.101c7ee0
add esp, 0xc
push 1
mov edi, eax
push ebx
jmp 0x101cfe77
mov edx, dword [esp + 0x44]
mov ecx, dword [esi + 0x6c]
push edx
push 1
lea eax, [esp + 0x58]
mov dword [esp + 0x8c], ecx
call fcn.101c7ee0
add esp, 0xc
mov edi, eax
mov eax, dword [esp + 0x1c]
push 1
push eax
push 2
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x8c]
add esp, 0xc
push ebx
push ecx
push ebx
push 0xb
push esi
call fcn.1015e0f0
mov ecx, dword [esp + 0x3c]
mov eax, dword [esi + 0x6c]
add esp, 0x14
cmp ecx, ebx
jge 0x101cfeac
lea ecx, [eax - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], bl
je 0x101cfeba
mov ecx, 0x10299328
jmp 0x101cfec3
mov edx, dword [esi + 0x68]
lea ecx, [ecx + ecx*2]
lea ecx, [edx + ecx*8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x6c]
push 1
mov dword [esp + 0x84], eax
push ebx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov ecx, dword [esp + 0x8c]
add esp, 0xc
push ebx
push ecx
push ebx
push 0xb
push esi
mov dword [esp + 0x58], eax
call fcn.1015e0f0
mov eax, dword [esi + 0x6c]
add esp, 0x14
cmp edi, ebx
jge 0x101cff04
lea edi, [eax - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], bl
je 0x101cff1b
mov ecx, 0x10299328
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x44]
cmp eax, ebx
jmp 0x101cff7b
mov edx, dword [esi + 0x68]
lea ecx, [edi + edi*2]
lea ecx, [edx + ecx*8]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x44]
cmp eax, ebx
jmp 0x101cff7b
call fcn.101c7ee0
mov eax, dword [esi + 0x6c]
add esp, 0xc
push 1
mov dword [esp + 0x48], eax
push ebx
push 1
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov ecx, dword [esp + 0x28]
add esp, 0xc
push ebx
push ecx
mov edi, eax
push 2
lea eax, [esp + 0x58]
call fcn.101c7ee0
mov edx, dword [esp + 0x50]
add esp, 0xc
push ebx
push edx
push ebx
push 0xb
push esi
call fcn.1015e0f0
add esp, 0x14
mov eax, edi
cmp edi, ebx
mov ecx, dword [esi + 0x6c]
jge 0x101cff83
lea eax, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], bl
je 0x101cff91
mov eax, 0x10299328
jmp 0x101cff9a
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x88]
mov ecx, dword [esi + 0x6c]
cmp eax, ebx
jge 0x101cffae
lea eax, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], bl
je 0x101cffbc
mov eax, 0x10299328
jmp 0x101cffc5
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
push ebx
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x74]
push ebx
push eax
push 0x8a
push esi
call fcn.1015e0f0
mov edi, dword [esp + 0x44]
add esp, 0x14
cmp dword [edi + 8], ebx
je 0x101d004d
mov eax, dword [edi + 0x58]
cmp eax, ebx
je 0x101d000d
push ebx
push eax
push 1
push 0x45
push esi
call fcn.1015e0f0
mov ecx, dword [edi + 0x5c]
add esp, 0x14
push ebx
push ecx
push ebx
push 0x45
push esi
call fcn.1015e0f0
add esp, 0x14
mov eax, dword [esp + 0x94]
mov ecx, dword [esi + 0x6c]
cmp eax, ebx
jge 0x101d001e
lea eax, [ecx - 1]
mov edx, dword [esi]
cmp byte [edx + 0x51], bl
je 0x101d002c
mov eax, 0x10299328
jmp 0x101d0035
mov edx, dword [esi + 0x68]
lea eax, [eax + eax*2]
lea eax, [edx + eax*8]
push ebx
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x94]
push ebx
push eax
push 0x41
push esi
call fcn.1015e0f0
add esp, 0x14
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret