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

Disassembly:
sub esp, 0x148
mov eax, dword [0x101cf40c]
xor eax, esp
mov dword [esp + 0x144], eax
push ebx
push esi
mov esi, ecx
mov eax, dword [esi + 4]
push edi
mov dword [esp + 0x48], esi
mov dword [esp + 0xf0], eax
mov dh, dh
mov ebx, dword [esi]
mov dword [esp + 0xe8], ebx
push ebx
pop ebx
mov dh, dh
mov ecx, dword [esi + 0x44]
mov dword [esp + 0x40], ecx
push ebx
pop ebx
mov edx, dword [esi + 0x58]
mov dword [esp + 0xf4], edx
nop
mov eax, dword [esi + 0x50]
mov dword [esp + 0xd4], eax
push ebx
pop ebx
mov ecx, dword [esi + 0x54]
mov dword [esp + 0xec], ecx
mov dh, dh
mov eax, eax
fld qword [esi + 0x160]
fstp qword [esp + 0xf8]
mov dl, dl
mov edx, dword [esi + 0x48]
mov dword [esp + 0xdc], edx
mov ch, ch
mov eax, dword [esi + 0x4c]
mov dword [esp + 0xd8], eax
mov cl, cl
mov ecx, dword [esi + 0x168]
mov dword [esp + 0xe0], ecx
mov bh, bh
push 0x101839c8
push 0x101839c8
call fcn.1000d190
nop
mov dl, dl
mov ch, ch
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0xc]
mov dword [esp + 0x88], edi
jg 0x1008ad29
push ebp
jmp 0x100885b7
mov ebx, dword [esp + 0xec]
cmp dword [esi + 0x16c], 0
jne 0x1008ad28
mov ecx, dword [esi + 0x24]
imul ecx, dword [esp + 0x44]
mov edx, dword [esp + 0xf0]
mov eax, dword [esp + 0xd8]
push ecx
push edx
push eax
call fcn.10119900
add esp, 0xc
mov ch, ch
mov ch, ch
mov dword [esp + 0x38], 0
mov ebx, ebx
mov bl, bl
mov edi, edi
lea ebp, [ebx + 0x3264]
push 0x3e8
push ebp
call fcn.10055e40
add esp, 8
mov ah, ah
test edi, edi
jl 0x1008ad41
mov eax, dword [esp + 0xf4]
cmp edi, dword [eax + 8]
jge 0x1008ad41
mov ecx, dword [eax + 4]
mov edx, dword [esi + 0x10]
mov edi, dword [ecx + edi*4]
push 0
push edx
lea eax, [esp + 0x50]
push eax
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0xa0]
push edx
push edi
push ebx
call fcn.100780b0
add esp, 0x1c
test eax, eax
push ebp
jne 0x10088661
call fcn.10055ed0
add esp, 4
mov ecx, ecx
jmp 0x1008ad0a
call fcn.10055ed0
add esp, 4
mov dh, dh
mov eax, dword [esp + 0x38]
mov dword [esp + 0xe8], eax
mov eax, eax
mov ebp, dword [esp + 0x94]
cmp ebp, dword [esi + 0x20]
jg 0x1008acf0
mov edi, dword [esp + 0x98]
cmp edi, dword [esi + 0x24]
jg 0x1008acf0
cmp dword [esi + 0x18], 0
jne 0x100886db
test edi, edi
jle 0x100887a9
mov edx, eax
mov esi, edi
mov edi, dword [esp + 0x48]
add edx, 3
test ebp, ebp
jle 0x100886cf
mov eax, edx
mov ecx, ebp
lea esp, [esp]
mov bl, bl
mov byte [eax], 0
mov dl, dl
add eax, 4
sub ecx, 1
jne 0x100886c0
add edx, edi
sub esi, 1
jne 0x100886b1
jmp 0x100887a9
mov eax, edi
imul eax, dword [esp + 0x48]
push eax
call fcn.1011741c
add esp, 4
mov dword [esp + 0x38], eax
mov esi, esi
test eax, eax
jne 0x1008871d
cmp dword [esi + 0x10], eax
jne 0x10088706
cmp dword [ebx + 0x32fc], eax
jne 0x1008ad0a
mov ecx, dword [esp + 0xe8]
push ecx
call fcn.101174df
add esp, 4
mov bh, bh
jmp 0x1008ad0a
test edi, edi
jle 0x100887a9
mov eax, dword [esp + 0xe8]
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x98]
add eax, 1
mov dword [esp + 0x74], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], ecx
test ebp, ebp
jle 0x10088796
mov esi, dword [esp + 0x74]
mov ecx, dword [esp + 0x30]
mov ebx, ebp
push ebx
pop ebx
mov ecx, ecx
movzx eax, byte [ecx + 1]
push ebx
pop ebx
movzx edx, byte [ecx]
mov esi, esi
movzx edi, byte [ecx - 1]
mov ebx, ebx
add edi, edx
add edi, eax
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
push ebx
pop ebx
movzx eax, dl
mov edx, eax
shl edx, 8
or edx, eax
shl edx, 8
or edx, eax
mov dword [esi], edx
mov eax, eax
add ecx, 4
add esi, 4
sub ebx, 1
jne 0x10088754
mov eax, dword [esp + 0x48]
add dword [esp + 0x74], eax
add dword [esp + 0x30], eax
sub dword [esp + 0x14], 1
jne 0x10088746
fld1
fsub qword [esp + 0xfc]
fnstcw word [esp + 0x18]
fmul qword [0x10183930]
movzx eax, word [esp + 0x18]
or eax, 0xc00
mov dword [esp + 0x14], eax
fldcw word [esp + 0x14]
fistp qword [esp + 0x50]
mov esi, dword [esp + 0x50]
mov dword [esp + 0x74], esi
fldcw word [esp + 0x18]
push eax
pop eax
mov eax, eax
mov eax, eax
mov al, al
xor ebx, ebx
mov dword [esp + 0x10], ebx
push ebx
pop ebx
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x50]
add eax, 0x5c
push 0x101838c0
push eax
call fcn.10119fed
add esp, 0xc
mov ebx, ebx
movzx eax, byte [esp + 0x12]
add eax, esi
mov dword [esp + 0x34], eax
mov esi, esi
movzx eax, byte [esp + 0x11]
add eax, esi
mov dword [esp + 0x18], eax
mov ch, ch
mov eax, dword [esp + 0x10]
and eax, 0xff
add eax, esi
mov dword [esp + 0x20], eax
nop
mov cl, cl
mov al, al
mov eax, eax
push edx
pop edx
mov cl, cl
mov dword [esp + 0xbc], ebx
mov dword [esp + 0xd4], ebx
push ebx
pop ebx
lea ecx, [ebp - 1]
mov dword [esp + 0xcc], ecx
mov dl, dl
mov dword [esp + 0xc4], ebx
mov ah, ah
mov dword [esp + 0xc0], ebx
mov bl, bl
mov esi, dword [esp + 0x98]
lea eax, [esi - 1]
mov dword [esp + 0xb8], eax
push ebx
pop ebx
mov dword [esp + 0xd0], ecx
mov ebp, ebp
mov dword [esp + 0xc8], eax
mov bh, bh
mov edi, dword [esp + 0x38]
mov ecx, dword [edi]
mov dword [esp + 0x68], ecx
mov ah, ah
mov edx, dword [edi + ebp*4 - 4]
mov dword [esp + 0x5c], edx
mov ah, ah
lea eax, [esi - 1]
imul eax, dword [esp + 0x48]
mov esi, dword [eax + edi]
mov dword [esp + 0x60], esi
mov bh, bh
lea eax, [eax + ebp*4]
mov eax, dword [eax + edi - 4]
mov dword [esp + 0x64], eax
mov ebx, ebx
mov dword [esp + 0x6c], ebx
mov bh, bh
mov dword [esp + 0x70], ecx
mov dh, dh
cmp ecx, edx
jne 0x10088a8e
cmp edx, esi
jne 0x10088a8e
cmp esi, eax
jne 0x10088a8e
mov dword [esp + 0x6c], 1
mov ecx, ecx
mov edi, dword [esp + 0x98]
xor edx, edx
cmp edi, ebx
jle 0x10088955
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x14], ecx
xor eax, eax
cmp ebp, ebx
jle 0x10088942
mov esi, dword [esp + 0x70]
mov edx, edx
cmp dword [ecx], esi
jne 0x10088924
add eax, 1
add ecx, 4
cmp eax, ebp
jl 0x10088912
jmp 0x10088942
mov ecx, dword [ecx]
mov dword [esp + 0x68], ecx
mov dh, dh
mov dword [esp + 0xd4], eax
mov eax, eax
mov dword [esp + 0xbc], edx
mov eax, eax
cmp eax, ebp
jl 0x10088955
mov ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x48]
add edx, 1
cmp edx, edi
mov dword [esp + 0x14], ecx
jl 0x10088908
xor edx, edx
cmp edi, ebx
jle 0x100889bd
xor esi, esi
lea ecx, [ecx]
lea eax, [ebp - 1]
cmp eax, ebx
jl 0x100889a9
mov edi, dword [esp + 0x70]
lea ecx, [esi + eax*4]
add ecx, dword [esp + 0x38]
mov dh, dh
cmp dword [ecx], edi
jne 0x10088984
sub eax, 1
sub ecx, 4
cmp eax, ebx
jge 0x10088972
jmp 0x100889a2
mov ecx, dword [ecx]
mov dword [esp + 0x5c], ecx
mov bl, bl
mov dword [esp + 0xcc], eax
mov cl, cl
mov dword [esp + 0xc4], edx
mov bh, bh
cmp eax, ebx
jge 0x100889b6
mov edi, dword [esp + 0x98]
add esi, dword [esp + 0x48]
add edx, 1
cmp edx, edi
jl 0x10088960
jmp 0x100889bd
mov edi, dword [esp + 0x98]
lea edx, [edi - 1]
cmp edx, ebx
jl 0x10088a20
mov eax, dword [esp + 0x48]
mov esi, edx
imul esi, eax
mov edi, eax
neg edi
add esi, dword [esp + 0x38]
xor eax, eax
cmp ebp, ebx
jle 0x10088a13
mov ebx, dword [esp + 0x70]
mov ecx, esi
mov edi, edi
cmp dword [ecx], ebx
jne 0x100889f3
add eax, 1
add ecx, 4
cmp eax, ebp
jl 0x100889e1
jmp 0x10088a11
mov ecx, dword [ecx]
mov dword [esp + 0x60], ecx
push edx
pop edx
mov dword [esp + 0xc0], eax
mov edx, edx
mov dword [esp + 0xb8], edx
mov ebx, ebx
cmp eax, ebp
jl 0x10088a1e
xor ebx, ebx
sub edx, 1
add esi, edi
cmp edx, ebx
jge 0x100889d5
jmp 0x10088a20
xor ebx, ebx
mov edx, dword [esp + 0x98]
add edx, 0xffffffff
cmp edx, ebx
jl 0x10088a8e
mov edi, dword [esp + 0x48]
add ebp, 0xffffffff
mov esi, edx
imul esi, edi
mov dword [esp + 0x14], ebp
neg edi
mov eax, dword [esp + 0x14]
cmp eax, ebx
jl 0x10088a85
mov ecx, dword [esp + 0x38]
mov ebp, dword [esp + 0x70]
lea ecx, [ecx + eax*4]
add ecx, esi
mov eax, eax
cmp dword [ecx], ebp
jne 0x10088a67
sub eax, 1
sub ecx, 4
cmp eax, ebx
jge 0x10088a55
jmp 0x10088a85
mov ecx, dword [ecx]
mov dword [esp + 0x64], ecx
mov eax, eax
mov dword [esp + 0xd0], eax
mov bh, bh
mov dword [esp + 0xc8], edx
mov ebx, ebx
cmp eax, ebx
jge 0x10088a8e
sub edx, 1
add esi, edi
cmp edx, ebx
jge 0x10088a40
mov eax, dword [esp + 0xf8]
cmp eax, ebx
jne 0x1008933e
mov edx, dword [esp + 0x4c]
mov eax, dword [edx + 0x24]
sub eax, dword [esp + 0x98]
mov dword [esp + 0x40], ebx
js 0x1008acad
jmp 0x10088ac0
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx + 0x20]
sub edx, dword [esp + 0x94]
mov dword [esp + 0x3c], 0
js 0x10089318
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
imul ecx, eax
mov edx, dword [esp + 0xd4]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0xbc]
imul ecx, eax
lea ecx, [ecx + edx*4]
mov edx, dword [esp + 0xc4]
imul edx, eax
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0xcc]
lea edx, [edx + ecx*4]
mov ecx, dword [esp + 0xb8]
imul ecx, eax
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0xc0]
lea ecx, [ecx + edx*4]
mov edx, dword [esp + 0xc8]
imul edx, eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x78], ecx
lea ecx, [edx + eax*4]
mov dword [esp + 0x7c], ecx
jmp 0x10088b60
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x3c]
lea ecx, [edx + eax*4]
add ecx, dword [esp + 0xd8]
mov dword [esp + 0x30], ecx
mov edx, edx
mov ebx, ebx
mov edx, dword [esp + 0x84]
mov eax, dword [ecx + edx]
mov al, al
mov edx, dword [esp + 0x80]
mov edx, dword [ecx + edx]
mov esi, esi
mov esi, dword [esp + 0x78]
mov ebx, dword [ecx + esi]
mov cl, cl
mov esi, dword [esp + 0x7c]
mov ecx, dword [ecx + esi]
mov dword [esp + 0x50], ecx
xchg ebx, eax
xchg ebx, eax
test eax, 0xff000000
jne 0x100892f7
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov ebx, ebx
movzx ebp, ah
mov bl, bl
and eax, 0xff
mov dword [esp + 0x14], eax
mov edx, edx
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0x58], eax
mov ch, ch
mov eax, dword [esp + 0x68]
movzx esi, ah
mov dword [esp + 0x24], esi
push eax
pop eax
mov edi, eax
and edi, 0xff
mov cl, cl
mov esi, ecx
sub esi, dword [esp + 0x34]
mov eax, 0
sets al
sub eax, 1
and eax, esi
mov dword [esp + 0x28], eax
mov ah, ah
mov esi, ebp
sub esi, dword [esp + 0x18]
mov eax, 0
sets al
sub eax, 1
and eax, esi
mov dword [esp + 0x2c], eax
mov esi, esi
mov esi, dword [esp + 0x14]
sub esi, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and esi, eax
mov ebx, ebx
mov eax, dword [esp + 0x34]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10088c62
mov dword [esp + 0x1c], ecx
mov bl, bl
mov ecx, dword [esp + 0x18]
add ebp, ecx
cmp ebp, 0xff
mov ecx, 0xff
jg 0x10088c79
mov ecx, ebp
mov bl, bl
mov ebp, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
add eax, ebp
cmp eax, 0xff
mov ebp, 0xff
jg 0x10088c93
mov ebp, eax
mov esi, esi
mov eax, dword [esp + 0x58]
cmp eax, dword [esp + 0x28]
jl 0x100892f7
cmp eax, dword [esp + 0x1c]
jg 0x100892f7
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x2c]
jl 0x100892f7
cmp eax, ecx
jg 0x100892f7
cmp edi, esi
jl 0x100892f7
cmp edi, ebp
jg 0x100892f7
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx ebp, dh
mov bl, bl
and edx, 0xff
mov edx, edx
movzx ecx, byte [esp + 0x5e]
mov dword [esp + 0x2c], ecx
mov ch, ch
mov ecx, dword [esp + 0x5c]
movzx esi, ch
mov dword [esp + 0x28], esi
push eax
pop eax
mov edi, ecx
and edi, 0xff
mov cl, cl
mov esi, eax
sub esi, dword [esp + 0x34]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov dword [esp + 0x24], ecx
mov ah, ah
mov esi, ebp
sub esi, dword [esp + 0x18]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov dword [esp + 0x58], ecx
mov esi, esi
mov esi, edx
sub esi, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov ebx, ebx
mov esi, dword [esp + 0x34]
add eax, esi
cmp eax, 0xff
jle 0x10088d71
mov eax, 0xff
mov bl, bl
mov esi, dword [esp + 0x18]
add ebp, esi
cmp ebp, 0xff
jle 0x10088d86
mov ebp, 0xff
mov bl, bl
mov esi, dword [esp + 0x20]
add edx, esi
cmp edx, 0xff
jle 0x10088d9b
mov edx, 0xff
mov esi, esi
mov esi, dword [esp + 0x2c]
cmp esi, dword [esp + 0x24]
jl 0x100892f7
cmp esi, eax
jg 0x100892f7
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x58]
jl 0x100892f7
cmp eax, ebp
jg 0x100892f7
cmp edi, ecx
jl 0x100892f7
cmp edi, edx
jg 0x100892f7
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx edi, bh
mov bl, bl
and ebx, 0xff
mov edx, edx
movzx edx, byte [esp + 0x62]
mov dword [esp + 0x2c], edx
mov ch, ch
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x28], edx
push eax
pop eax
mov esi, ecx
and esi, 0xff
mov cl, cl
mov ebp, dword [esp + 0x34]
mov ecx, eax
sub ecx, ebp
mov edx, 0
sets dl
sub edx, 1
and edx, ecx
mov dword [esp + 0x24], edx
mov ah, ah
mov ecx, edi
sub ecx, dword [esp + 0x18]
mov edx, 0
sets dl
sub edx, 1
and edx, ecx
mov dword [esp + 0x58], edx
mov esi, esi
mov ecx, ebx
sub ecx, dword [esp + 0x20]
mov edx, 0
sets dl
sub edx, 1
and ecx, edx
mov ebx, ebx
add eax, ebp
cmp eax, 0xff
jle 0x10088e75
mov eax, 0xff
mov bl, bl
mov edx, dword [esp + 0x18]
add edi, edx
cmp edi, 0xff
jle 0x10088e8a
mov edi, 0xff
mov bl, bl
mov edx, dword [esp + 0x20]
add ebx, edx
cmp ebx, 0xff
jle 0x10088e9f
mov ebx, 0xff
mov esi, esi
mov edx, dword [esp + 0x2c]
cmp edx, dword [esp + 0x24]
jl 0x100892f7
cmp edx, eax
jg 0x100892f7
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x58]
jl 0x100892f7
cmp eax, edi
jg 0x100892f7
cmp esi, ecx
jl 0x100892f7
cmp esi, ebx
jg 0x100892f7
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov ecx, dword [esp + 0x50]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx edi, ch
mov bl, bl
and ecx, 0xff
mov edx, edx
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x50], edx
mov ch, ch
mov edx, dword [esp + 0x64]
movzx esi, dh
mov dword [esp + 0x24], esi
push eax
pop eax
mov esi, edx
and esi, 0xff
mov cl, cl
mov edx, eax
sub edx, ebp
mov ebx, 0
sets bl
sub ebx, 1
and ebx, edx
mov dword [esp + 0x2c], ebx
mov ah, ah
mov edx, edi
sub edx, dword [esp + 0x18]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, edx
mov dword [esp + 0x28], ebx
mov esi, esi
mov edx, ecx
sub edx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and edx, ebx
mov ebx, ebx
add eax, ebp
cmp eax, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10088f80
mov dword [esp + 0x14], eax
mov bl, bl
mov eax, dword [esp + 0x18]
add edi, eax
cmp edi, 0xff
jle 0x10088f95
mov edi, 0xff
mov bl, bl
mov eax, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
jle 0x10088faa
mov ecx, 0xff
mov esi, esi
mov ebx, dword [esp + 0x50]
cmp ebx, dword [esp + 0x2c]
jl 0x100892f7
cmp ebx, dword [esp + 0x14]
jg 0x100892f7
mov ebx, dword [esp + 0x24]
cmp ebx, dword [esp + 0x28]
jl 0x100892f7
cmp ebx, edi
jg 0x100892f7
cmp esi, edx
jl 0x100892f7
cmp esi, ecx
jg 0x100892f7
mov ebp, ebp
xor ecx, ecx
cmp dword [esp + 0x74], ecx
jne 0x100890f4
cmp dword [esp + 0x6c], ecx
jne 0x100890f4
cmp ebp, ecx
jne 0x100890f4
cmp dword [esp + 0x18], ecx
jne 0x100890f4
cmp eax, ecx
jne 0x100890f4
cmp dword [esp + 0x98], ecx
mov dword [esp + 0x1c], ecx
jle 0x10089182
mov ebp, dword [esp + 0x30]
mov edi, dword [esp + 0x38]
mov bh, bh
mov eax, dword [esp + 0x94]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, edi
mov edx, ebp
jb 0x10089064
jmp 0x10089050
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10089068
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10089050
test eax, eax
je 0x100890c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x100890b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100890c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x100890b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100890c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x100890b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100890c5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x100890c5
test esi, esi
mov eax, 1
jg 0x100890c7
or eax, 0xffffffff
jmp 0x100890c7
xor eax, eax
test eax, eax
jne 0x10089182
mov eax, dword [esp + 0x1c]
add edi, dword [esp + 0x48]
add ebp, dword [esp + 0x44]
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
jl 0x10089035
jmp 0x10089182
cmp dword [esp + 0x98], ecx
mov dword [esp + 0x1c], ecx
jle 0x10089182
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x14], edx
mov ch, ch
xor esi, esi
cmp dword [esp + 0x94], esi
jle 0x10089162
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [ebx + esi*4]
push edx
mov edx, dword [edi]
push eax
push ebp
call fcn.10060370
add esp, 0x14
test eax, eax
je 0x10089159
add esi, 1
add edi, 4
cmp esi, dword [esp + 0x94]
jl 0x10089122
jmp 0x10089162
cmp esi, dword [esp + 0x94]
jl 0x10089182
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x44]
add ebx, dword [esp + 0x48]
add dword [esp + 0x14], ecx
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
jl 0x10089111
mov edi, dword [esp + 0x98]
cmp dword [esp + 0x1c], edi
jne 0x100892f7
xor eax, eax
mov byte [esp + 0x104], 0
mov dword [esp + 0x105], eax
mov dword [esp + 0x109], eax
mov dword [esp + 0x10d], eax
mov dword [esp + 0x111], eax
mov dword [esp + 0x115], eax
mov dword [esp + 0x119], eax
mov dword [esp + 0x11d], eax
mov word [esp + 0x121], ax
mov byte [esp + 0x123], al
mov ecx, ecx
mov ch, ch
mov ah, ah
mov byte [esp + 0x148], 0x25
mov byte [esp + 0x149], 0x64
mov byte [esp + 0x14a], 0x2c
mov byte [esp + 0x14b], 0x25
mov byte [esp + 0x14c], 0x64
mov byte [esp + 0x14d], 0x2c
mov byte [esp + 0x14e], 0x25
mov byte [esp + 0x14f], 0x64
mov byte [esp + 0x150], al
mov edx, edx
mov eax, dword [esp + 0xdc]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
add edx, eax
mov eax, dword [esp + 0x8c]
push edx
mov edx, dword [esp + 0xe4]
add ecx, edx
push ecx
push eax
lea ecx, [esp + 0x154]
push ecx
lea edx, [esp + 0x114]
push edx
call fcn.10119290
add esp, 0x14
mov esi, esi
mov esi, dword [esp + 0xe4]
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0x14]
je 0x1008928c
push 0x10183571
push 0x10183570
mov ecx, esi
call fcn.1000a280
mov bl, bl
lea eax, [esp + 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10089296
sub eax, edx
lea ecx, [esp + eax + 0x104]
push ecx
lea edx, [esp + 0x108]
push edx
mov ecx, esi
call fcn.1000a280
mov dl, dl
mov bh, bh
xchg ebx, eax
xchg ebx, eax
test edi, edi
jle 0x100892f7
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x44]
mov esi, edi
mov edi, dword [esp + 0x94]
test edi, edi
jle 0x100892f0
mov eax, edx
mov ecx, edi
jmp 0x100892e0
mov dword [eax], 0xff000000
push edx
pop edx
add eax, 4
sub ecx, 1
jne 0x100892e0
add edx, ebx
sub esi, 1
jne 0x100892d3
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x3c]
mov edx, dword [ecx + 0x20]
sub edx, dword [esp + 0x94]
add eax, 1
cmp eax, edx
mov dword [esp + 0x3c], eax
jle 0x10088b60
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x40]
mov edx, dword [ecx + 0x24]
sub edx, dword [esp + 0x98]
add eax, 1
cmp eax, edx
mov dword [esp + 0x40], eax
jle 0x10088ac0
jmp 0x1008acad
cmp eax, 1
jne 0x10089bc8
mov eax, dword [esp + 0x4c]
mov eax, dword [eax + 0x24]
sub eax, dword [esp + 0x98]
mov dword [esp + 0x40], eax
js 0x1008acad
nop
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx + 0x20]
sub edx, dword [esp + 0x94]
mov dword [esp + 0x3c], 0
js 0x10089bb8
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
imul ecx, eax
mov edx, dword [esp + 0xd4]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0xbc]
imul ecx, eax
lea ecx, [ecx + edx*4]
mov edx, dword [esp + 0xc4]
imul edx, eax
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0xcc]
lea edx, [edx + ecx*4]
mov ecx, dword [esp + 0xb8]
imul ecx, eax
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0xc0]
lea ecx, [ecx + edx*4]
mov edx, dword [esp + 0xc8]
imul edx, eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x78], ecx
lea ecx, [edx + eax*4]
mov dword [esp + 0x7c], ecx
jmp 0x10089400
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x3c]
lea ecx, [edx + eax*4]
add ecx, dword [esp + 0xd8]
mov dword [esp + 0x30], ecx
mov dl, dl
mov ch, ch
mov edx, dword [esp + 0x84]
mov eax, dword [ecx + edx]
push ecx
pop ecx
mov edx, dword [esp + 0x80]
mov edx, dword [ecx + edx]
mov ebx, ebx
mov esi, dword [esp + 0x78]
mov ebx, dword [ecx + esi]
mov cl, cl
mov esi, dword [esp + 0x7c]
mov ecx, dword [ecx + esi]
mov dword [esp + 0x58], ecx
push eax
pop eax
test eax, 0xff000000
jne 0x10089b97
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov ebx, ebx
movzx ebp, ah
mov bl, bl
and eax, 0xff
mov dword [esp + 0x14], eax
mov edx, edx
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0x50], eax
mov ch, ch
mov eax, dword [esp + 0x68]
movzx esi, ah
mov dword [esp + 0x24], esi
push eax
pop eax
mov edi, eax
and edi, 0xff
mov cl, cl
mov esi, ecx
sub esi, dword [esp + 0x34]
mov eax, 0
sets al
sub eax, 1
and eax, esi
mov dword [esp + 0x2c], eax
mov ah, ah
mov esi, ebp
sub esi, dword [esp + 0x18]
mov eax, 0
sets al
sub eax, 1
and eax, esi
mov dword [esp + 0x28], eax
mov esi, esi
mov esi, dword [esp + 0x14]
sub esi, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and esi, eax
mov ebx, ebx
mov eax, dword [esp + 0x34]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10089502
mov dword [esp + 0x1c], ecx
mov bl, bl
mov ecx, dword [esp + 0x18]
add ebp, ecx
cmp ebp, 0xff
mov ecx, 0xff
jg 0x10089519
mov ecx, ebp
mov bl, bl
mov ebp, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
add eax, ebp
cmp eax, 0xff
mov ebp, 0xff
jg 0x10089533
mov ebp, eax
mov esi, esi
mov eax, dword [esp + 0x50]
cmp eax, dword [esp + 0x2c]
jl 0x10089b97
cmp eax, dword [esp + 0x1c]
jg 0x10089b97
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x10089b97
cmp eax, ecx
jg 0x10089b97
cmp edi, esi
jl 0x10089b97
cmp edi, ebp
jg 0x10089b97
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx ebp, dh
mov bl, bl
and edx, 0xff
mov edx, edx
movzx ecx, byte [esp + 0x5e]
mov dword [esp + 0x50], ecx
mov ch, ch
mov ecx, dword [esp + 0x5c]
movzx esi, ch
mov dword [esp + 0x24], esi
push eax
pop eax
mov edi, ecx
and edi, 0xff
mov cl, cl
mov esi, eax
sub esi, dword [esp + 0x34]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov dword [esp + 0x2c], ecx
mov ah, ah
mov esi, ebp
sub esi, dword [esp + 0x18]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov dword [esp + 0x28], ecx
mov esi, esi
mov esi, edx
sub esi, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov ebx, ebx
mov esi, dword [esp + 0x34]
add eax, esi
cmp eax, 0xff
jle 0x10089611
mov eax, 0xff
mov bl, bl
mov esi, dword [esp + 0x18]
add ebp, esi
cmp ebp, 0xff
jle 0x10089626
mov ebp, 0xff
mov bl, bl
mov esi, dword [esp + 0x20]
add edx, esi
cmp edx, 0xff
jle 0x1008963b
mov edx, 0xff
mov esi, esi
mov esi, dword [esp + 0x50]
cmp esi, dword [esp + 0x2c]
jl 0x10089b97
cmp esi, eax
jg 0x10089b97
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x10089b97
cmp eax, ebp
jg 0x10089b97
cmp edi, ecx
jl 0x10089b97
cmp edi, edx
jg 0x10089b97
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx edi, bh
mov bl, bl
and ebx, 0xff
mov edx, edx
movzx edx, byte [esp + 0x62]
mov dword [esp + 0x50], edx
mov ch, ch
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x24], edx
push eax
pop eax
mov esi, ecx
and esi, 0xff
mov cl, cl
mov ebp, dword [esp + 0x34]
mov ecx, eax
sub ecx, ebp
mov edx, 0
sets dl
sub edx, 1
and edx, ecx
mov dword [esp + 0x2c], edx
mov ah, ah
mov ecx, edi
sub ecx, dword [esp + 0x18]
mov edx, 0
sets dl
sub edx, 1
and edx, ecx
mov dword [esp + 0x28], edx
mov esi, esi
mov ecx, ebx
sub ecx, dword [esp + 0x20]
mov edx, 0
sets dl
sub edx, 1
and ecx, edx
mov ebx, ebx
add eax, ebp
cmp eax, 0xff
jle 0x10089715
mov eax, 0xff
mov bl, bl
mov edx, dword [esp + 0x18]
add edi, edx
cmp edi, 0xff
jle 0x1008972a
mov edi, 0xff
mov bl, bl
mov edx, dword [esp + 0x20]
add ebx, edx
cmp ebx, 0xff
jle 0x1008973f
mov ebx, 0xff
mov esi, esi
mov edx, dword [esp + 0x50]
cmp edx, dword [esp + 0x2c]
jl 0x10089b97
cmp edx, eax
jg 0x10089b97
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x10089b97
cmp eax, edi
jg 0x10089b97
cmp esi, ecx
jl 0x10089b97
cmp esi, ebx
jg 0x10089b97
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov ecx, dword [esp + 0x58]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx edi, ch
mov bl, bl
and ecx, 0xff
mov edx, edx
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x50], edx
mov ch, ch
mov edx, dword [esp + 0x64]
movzx esi, dh
mov dword [esp + 0x24], esi
push eax
pop eax
mov esi, edx
and esi, 0xff
mov cl, cl
mov edx, eax
sub edx, ebp
mov ebx, 0
sets bl
sub ebx, 1
and ebx, edx
mov dword [esp + 0x2c], ebx
mov ah, ah
mov edx, edi
sub edx, dword [esp + 0x18]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, edx
mov dword [esp + 0x28], ebx
mov esi, esi
mov edx, ecx
sub edx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and edx, ebx
mov ebx, ebx
add eax, ebp
cmp eax, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10089820
mov dword [esp + 0x14], eax
mov bl, bl
mov eax, dword [esp + 0x18]
add edi, eax
cmp edi, 0xff
jle 0x10089835
mov edi, 0xff
mov bl, bl
mov eax, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
jle 0x1008984a
mov ecx, 0xff
mov esi, esi
mov ebx, dword [esp + 0x50]
cmp ebx, dword [esp + 0x2c]
jl 0x10089b97
cmp ebx, dword [esp + 0x14]
jg 0x10089b97
mov ebx, dword [esp + 0x24]
cmp ebx, dword [esp + 0x28]
jl 0x10089b97
cmp ebx, edi
jg 0x10089b97
cmp esi, edx
jl 0x10089b97
cmp esi, ecx
jg 0x10089b97
mov dh, dh
xor ecx, ecx
cmp dword [esp + 0x74], ecx
jne 0x10089994
cmp dword [esp + 0x6c], ecx
jne 0x10089994
cmp ebp, ecx
jne 0x10089994
cmp dword [esp + 0x18], ecx
jne 0x10089994
cmp eax, ecx
jne 0x10089994
cmp dword [esp + 0x98], ecx
mov dword [esp + 0x1c], ecx
jle 0x10089a22
mov ebp, dword [esp + 0x30]
mov edi, dword [esp + 0x38]
mov cl, cl
mov eax, dword [esp + 0x94]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, edi
mov edx, ebp
jb 0x10089904
jmp 0x100898f0
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10089908
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x100898f0
test eax, eax
je 0x10089965
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10089957
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10089965
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10089957
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10089965
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10089957
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10089965
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10089965
test esi, esi
mov eax, 1
jg 0x10089967
or eax, 0xffffffff
jmp 0x10089967
xor eax, eax
test eax, eax
jne 0x10089a22
mov eax, dword [esp + 0x1c]
add edi, dword [esp + 0x48]
add ebp, dword [esp + 0x44]
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
jl 0x100898d5
jmp 0x10089a22
cmp dword [esp + 0x98], ecx
mov dword [esp + 0x1c], ecx
jle 0x10089a22
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x14], edx
mov ebx, ebx
xor esi, esi
cmp dword [esp + 0x94], esi
jle 0x10089a02
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [ebx + esi*4]
push edx
mov edx, dword [edi]
push eax
push ebp
call fcn.10060370
add esp, 0x14
test eax, eax
je 0x100899f9
add esi, 1
add edi, 4
cmp esi, dword [esp + 0x94]
jl 0x100899c2
jmp 0x10089a02
cmp esi, dword [esp + 0x94]
jl 0x10089a22
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x44]
add ebx, dword [esp + 0x48]
add dword [esp + 0x14], ecx
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
jl 0x100899b1
mov edi, dword [esp + 0x98]
cmp dword [esp + 0x1c], edi
jne 0x10089b97
xor eax, eax
mov byte [esp + 0x104], 0
mov dword [esp + 0x105], eax
mov dword [esp + 0x109], eax
mov dword [esp + 0x10d], eax
mov dword [esp + 0x111], eax
mov dword [esp + 0x115], eax
mov dword [esp + 0x119], eax
mov dword [esp + 0x11d], eax
mov word [esp + 0x121], ax
mov byte [esp + 0x123], al
nop
mov ebx, ebx
mov bh, bh
mov byte [esp + 0x13c], 0x25
mov byte [esp + 0x13d], 0x64
mov byte [esp + 0x13e], 0x2c
mov byte [esp + 0x13f], 0x25
mov byte [esp + 0x140], 0x64
mov byte [esp + 0x141], 0x2c
mov byte [esp + 0x142], 0x25
mov byte [esp + 0x143], 0x64
mov byte [esp + 0x144], al
mov bh, bh
mov eax, dword [esp + 0xdc]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
add edx, eax
mov eax, dword [esp + 0x8c]
push edx
mov edx, dword [esp + 0xe4]
add ecx, edx
push ecx
push eax
lea ecx, [esp + 0x148]
push ecx
lea edx, [esp + 0x114]
push edx
call fcn.10119290
add esp, 0x14
mov dh, dh
mov esi, dword [esp + 0xe4]
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0x14]
je 0x10089b2b
push 0x10183571
push 0x10183570
mov ecx, esi
call fcn.1000a280
push eax
pop eax
lea eax, [esp + 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10089b35
sub eax, edx
lea ecx, [esp + eax + 0x104]
push ecx
lea edx, [esp + 0x108]
push edx
mov ecx, esi
call fcn.1000a280
mov edx, edx
mov esi, esi
mov ecx, ecx
test edi, edi
jle 0x10089b97
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x44]
mov esi, edi
mov edi, dword [esp + 0x94]
test edi, edi
jle 0x10089b90
mov eax, edx
mov ecx, edi
lea ebx, [ebx]
mov dword [eax], 0xff000000
mov ebx, ebx
add eax, 4
sub ecx, 1
jne 0x10089b80
add edx, ebx
sub esi, 1
jne 0x10089b72
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x3c]
mov edx, dword [ecx + 0x20]
sub edx, dword [esp + 0x94]
add eax, 1
cmp eax, edx
mov dword [esp + 0x3c], eax
jle 0x10089400
sub dword [esp + 0x40], 1
jns 0x10089360
jmp 0x1008acad
cmp eax, 2
jne 0x1008a448
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0x24]
sub ecx, dword [esp + 0x98]
mov dword [esp + 0x40], ebx
js 0x1008acad
lea esp, [esp]
mov edx, dword [esp + 0x4c]
mov eax, dword [edx + 0x20]
sub eax, dword [esp + 0x94]
mov dword [esp + 0x3c], eax
js 0x1008a422
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
imul ecx, eax
mov edx, dword [esp + 0xd4]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0xbc]
imul ecx, eax
lea ecx, [ecx + edx*4]
mov edx, dword [esp + 0xc4]
imul edx, eax
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0xcc]
lea edx, [edx + ecx*4]
mov ecx, dword [esp + 0xb8]
imul ecx, eax
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0xc0]
lea ecx, [ecx + edx*4]
mov edx, dword [esp + 0xc8]
imul edx, eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x78], ecx
lea ecx, [edx + eax*4]
mov dword [esp + 0x7c], ecx
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x3c]
lea ecx, [edx + eax*4]
add ecx, dword [esp + 0xd8]
mov dword [esp + 0x30], ecx
mov cl, cl
mov dl, dl
mov edx, dword [esp + 0x84]
mov eax, dword [ecx + edx]
mov cl, cl
mov edx, dword [esp + 0x80]
mov edx, dword [ecx + edx]
mov bl, bl
mov esi, dword [esp + 0x78]
mov ebx, dword [ecx + esi]
mov eax, eax
mov esi, dword [esp + 0x7c]
mov ecx, dword [ecx + esi]
mov dword [esp + 0x58], ecx
mov ah, ah
test eax, 0xff000000
jne 0x1008a417
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov ebx, ebx
movzx ebp, ah
mov bl, bl
and eax, 0xff
mov dword [esp + 0x14], eax
mov edx, edx
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0x50], eax
mov ch, ch
mov eax, dword [esp + 0x68]
movzx esi, ah
mov dword [esp + 0x24], esi
push eax
pop eax
mov edi, eax
and edi, 0xff
mov cl, cl
mov esi, ecx
sub esi, dword [esp + 0x34]
mov eax, 0
sets al
sub eax, 1
and eax, esi
mov dword [esp + 0x2c], eax
mov ah, ah
mov esi, ebp
sub esi, dword [esp + 0x18]
mov eax, 0
sets al
sub eax, 1
and eax, esi
mov dword [esp + 0x28], eax
mov esi, esi
mov esi, dword [esp + 0x14]
sub esi, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and esi, eax
mov ebx, ebx
mov eax, dword [esp + 0x34]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10089d82
mov dword [esp + 0x1c], ecx
mov bl, bl
mov ecx, dword [esp + 0x18]
add ebp, ecx
cmp ebp, 0xff
mov ecx, 0xff
jg 0x10089d99
mov ecx, ebp
mov bl, bl
mov ebp, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
add eax, ebp
cmp eax, 0xff
mov ebp, 0xff
jg 0x10089db3
mov ebp, eax
mov esi, esi
mov eax, dword [esp + 0x50]
cmp eax, dword [esp + 0x2c]
jl 0x1008a417
cmp eax, dword [esp + 0x1c]
jg 0x1008a417
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x1008a417
cmp eax, ecx
jg 0x1008a417
cmp edi, esi
jl 0x1008a417
cmp edi, ebp
jg 0x1008a417
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx ebp, dh
mov bl, bl
and edx, 0xff
mov edx, edx
movzx ecx, byte [esp + 0x5e]
mov dword [esp + 0x50], ecx
mov ch, ch
mov ecx, dword [esp + 0x5c]
movzx esi, ch
mov dword [esp + 0x24], esi
push eax
pop eax
mov edi, ecx
and edi, 0xff
mov cl, cl
mov esi, eax
sub esi, dword [esp + 0x34]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov dword [esp + 0x2c], ecx
mov ah, ah
mov esi, ebp
sub esi, dword [esp + 0x18]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov dword [esp + 0x28], ecx
mov esi, esi
mov esi, edx
sub esi, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov ebx, ebx
mov esi, dword [esp + 0x34]
add eax, esi
cmp eax, 0xff
jle 0x10089e91
mov eax, 0xff
mov bl, bl
mov esi, dword [esp + 0x18]
add ebp, esi
cmp ebp, 0xff
jle 0x10089ea6
mov ebp, 0xff
mov bl, bl
mov esi, dword [esp + 0x20]
add edx, esi
cmp edx, 0xff
jle 0x10089ebb
mov edx, 0xff
mov esi, esi
mov esi, dword [esp + 0x50]
cmp esi, dword [esp + 0x2c]
jl 0x1008a417
cmp esi, eax
jg 0x1008a417
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x1008a417
cmp eax, ebp
jg 0x1008a417
cmp edi, ecx
jl 0x1008a417
cmp edi, edx
jg 0x1008a417
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx edi, bh
mov bl, bl
and ebx, 0xff
mov edx, edx
movzx edx, byte [esp + 0x62]
mov dword [esp + 0x50], edx
mov ch, ch
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x24], edx
push eax
pop eax
mov esi, ecx
and esi, 0xff
mov cl, cl
mov ebp, dword [esp + 0x34]
mov ecx, eax
sub ecx, ebp
mov edx, 0
sets dl
sub edx, 1
and edx, ecx
mov dword [esp + 0x2c], edx
mov ah, ah
mov ecx, edi
sub ecx, dword [esp + 0x18]
mov edx, 0
sets dl
sub edx, 1
and edx, ecx
mov dword [esp + 0x28], edx
mov esi, esi
mov ecx, ebx
sub ecx, dword [esp + 0x20]
mov edx, 0
sets dl
sub edx, 1
and ecx, edx
mov ebx, ebx
add eax, ebp
cmp eax, 0xff
jle 0x10089f95
mov eax, 0xff
mov bl, bl
mov edx, dword [esp + 0x18]
add edi, edx
cmp edi, 0xff
jle 0x10089faa
mov edi, 0xff
mov bl, bl
mov edx, dword [esp + 0x20]
add ebx, edx
cmp ebx, 0xff
jle 0x10089fbf
mov ebx, 0xff
mov esi, esi
mov edx, dword [esp + 0x50]
cmp edx, dword [esp + 0x2c]
jl 0x1008a417
cmp edx, eax
jg 0x1008a417
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x1008a417
cmp eax, edi
jg 0x1008a417
cmp esi, ecx
jl 0x1008a417
cmp esi, ebx
jg 0x1008a417
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov ecx, dword [esp + 0x58]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx edi, ch
mov bl, bl
and ecx, 0xff
mov edx, edx
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x50], edx
mov ch, ch
mov edx, dword [esp + 0x64]
movzx esi, dh
mov dword [esp + 0x24], esi
push eax
pop eax
mov esi, edx
and esi, 0xff
mov cl, cl
mov edx, eax
sub edx, ebp
mov ebx, 0
sets bl
sub ebx, 1
and ebx, edx
mov dword [esp + 0x2c], ebx
mov ah, ah
mov edx, edi
sub edx, dword [esp + 0x18]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, edx
mov dword [esp + 0x28], ebx
mov esi, esi
mov edx, ecx
sub edx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and edx, ebx
mov ebx, ebx
add eax, ebp
cmp eax, 0xff
mov dword [esp + 0x14], 0xff
jg 0x1008a0a0
mov dword [esp + 0x14], eax
mov bl, bl
mov eax, dword [esp + 0x18]
add edi, eax
cmp edi, 0xff
jle 0x1008a0b5
mov edi, 0xff
mov bl, bl
mov eax, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
jle 0x1008a0ca
mov ecx, 0xff
mov esi, esi
mov ebx, dword [esp + 0x50]
cmp ebx, dword [esp + 0x2c]
jl 0x1008a417
cmp ebx, dword [esp + 0x14]
jg 0x1008a417
mov ebx, dword [esp + 0x24]
cmp ebx, dword [esp + 0x28]
jl 0x1008a417
cmp ebx, edi
jg 0x1008a417
cmp esi, edx
jl 0x1008a417
cmp esi, ecx
jg 0x1008a417
mov ecx, ecx
xor ecx, ecx
cmp dword [esp + 0x74], ecx
jne 0x1008a214
cmp dword [esp + 0x6c], ecx
jne 0x1008a214
cmp ebp, ecx
jne 0x1008a214
cmp dword [esp + 0x18], ecx
jne 0x1008a214
cmp eax, ecx
jne 0x1008a214
cmp dword [esp + 0x98], ecx
mov dword [esp + 0x1c], ecx
jle 0x1008a2a2
mov ebp, dword [esp + 0x30]
mov edi, dword [esp + 0x38]
mov eax, eax
mov eax, dword [esp + 0x94]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, edi
mov edx, ebp
jb 0x1008a184
jmp 0x1008a170
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1008a188
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1008a170
test eax, eax
je 0x1008a1e5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1008a1d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008a1e5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1008a1d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008a1e5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1008a1d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008a1e5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x1008a1e5
test esi, esi
mov eax, 1
jg 0x1008a1e7
or eax, 0xffffffff
jmp 0x1008a1e7
xor eax, eax
test eax, eax
jne 0x1008a2a2
mov eax, dword [esp + 0x1c]
add edi, dword [esp + 0x48]
add ebp, dword [esp + 0x44]
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
jl 0x1008a155
jmp 0x1008a2a2
cmp dword [esp + 0x98], ecx
mov dword [esp + 0x1c], ecx
jle 0x1008a2a2
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x14], edx
mov dl, dl
xor esi, esi
cmp dword [esp + 0x94], esi
jle 0x1008a282
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [ebx + esi*4]
push edx
mov edx, dword [edi]
push eax
push ebp
call fcn.10060370
add esp, 0x14
test eax, eax
je 0x1008a279
add esi, 1
add edi, 4
cmp esi, dword [esp + 0x94]
jl 0x1008a242
jmp 0x1008a282
cmp esi, dword [esp + 0x94]
jl 0x1008a2a2
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x44]
add ebx, dword [esp + 0x48]
add dword [esp + 0x14], ecx
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
jl 0x1008a231
mov edi, dword [esp + 0x98]
cmp dword [esp + 0x1c], edi
jne 0x1008a417
xor eax, eax
mov byte [esp + 0x104], 0
mov dword [esp + 0x105], eax
mov dword [esp + 0x109], eax
mov dword [esp + 0x10d], eax
mov dword [esp + 0x111], eax
mov dword [esp + 0x115], eax
mov dword [esp + 0x119], eax
mov dword [esp + 0x11d], eax
mov word [esp + 0x121], ax
mov byte [esp + 0x123], al
mov ebp, ebp
push ecx
pop ecx
push eax
pop eax
mov byte [esp + 0x130], 0x25
mov byte [esp + 0x131], 0x64
mov byte [esp + 0x132], 0x2c
mov byte [esp + 0x133], 0x25
mov byte [esp + 0x134], 0x64
mov byte [esp + 0x135], 0x2c
mov byte [esp + 0x136], 0x25
mov byte [esp + 0x137], 0x64
mov byte [esp + 0x138], al
mov edx, edx
mov eax, dword [esp + 0xdc]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
add edx, eax
mov eax, dword [esp + 0x8c]
push edx
mov edx, dword [esp + 0xe4]
add ecx, edx
push ecx
push eax
lea ecx, [esp + 0x13c]
push ecx
lea edx, [esp + 0x114]
push edx
call fcn.10119290
add esp, 0x14
push ecx
pop ecx
mov esi, dword [esp + 0xe4]
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0x14]
je 0x1008a3ac
push 0x10183571
push 0x10183570
mov ecx, esi
call fcn.1000a280
mov dh, dh
lea eax, [esp + 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x1008a3b6
sub eax, edx
lea ecx, [esp + eax + 0x104]
push ecx
lea edx, [esp + 0x108]
push edx
mov ecx, esi
call fcn.1000a280
push ebx
pop ebx
push ecx
pop ecx
push ebx
pop ebx
test edi, edi
jle 0x1008a417
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x44]
mov esi, edi
mov edi, dword [esp + 0x94]
test edi, edi
jle 0x1008a410
mov eax, edx
mov ecx, edi
jmp 0x1008a400
mov dword [eax], 0xff000000
mov dh, dh
add eax, 4
sub ecx, 1
jne 0x1008a400
add edx, ebx
sub esi, 1
jne 0x1008a3f3
sub dword [esp + 0x3c], 1
jns 0x10089c80
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x40]
mov edx, dword [ecx + 0x24]
sub edx, dword [esp + 0x98]
add eax, 1
cmp eax, edx
mov dword [esp + 0x40], eax
jle 0x10089bf0
jmp 0x1008acad
cmp eax, 3
jne 0x1008acad
mov eax, dword [esp + 0x4c]
mov eax, dword [eax + 0x24]
sub eax, dword [esp + 0x98]
mov dword [esp + 0x40], eax
js 0x1008acad
lea esp, [esp]
mov ecx, dword [esp + 0x4c]
mov eax, dword [ecx + 0x20]
sub eax, dword [esp + 0x94]
mov dword [esp + 0x3c], eax
js 0x1008aca2
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0xbc]
imul ecx, eax
imul edx, eax
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0xd4]
lea edx, [edx + ecx*4]
mov ecx, dword [esp + 0xc4]
imul ecx, eax
mov dword [esp + 0x84], edx
mov edx, dword [esp + 0xcc]
lea ecx, [ecx + edx*4]
mov edx, dword [esp + 0xb8]
imul edx, eax
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0xc0]
lea edx, [edx + ecx*4]
mov ecx, dword [esp + 0xc8]
imul ecx, eax
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0xd0]
lea eax, [ecx + edx*4]
mov dword [esp + 0x7c], eax
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x3c]
lea ecx, [ecx + edx*4]
add ecx, dword [esp + 0xd8]
mov dword [esp + 0x30], ecx
mov dl, dl
push edx
pop edx
mov eax, dword [esp + 0x84]
mov eax, dword [ecx + eax]
push ecx
pop ecx
mov edx, dword [esp + 0x80]
mov edx, dword [ecx + edx]
mov ch, ch
mov esi, dword [esp + 0x78]
mov ebx, dword [ecx + esi]
mov bh, bh
mov esi, dword [esp + 0x7c]
mov ecx, dword [ecx + esi]
mov dword [esp + 0x58], ecx
mov ebx, ebx
test eax, 0xff000000
jne 0x1008ac97
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov ebx, ebx
movzx ebp, ah
mov bl, bl
and eax, 0xff
mov dword [esp + 0x14], eax
mov edx, edx
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0x50], eax
mov ch, ch
mov eax, dword [esp + 0x68]
movzx esi, ah
mov dword [esp + 0x24], esi
push eax
pop eax
mov edi, eax
and edi, 0xff
mov cl, cl
mov esi, ecx
sub esi, dword [esp + 0x34]
mov eax, 0
sets al
sub eax, 1
and eax, esi
mov dword [esp + 0x2c], eax
mov ah, ah
mov esi, ebp
sub esi, dword [esp + 0x18]
mov eax, 0
sets al
sub eax, 1
and eax, esi
mov dword [esp + 0x28], eax
mov esi, esi
mov esi, dword [esp + 0x14]
sub esi, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and esi, eax
mov ebx, ebx
mov eax, dword [esp + 0x34]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x1008a602
mov dword [esp + 0x1c], ecx
mov bl, bl
mov ecx, dword [esp + 0x18]
add ebp, ecx
cmp ebp, 0xff
mov ecx, 0xff
jg 0x1008a619
mov ecx, ebp
mov bl, bl
mov ebp, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
add eax, ebp
cmp eax, 0xff
mov ebp, 0xff
jg 0x1008a633
mov ebp, eax
mov esi, esi
mov eax, dword [esp + 0x50]
cmp eax, dword [esp + 0x2c]
jl 0x1008ac97
cmp eax, dword [esp + 0x1c]
jg 0x1008ac97
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x1008ac97
cmp eax, ecx
jg 0x1008ac97
cmp edi, esi
jl 0x1008ac97
cmp edi, ebp
jg 0x1008ac97
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx ebp, dh
mov bl, bl
and edx, 0xff
mov edx, edx
movzx ecx, byte [esp + 0x5e]
mov dword [esp + 0x50], ecx
mov ch, ch
mov ecx, dword [esp + 0x5c]
movzx esi, ch
mov dword [esp + 0x24], esi
push eax
pop eax
mov edi, ecx
and edi, 0xff
mov cl, cl
mov esi, eax
sub esi, dword [esp + 0x34]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov dword [esp + 0x2c], ecx
mov ah, ah
mov esi, ebp
sub esi, dword [esp + 0x18]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov dword [esp + 0x28], ecx
mov esi, esi
mov esi, edx
sub esi, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, esi
mov ebx, ebx
mov esi, dword [esp + 0x34]
add eax, esi
cmp eax, 0xff
jle 0x1008a711
mov eax, 0xff
mov bl, bl
mov esi, dword [esp + 0x18]
add ebp, esi
cmp ebp, 0xff
jle 0x1008a726
mov ebp, 0xff
mov bl, bl
mov esi, dword [esp + 0x20]
add edx, esi
cmp edx, 0xff
jle 0x1008a73b
mov edx, 0xff
mov esi, esi
mov esi, dword [esp + 0x50]
cmp esi, dword [esp + 0x2c]
jl 0x1008ac97
cmp esi, eax
jg 0x1008ac97
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x1008ac97
cmp eax, ebp
jg 0x1008ac97
cmp edi, ecx
jl 0x1008ac97
cmp edi, edx
jg 0x1008ac97
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx edi, bh
mov bl, bl
and ebx, 0xff
mov edx, edx
movzx edx, byte [esp + 0x62]
mov dword [esp + 0x50], edx
mov ch, ch
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x24], edx
push eax
pop eax
mov esi, ecx
and esi, 0xff
mov cl, cl
mov ebp, dword [esp + 0x34]
mov ecx, eax
sub ecx, ebp
mov edx, 0
sets dl
sub edx, 1
and edx, ecx
mov dword [esp + 0x2c], edx
mov ah, ah
mov ecx, edi
sub ecx, dword [esp + 0x18]
mov edx, 0
sets dl
sub edx, 1
and edx, ecx
mov dword [esp + 0x28], edx
mov esi, esi
mov ecx, ebx
sub ecx, dword [esp + 0x20]
mov edx, 0
sets dl
sub edx, 1
and ecx, edx
mov ebx, ebx
add eax, ebp
cmp eax, 0xff
jle 0x1008a815
mov eax, 0xff
mov bl, bl
mov edx, dword [esp + 0x18]
add edi, edx
cmp edi, 0xff
jle 0x1008a82a
mov edi, 0xff
mov bl, bl
mov edx, dword [esp + 0x20]
add ebx, edx
cmp ebx, 0xff
jle 0x1008a83f
mov ebx, 0xff
mov esi, esi
mov edx, dword [esp + 0x50]
cmp edx, dword [esp + 0x2c]
jl 0x1008ac97
cmp edx, eax
jg 0x1008ac97
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x28]
jl 0x1008ac97
cmp eax, edi
jg 0x1008ac97
cmp esi, ecx
jl 0x1008ac97
cmp esi, ebx
jg 0x1008ac97
mov bl, bl
mov dl, dl
mov ch, ch
mov dl, dl
push edx
pop edx
mov ecx, dword [esp + 0x58]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov ebx, ebx
movzx edi, ch
mov bl, bl
and ecx, 0xff
mov edx, edx
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x50], edx
mov ch, ch
mov edx, dword [esp + 0x64]
movzx esi, dh
mov dword [esp + 0x24], esi
push eax
pop eax
mov esi, edx
and esi, 0xff
mov cl, cl
mov edx, eax
sub edx, ebp
mov ebx, 0
sets bl
sub ebx, 1
and ebx, edx
mov dword [esp + 0x2c], ebx
mov ah, ah
mov edx, edi
sub edx, dword [esp + 0x18]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, edx
mov dword [esp + 0x28], ebx
mov esi, esi
mov edx, ecx
sub edx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and edx, ebx
mov ebx, ebx
add eax, ebp
cmp eax, 0xff
mov dword [esp + 0x14], 0xff
jg 0x1008a920
mov dword [esp + 0x14], eax
mov bl, bl
mov eax, dword [esp + 0x18]
add edi, eax
cmp edi, 0xff
jle 0x1008a935
mov edi, 0xff
mov bl, bl
mov eax, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
jle 0x1008a94a
mov ecx, 0xff
mov esi, esi
mov ebx, dword [esp + 0x50]
cmp ebx, dword [esp + 0x2c]
jl 0x1008ac97
cmp ebx, dword [esp + 0x14]
jg 0x1008ac97
mov ebx, dword [esp + 0x24]
cmp ebx, dword [esp + 0x28]
jl 0x1008ac97
cmp ebx, edi
jg 0x1008ac97
cmp esi, edx
jl 0x1008ac97
cmp esi, ecx
jg 0x1008ac97
mov dh, dh
xor ecx, ecx
cmp dword [esp + 0x74], ecx
jne 0x1008aa94
cmp dword [esp + 0x6c], ecx
jne 0x1008aa94
cmp ebp, ecx
jne 0x1008aa94
cmp dword [esp + 0x18], ecx
jne 0x1008aa94
cmp eax, ecx
jne 0x1008aa94
cmp dword [esp + 0x98], ecx
mov dword [esp + 0x1c], ecx
jle 0x1008ab22
mov ebp, dword [esp + 0x30]
mov edi, dword [esp + 0x38]
mov ch, ch
mov eax, dword [esp + 0x94]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, edi
mov edx, ebp
jb 0x1008aa04
jmp 0x1008a9f0
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1008aa08
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1008a9f0
test eax, eax
je 0x1008aa65
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1008aa57
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008aa65
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1008aa57
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008aa65
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1008aa57
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008aa65
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x1008aa65
test esi, esi
mov eax, 1
jg 0x1008aa67
or eax, 0xffffffff
jmp 0x1008aa67
xor eax, eax
test eax, eax
jne 0x1008ab22
mov eax, dword [esp + 0x1c]
add edi, dword [esp + 0x48]
add ebp, dword [esp + 0x44]
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
jl 0x1008a9d5
jmp 0x1008ab22
cmp dword [esp + 0x98], ecx
mov dword [esp + 0x1c], ecx
jle 0x1008ab22
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x14], edx
mov bh, bh
xor esi, esi
cmp dword [esp + 0x94], esi
jle 0x1008ab02
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [ebx + esi*4]
push edx
mov edx, dword [edi]
push eax
push ebp
call fcn.10060370
add esp, 0x14
test eax, eax
je 0x1008aaf9
add esi, 1
add edi, 4
cmp esi, dword [esp + 0x94]
jl 0x1008aac2
jmp 0x1008ab02
cmp esi, dword [esp + 0x94]
jl 0x1008ab22
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x44]
add ebx, dword [esp + 0x48]
add dword [esp + 0x14], ecx
add eax, 1
cmp eax, dword [esp + 0x98]
mov dword [esp + 0x1c], eax
jl 0x1008aab1
mov edi, dword [esp + 0x98]
cmp dword [esp + 0x1c], edi
jne 0x1008ac97
xor eax, eax
mov byte [esp + 0x104], 0
mov dword [esp + 0x105], eax
mov dword [esp + 0x109], eax
mov dword [esp + 0x10d], eax
mov dword [esp + 0x111], eax
mov dword [esp + 0x115], eax
mov dword [esp + 0x119], eax
mov dword [esp + 0x11d], eax
mov word [esp + 0x121], ax
mov byte [esp + 0x123], al
xchg ebx, eax
xchg ebx, eax
mov ebp, ebp
push ecx
pop ecx
mov byte [esp + 0x124], 0x25
mov byte [esp + 0x125], 0x64
mov byte [esp + 0x126], 0x2c
mov byte [esp + 0x127], 0x25
mov byte [esp + 0x128], 0x64
mov byte [esp + 0x129], 0x2c
mov byte [esp + 0x12a], 0x25
mov byte [esp + 0x12b], 0x64
mov byte [esp + 0x12c], al
mov dl, dl
mov eax, dword [esp + 0xdc]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0xe0]
add edx, eax
mov eax, dword [esp + 0x8c]
push edx
mov edx, dword [esp + 0x40]
add edx, ecx
push edx
push eax
lea ecx, [esp + 0x130]
push ecx
lea edx, [esp + 0x114]
push edx
call fcn.10119290
add esp, 0x14
mov eax, eax
mov esi, dword [esp + 0xe4]
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0x14]
je 0x1008ac2b
push 0x10183571
push 0x10183570
mov ecx, esi
call fcn.1000a280
nop
lea eax, [esp + 0x104]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x1008ac35
sub eax, edx
lea ecx, [esp + eax + 0x104]
push ecx
lea edx, [esp + 0x108]
push edx
mov ecx, esi
call fcn.1000a280
mov ebx, ebx
nop
mov ch, ch
test edi, edi
jle 0x1008ac97
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x44]
mov esi, edi
mov edi, dword [esp + 0x94]
test edi, edi
jle 0x1008ac90
mov eax, edx
mov ecx, edi
lea esp, [esp]
mov dword [eax], 0xff000000
push eax
pop eax
add eax, 4
sub ecx, 1
jne 0x1008ac80
add edx, ebx
sub esi, 1
jne 0x1008ac71
sub dword [esp + 0x3c], 1
jns 0x1008a500
sub dword [esp + 0x40], 1
jns 0x1008a470
mov esi, dword [esp + 0x4c]
cmp dword [esi + 0x10], 0
jne 0x1008acc7
mov eax, dword [esp + 0xec]
cmp dword [eax + 0x32fc], 0
jne 0x1008acd9
mov ecx, dword [esp + 0xe8]
push ecx
call fcn.101174df
add esp, 4
mov dl, dl
cmp dword [esi + 0x18], 0
je 0x1008ad0a
mov edx, dword [esp + 0x38]
push edx
call fcn.101174df
add esp, 4
mov eax, eax
jmp 0x1008ad0a
cmp dword [esi + 0x10], 0
jne 0x1008acff
cmp dword [ebx + 0x32fc], 0
jne 0x1008ad0a
push eax
call fcn.101174df
add esp, 4
push ebx
pop ebx
mov edi, dword [esp + 0x8c]
mov esi, dword [esp + 0x4c]
add edi, 1
cmp edi, dword [esi + 0xc]
mov dword [esp + 0x8c], edi
jle 0x100885b0
pop ebp
mov ecx, dword [esp + 0x150]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.101179ba
add esp, 0x148
ret
jmp fcn.10106489