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

Disassembly:
sub esp, 0x1fc
mov eax, dword [0x101b03d4]
xor eax, esp
mov dword [esp + 0x1f8], eax
push esi
mov esi, ecx
mov eax, dword [esi + 4]
mov dword [esp + 0x2c], esi
mov dword [esp + 0xec], eax
push edx
pop edx
mov ecx, dword [esi]
mov dword [esp + 0x88], ecx
mov edi, edi
mov ch, ch
mov edx, dword [esi + 0x44]
mov dword [esp + 0x44], edx
mov edi, edi
mov eax, dword [esi + 0x50]
mov dword [esp + 0xd8], eax
mov esi, esi
mov ecx, dword [esi + 0x58]
mov dword [esp + 0xe8], ecx
mov bh, bh
mov eax, eax
fld qword [esi + 0x160]
fstp qword [esp + 0xf0]
mov ecx, ecx
mov edx, dword [esi + 0x48]
mov dword [esp + 0xe0], edx
mov cl, cl
mov eax, dword [esi + 0x4c]
mov dword [esp + 0xe4], eax
push ebx
pop ebx
mov ebx, ebx
mov bh, bh
mov ecx, ecx
mov ecx, dword [esi + 0x168]
push 0x10165918
push 0x10165918
call fcn.1000b340
mov dl, dl
mov edi, edi
push ecx
pop ecx
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0xc]
mov dword [esp + 0xdc], eax
jg 0x1006857e
push ebx
push ebp
push edi
mov edi, eax
jmp 0x10066120
nop
mov dword [esp + 0x30], 0
mov ebx, ebx
mov ch, ch
mov ebp, ebp
cmp dword [esi + 0x16c], 0
jne 0x1006857b
mov ebp, dword [esp + 0x94]
lea ebx, [ebp + 0x3264]
push 0x3e8
push ebx
call fcn.10040a20
add esp, 8
push ebx
pop ebx
test edi, edi
jl 0x100686d7
mov eax, dword [esp + 0xf8]
cmp edi, dword [eax + 8]
jge 0x100686d7
mov ecx, dword [eax + 4]
mov edx, dword [esi + 0x10]
mov edi, dword [ecx + edi*4]
push 0
push edx
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0xbc]
push edx
push edi
push ebp
call fcn.100653b0
add esp, 0x1c
test eax, eax
push ebx
jne 0x100661ad
call fcn.10040ab0
add esp, 4
mov eax, eax
jmp 0x10068455
call fcn.10040ab0
add esp, 4
mov dh, dh
mov eax, dword [esp + 0x30]
mov dword [esp + 0x90], eax
mov edx, edx
mov ebx, dword [esp + 0xb0]
cmp ebx, dword [esi + 0x20]
jg 0x1006843b
mov edi, dword [esp + 0xb4]
cmp edi, dword [esi + 0x24]
jg 0x1006843b
cmp dword [esi + 0x18], 0
jne 0x10066223
test edi, edi
jle 0x100662f5
mov edx, eax
mov esi, edi
mov edi, dword [esp + 0x40]
add edx, 3
lea ecx, [ecx]
test ebx, ebx
jle 0x10066217
mov eax, edx
mov ecx, ebx
mov edx, edx
mov byte [eax], 0
mov eax, eax
add eax, 4
sub ecx, 1
jne 0x10066208
add edx, edi
sub esi, 1
jne 0x10066200
jmp 0x100662f5
mov eax, edi
imul eax, dword [esp + 0x40]
push eax
call fcn.100fab8c
add esp, 4
mov dword [esp + 0x30], eax
mov ebx, ebx
test eax, eax
jne 0x10066265
cmp dword [esi + 0x10], eax
jne 0x1006624e
cmp dword [ebp + 0x32fc], eax
jne 0x10068455
mov ecx, dword [esp + 0x90]
push ecx
call fcn.100fac4f
add esp, 4
mov dl, dl
jmp 0x10068455
test edi, edi
jle 0x100662f5
mov eax, dword [esp + 0x90]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0xb4]
add eax, 1
mov dword [esp + 0x74], edx
mov dword [esp + 0x70], eax
mov dword [esp + 0x14], ecx
mov edi, edi
test ebx, ebx
jle 0x100662e2
mov esi, dword [esp + 0x74]
mov ecx, dword [esp + 0x70]
mov ebp, ebx
mov edi, edi
push ebx
pop ebx
mov ecx, ecx
movzx eax, byte [ecx + 1]
xchg ebx, eax
xchg ebx, eax
movzx edx, byte [ecx]
mov esi, esi
movzx edi, byte [ecx - 1]
mov cl, cl
add edi, edx
add edi, eax
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
mov edx, edx
movzx eax, dl
mov edx, eax
shl edx, 8
or edx, eax
shl edx, 8
or edx, eax
mov dword [esi], edx
mov cl, cl
add ecx, 4
add esi, 4
sub ebp, 1
jne 0x100662a0
mov eax, dword [esp + 0x40]
add dword [esp + 0x74], eax
add dword [esp + 0x70], eax
sub dword [esp + 0x14], 1
jne 0x10066290
fld1
fsub qword [esp + 0xfc]
fnstcw word [esp + 0x20]
fmul qword [0x10165880]
movzx eax, word [esp + 0x20]
or eax, 0xc00
mov dword [esp + 0x18], eax
fldcw word [esp + 0x18]
fistp qword [esp + 0xdc]
mov edi, dword [esp + 0xdc]
mov dword [esp + 0x70], edi
fldcw word [esp + 0x20]
mov edi, edi
mov ah, ah
nop
mov edi, edi
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov al, al
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x3c]
add eax, 0x5c
push 0x10165808
push eax
call fcn.100fd75d
add esp, 0xc
push edx
pop edx
movzx esi, byte [esp + 0x12]
add esi, edi
mov edi, edi
movzx eax, byte [esp + 0x11]
add eax, edi
mov dword [esp + 0x24], eax
mov bl, bl
mov eax, dword [esp + 0x10]
and eax, 0xff
add eax, edi
mov dword [esp + 0x20], eax
mov ah, ah
push ecx
pop ecx
mov al, al
mov ebp, ebp
push ebx
pop ebx
mov ch, ch
mov dword [esp + 0xd4], ebp
mov dword [esp + 0xa8], ebp
push ebx
pop ebx
lea eax, [ebx - 1]
mov dword [esp + 0xa4], eax
mov esi, esi
mov dword [esp + 0x98], ebp
push ebx
pop ebx
mov dword [esp + 0xd8], ebp
mov edi, edi
mov edx, dword [esp + 0xb4]
lea ebp, [edx - 1]
mov dword [esp + 0x5c], ebp
mov ah, ah
mov dword [esp + 0xa0], eax
mov al, al
mov dword [esp + 0x9c], ebp
mov eax, eax
mov eax, dword [esp + 0x30]
mov edi, dword [eax]
mov dword [esp + 0x68], edi
push ecx
pop ecx
mov ecx, dword [eax + ebx*4 - 4]
mov dword [esp + 0x64], ecx
mov bh, bh
lea eax, [edx - 1]
imul eax, dword [esp + 0x40]
mov edx, dword [esp + 0x30]
mov edx, dword [eax + edx]
mov dword [esp + 0x58], edx
mov ecx, ecx
mov edx, dword [esp + 0x30]
lea eax, [eax + ebx*4]
mov eax, dword [eax + edx - 4]
mov dword [esp + 0x60], eax
nop
mov dword [esp + 0x6c], 0
mov esi, esi
mov edx, edi
mov dword [esp + 0x74], edx
mov ah, ah
cmp edi, ecx
jne 0x100665fb
mov edi, dword [esp + 0x58]
cmp ecx, edi
jne 0x100665fb
cmp edi, eax
jne 0x100665fb
mov dword [esp + 0x6c], 1
push ebx
pop ebx
xor ecx, ecx
cmp dword [esp + 0xb4], ecx
jle 0x100664b0
mov edi, dword [esp + 0x30]
mov dword [esp + 0x14], edi
xor eax, eax
test ebx, ebx
jle 0x10066498
mov al, al
cmp dword [edi], edx
jne 0x1006647a
add eax, 1
add edi, 4
cmp eax, ebx
jl 0x10066468
jmp 0x10066498
mov edi, dword [edi]
mov dword [esp + 0x68], edi
mov ebp, ebp
mov dword [esp + 0xa8], eax
mov ch, ch
mov dword [esp + 0xd4], ecx
mov bh, bh
cmp eax, ebx
jl 0x100664b0
mov edi, dword [esp + 0x14]
add edi, dword [esp + 0x40]
add ecx, 1
cmp ecx, dword [esp + 0xb4]
mov dword [esp + 0x14], edi
jl 0x10066462
xor edi, edi
cmp dword [esp + 0xb4], edi
jle 0x10066518
xor ecx, ecx
mov dword [esp + 0x14], ecx
lea eax, [ebx - 1]
test eax, eax
jl 0x10066500
lea ecx, [ecx + eax*4]
add ecx, dword [esp + 0x30]
nop
mov ebp, ebp
cmp dword [ecx], edx
jne 0x100664e2
sub eax, 1
sub ecx, 4
test eax, eax
jge 0x100664d0
jmp 0x10066500
mov ecx, dword [ecx]
mov dword [esp + 0x64], ecx
xchg ebx, eax
xchg ebx, eax
mov dword [esp + 0xa4], eax
mov eax, eax
mov dword [esp + 0x98], edi
xchg ebx, eax
xchg ebx, eax
test eax, eax
jge 0x10066518
mov ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x40]
add edi, 1
cmp edi, dword [esp + 0xb4]
mov dword [esp + 0x14], ecx
jl 0x100664c1
mov edi, dword [esp + 0xb4]
add edi, 0xffffffff
test edi, edi
jl 0x10066588
mov eax, dword [esp + 0x40]
mov ecx, eax
neg ecx
mov dword [esp + 0x1c], ecx
mov ecx, edi
imul ecx, eax
add ecx, dword [esp + 0x30]
mov dword [esp + 0x5c], ecx
nop
xor eax, eax
test ebx, ebx
jle 0x10066575
mov eax, eax
cmp dword [ecx], edx
jne 0x10066558
add eax, 1
add ecx, 4
cmp eax, ebx
jl 0x10066546
jmp 0x10066571
mov ecx, dword [ecx]
mov dword [esp + 0x58], ecx
push eax
pop eax
mov dword [esp + 0xd8], eax
mov bh, bh
mov ebp, edi
push edx
pop edx
cmp eax, ebx
jl 0x10066584
mov ecx, dword [esp + 0x5c]
add ecx, dword [esp + 0x1c]
sub edi, 1
test edi, edi
mov dword [esp + 0x5c], ecx
jge 0x10066540
mov dword [esp + 0x5c], ebp
mov edi, dword [esp + 0xb4]
add edi, 0xffffffff
test edi, edi
jl 0x100665fb
mov eax, dword [esp + 0x40]
add ebx, 0xffffffff
mov dword [esp + 0x18], ebx
mov ebx, edi
imul ebx, eax
neg eax
mov dword [esp + 0x1c], eax
lea esp, [esp]
mov eax, dword [esp + 0x18]
test eax, eax
jl 0x100665f0
lea ecx, [ebx + eax*4]
add ecx, dword [esp + 0x30]
nop
mov cl, cl
cmp dword [ecx], edx
jne 0x100665d2
sub eax, 1
sub ecx, 4
test eax, eax
jge 0x100665c0
jmp 0x100665f0
mov ecx, dword [ecx]
mov dword [esp + 0x60], ecx
mov ch, ch
mov dword [esp + 0xa0], eax
push ecx
pop ecx
mov dword [esp + 0x9c], edi
mov cl, cl
test eax, eax
jge 0x100665fb
add ebx, dword [esp + 0x1c]
sub edi, 1
test edi, edi
jge 0x100665b0
mov eax, dword [esp + 0xf4]
test eax, eax
jne 0x10066d8e
mov edx, dword [esp + 0x38]
mov eax, dword [edx + 0x24]
xor edi, edi
sub eax, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x100683f9
mov edx, dword [esp + 0x38]
mov eax, dword [edx + 0x20]
xor ecx, ecx
sub eax, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x10066d6c
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0xd4]
imul ebp, eax
imul edi, eax
mov ebx, dword [esp + 0xa8]
imul edx, eax
lea edx, [edx + ebx*4]
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x8c], edx
mov edx, dword [esp + 0x98]
imul edx, eax
lea edx, [edx + ebx*4]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0xd8]
lea edx, [ebp + edx*4]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x9c]
imul edx, eax
mov eax, dword [esp + 0xa0]
lea edx, [edx + eax*4]
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x84], edx
movzx edx, ah
and eax, 0xff
mov dword [esp + 0x80], edi
mov dword [esp + 0x3c], edx
mov dword [esp + 0x2c], eax
jmp 0x100666d7
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
mov al, al
push ebx
pop ebx
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
xchg ebx, eax
xchg ebx, eax
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov al, al
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov bl, bl
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0xdc], ecx
mov ebx, ebx
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
push eax
pop eax
movzx ebp, ah
mov dword [esp + 0x14], ebp
mov esi, esi
and eax, 0xff
mov dword [esp + 0x1c], eax
nop
push ecx
pop ecx
mov bh, bh
mov edx, edx
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x34], eax
push eax
pop eax
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x24]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x4c], eax
mov dl, dl
mov ebp, dword [esp + 0x1c]
sub ebp, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
push ebx
pop ebx
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x100667a5
mov dword [esp + 0x18], ecx
mov edx, edx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100667c5
mov dword [esp + 0x14], ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x100667e5
mov dword [esp + 0x1c], ecx
mov ebp, ebp
mov ecx, dword [esp + 0x88]
cmp ecx, dword [esp + 0x34]
jl 0x10066d43
cmp ecx, dword [esp + 0x18]
jg 0x10066d43
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x4c]
jl 0x10066d43
cmp ecx, dword [esp + 0x14]
jg 0x10066d43
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jl 0x10066d43
cmp ecx, dword [esp + 0x1c]
jg 0x10066d43
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov eax, edx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov esi, esi
and edx, 0xff
mov dword [esp + 0x14], edx
nop
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x4c], edx
push ecx
pop ecx
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x54], ecx
mov bh, bh
and edx, 0xff
mov edx, edx
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x34], ecx
push eax
pop eax
mov ebp, dword [esp + 0x18]
sub ebp, dword [esp + 0x24]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x28], ecx
mov dl, dl
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ebp, ecx
push ebx
pop ebx
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x100668d8
mov dword [esp + 0x1c], eax
mov edx, edx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x100668f8
mov dword [esp + 0x18], ecx
push ebx
pop ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10066918
mov dword [esp + 0x14], ecx
mov ebp, ebp
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x34]
jl 0x10066d43
cmp eax, dword [esp + 0x1c]
jg 0x10066d43
mov eax, dword [esp + 0x54]
cmp eax, dword [esp + 0x28]
jl 0x10066d43
cmp eax, dword [esp + 0x18]
jg 0x10066d43
cmp edx, ebp
jl 0x10066d43
cmp edx, dword [esp + 0x14]
jg 0x10066d43
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx edx, bh
mov esi, esi
and ebx, 0xff
mov dword [esp + 0x18], ebx
nop
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x4c], ebx
mov bh, bh
mov ebp, ecx
and ebp, 0xff
mov edx, edx
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x54], ebx
push eax
pop eax
mov ecx, edx
sub ecx, dword [esp + 0x24]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x34], ebx
mov dl, dl
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
push ebx
pop ebx
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x100669fe
mov dword [esp + 0x14], eax
mov edx, edx
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x10066a12
mov dword [esp + 0x1c], edx
push ebx
pop ebx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x10066a2d
mov edx, ecx
mov ebp, ebp
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x54]
jl 0x10066d43
cmp ecx, dword [esp + 0x14]
jg 0x10066d43
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x34]
jl 0x10066d43
cmp eax, dword [esp + 0x1c]
jg 0x10066d43
cmp ebp, ebx
jl 0x10066d43
cmp ebp, edx
jg 0x10066d43
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov ecx, dword [esp + 0xdc]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx ebx, ch
mov esi, esi
and ecx, 0xff
mov dword [esp + 0x18], ecx
nop
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0xdc], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x54], edx
mov bh, bh
mov ebp, ecx
and ebp, 0xff
mov edx, edx
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x28], ecx
push eax
pop eax
mov edx, ebx
sub edx, dword [esp + 0x24]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x4c], ecx
mov dl, dl
mov edx, dword [esp + 0x18]
sub edx, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and edx, ecx
push ebx
pop ebx
add eax, esi
cmp eax, 0xff
jle 0x10066b16
mov eax, 0xff
mov edx, edx
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10066b32
mov dword [esp + 0x14], ebx
push ebx
pop ebx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x10066b4d
mov ebx, ecx
mov ebp, ebp
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10066d43
cmp ecx, eax
jg 0x10066d43
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x4c]
jl 0x10066d43
cmp ecx, dword [esp + 0x14]
jg 0x10066d43
cmp ebp, edx
jl 0x10066d43
cmp ebp, ebx
jg 0x10066d43
mov al, al
xor eax, eax
cmp dword [esp + 0x70], eax
jne 0x10066ca0
cmp dword [esp + 0x6c], eax
jne 0x10066ca0
cmp esi, eax
jne 0x10066ca0
cmp dword [esp + 0x24], eax
jne 0x10066ca0
cmp dword [esp + 0x20], eax
jne 0x10066ca0
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x10066d32
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
nop
mov ebx, ebx
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x10066c08
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x10066c0c
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10066bf4
test eax, eax
je 0x10066c69
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10066c5b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10066c69
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10066c5b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10066c69
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10066c5b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10066c69
movzx ebx, byte [edx]
movzx edx, byte [ecx]
sub ebx, edx
je 0x10066c69
test ebx, ebx
mov eax, 1
jg 0x10066c6b
or eax, 0xffffffff
jmp 0x10066c6b
xor eax, eax
test eax, eax
jne 0x10066d32
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
add edx, dword [esp + 0x50]
add ebp, dword [esp + 0x40]
add eax, 1
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
jl 0x10066be0
jmp 0x10066d32
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x10066d32
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
lea esp, [esp]
mov ah, ah
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x10066d12
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x28]
push ecx
mov ecx, dword [ebp + ebx*4]
push edx
mov edx, dword [edi]
push eax
push esi
call fcn.1004af40
add esp, 0x14
test eax, eax
je 0x10066d09
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x10066cd1
jmp 0x10066d12
cmp ebx, dword [esp + 0xb0]
jl 0x10066d32
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x50]
add ebp, dword [esp + 0x40]
add dword [esp + 0x14], ecx
add eax, 1
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x1c], eax
jl 0x10066cc0
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0xb4]
je 0x10068478
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x48]
mov edx, dword [eax + 0x20]
sub edx, dword [esp + 0xb0]
add ecx, 1
cmp ecx, edx
mov dword [esp + 0x48], ecx
jle 0x100666d0
mov ebp, dword [esp + 0x5c]
mov edi, dword [esp + 0x44]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x24]
sub ecx, dword [esp + 0xb4]
add edi, 1
cmp edi, ecx
mov dword [esp + 0x44], edi
jle 0x10066624
jmp 0x100683f9
cmp eax, 1
jne 0x1006750e
mov edx, dword [esp + 0x38]
mov edi, dword [edx + 0x24]
sub edi, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x100683f9
nop
mov eax, dword [esp + 0x38]
mov edx, dword [eax + 0x20]
xor ecx, ecx
sub edx, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x100674fc
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0xd4]
imul ebp, eax
imul edi, eax
mov ebx, dword [esp + 0xa8]
imul edx, eax
lea edx, [edx + ebx*4]
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x8c], edx
mov edx, dword [esp + 0x98]
imul edx, eax
lea edx, [edx + ebx*4]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0xd8]
lea edx, [ebp + edx*4]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x9c]
imul edx, eax
mov eax, dword [esp + 0xa0]
lea edx, [edx + eax*4]
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x84], edx
movzx edx, ah
and eax, 0xff
mov dword [esp + 0x80], edi
mov dword [esp + 0x54], edx
mov dword [esp + 0x4c], eax
jmp 0x10066e67
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
mov dl, dl
push ecx
pop ecx
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
mov esi, esi
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov eax, eax
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov ebp, ebp
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
mov cl, cl
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
push eax
pop eax
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov esi, esi
and eax, 0xff
mov dword [esp + 0x14], eax
nop
push ecx
pop ecx
mov bh, bh
mov edx, edx
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
push eax
pop eax
mov ebp, dword [esp + 0x18]
sub ebp, dword [esp + 0x24]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x2c], eax
mov dl, dl
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
push ebx
pop ebx
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10066f35
mov dword [esp + 0x1c], ecx
mov edx, edx
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10066f55
mov dword [esp + 0x18], ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10066f75
mov dword [esp + 0x14], ecx
mov ebp, ebp
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x100674d3
cmp ecx, dword [esp + 0x1c]
jg 0x100674d3
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x100674d3
cmp ecx, dword [esp + 0x18]
jg 0x100674d3
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x100674d3
cmp ecx, dword [esp + 0x14]
jg 0x100674d3
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov eax, edx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov esi, esi
and edx, 0xff
mov dword [esp + 0x14], edx
nop
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
push ecx
pop ecx
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
mov bh, bh
and edx, 0xff
mov edx, edx
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
push eax
pop eax
mov ebp, dword [esp + 0x18]
sub ebp, dword [esp + 0x24]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x34], ecx
mov dl, dl
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ebp, ecx
push ebx
pop ebx
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10067068
mov dword [esp + 0x1c], eax
mov edx, edx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10067088
mov dword [esp + 0x18], ecx
push ebx
pop ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100670a8
mov dword [esp + 0x14], ecx
mov ebp, ebp
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x100674d3
cmp eax, dword [esp + 0x1c]
jg 0x100674d3
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x100674d3
cmp eax, dword [esp + 0x18]
jg 0x100674d3
cmp edx, ebp
jl 0x100674d3
cmp edx, dword [esp + 0x14]
jg 0x100674d3
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx edx, bh
mov esi, esi
and ebx, 0xff
mov dword [esp + 0x18], ebx
nop
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
mov bh, bh
mov ebp, ecx
and ebp, 0xff
mov edx, edx
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
push eax
pop eax
mov ecx, edx
sub ecx, dword [esp + 0x24]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x34], ebx
mov dl, dl
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
push ebx
pop ebx
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x1006718e
mov dword [esp + 0x14], eax
mov edx, edx
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x100671a2
mov dword [esp + 0x1c], edx
push ebx
pop ebx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x100671bd
mov edx, ecx
mov ebp, ebp
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x100674d3
cmp ecx, dword [esp + 0x14]
jg 0x100674d3
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x100674d3
cmp eax, dword [esp + 0x1c]
jg 0x100674d3
cmp ebp, ebx
jl 0x100674d3
cmp ebp, edx
jg 0x100674d3
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx ebx, ch
mov esi, esi
and ecx, 0xff
mov dword [esp + 0x18], ecx
nop
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
mov bh, bh
mov ebp, ecx
and ebp, 0xff
mov edx, edx
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
push eax
pop eax
mov edx, ebx
sub edx, dword [esp + 0x24]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x34], ecx
mov dl, dl
mov edx, dword [esp + 0x18]
sub edx, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and edx, ecx
push ebx
pop ebx
add eax, esi
cmp eax, 0xff
jle 0x100672a3
mov eax, 0xff
mov edx, edx
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100672bf
mov dword [esp + 0x14], ebx
push ebx
pop ebx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x100672da
mov ebx, ecx
mov ebp, ebp
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x100674d3
cmp ecx, eax
jg 0x100674d3
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x100674d3
cmp ecx, dword [esp + 0x14]
jg 0x100674d3
cmp ebp, edx
jl 0x100674d3
cmp ebp, ebx
jg 0x100674d3
mov eax, eax
xor ecx, ecx
cmp dword [esp + 0x70], ecx
jne 0x10067430
cmp dword [esp + 0x6c], ecx
jne 0x10067430
cmp esi, ecx
jne 0x10067430
cmp dword [esp + 0x24], ecx
jne 0x10067430
cmp dword [esp + 0x20], ecx
jne 0x10067430
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x100674c2
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
lea esp, [esp]
mov edx, edx
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x10067398
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x1006739c
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10067384
test eax, eax
je 0x100673f9
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x100673eb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100673f9
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x100673eb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100673f9
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x100673eb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100673f9
movzx eax, byte [ecx]
movzx ebx, byte [edx]
sub ebx, eax
je 0x100673f9
test ebx, ebx
mov eax, 1
jg 0x100673fb
or eax, 0xffffffff
jmp 0x100673fb
xor eax, eax
test eax, eax
jne 0x100674c2
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
add edx, dword [esp + 0x50]
add ebp, dword [esp + 0x40]
add eax, 1
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
jl 0x10067370
jmp 0x100674c2
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x100674c2
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
lea esp, [esp]
mov edi, edi
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x100674a2
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x28]
push edx
mov edx, dword [edi]
push eax
push ecx
mov ecx, dword [ebp + ebx*4]
push esi
call fcn.1004af40
add esp, 0x14
test eax, eax
je 0x10067499
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x10067461
jmp 0x100674a2
cmp ebx, dword [esp + 0xb0]
jl 0x100674c2
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x50]
add ebp, dword [esp + 0x40]
add dword [esp + 0x14], edx
add eax, 1
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x1c], eax
jl 0x10067450
mov eax, dword [esp + 0xb4]
cmp dword [esp + 0x1c], eax
je 0x10068594
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x48]
mov eax, dword [edx + 0x20]
sub eax, dword [esp + 0xb0]
add ecx, 1
cmp ecx, eax
mov dword [esp + 0x48], ecx
jle 0x10066e60
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 0x5c]
sub edi, 1
mov dword [esp + 0x44], edi
jns 0x10066db0
jmp 0x100683f9
cmp eax, 2
jne 0x10067c8e
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + 0x24]
xor edi, edi
sub edx, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x100683f9
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x20]
sub ecx, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x10067c6c
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0xd4]
imul ebp, eax
imul edi, eax
mov ebx, dword [esp + 0xa8]
imul edx, eax
lea edx, [edx + ebx*4]
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x8c], edx
mov edx, dword [esp + 0x98]
imul edx, eax
lea edx, [edx + ebx*4]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0xd8]
lea edx, [ebp + edx*4]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x9c]
imul edx, eax
mov eax, dword [esp + 0xa0]
lea edx, [edx + eax*4]
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x84], edx
movzx edx, ah
and eax, 0xff
mov dword [esp + 0x80], edi
mov dword [esp + 0x54], edx
mov dword [esp + 0x4c], eax
jmp 0x100675e7
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
push eax
pop eax
mov ebx, ebx
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
mov cl, cl
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov al, al
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov edx, edx
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
mov dl, dl
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
push eax
pop eax
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov esi, esi
and eax, 0xff
mov dword [esp + 0x14], eax
nop
push ecx
pop ecx
mov bh, bh
mov edx, edx
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
push eax
pop eax
mov ebp, dword [esp + 0x18]
sub ebp, dword [esp + 0x24]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x2c], eax
mov dl, dl
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
push ebx
pop ebx
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x100676b5
mov dword [esp + 0x1c], ecx
mov edx, edx
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x100676d5
mov dword [esp + 0x18], ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100676f5
mov dword [esp + 0x14], ecx
mov ebp, ebp
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10067c53
cmp ecx, dword [esp + 0x1c]
jg 0x10067c53
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x10067c53
cmp ecx, dword [esp + 0x18]
jg 0x10067c53
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x10067c53
cmp ecx, dword [esp + 0x14]
jg 0x10067c53
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov eax, edx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov esi, esi
and edx, 0xff
mov dword [esp + 0x14], edx
nop
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
push ecx
pop ecx
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
mov bh, bh
and edx, 0xff
mov edx, edx
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
push eax
pop eax
mov ebp, dword [esp + 0x18]
sub ebp, dword [esp + 0x24]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x34], ecx
mov dl, dl
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ebp, ecx
push ebx
pop ebx
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x100677e8
mov dword [esp + 0x1c], eax
mov edx, edx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10067808
mov dword [esp + 0x18], ecx
push ebx
pop ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10067828
mov dword [esp + 0x14], ecx
mov ebp, ebp
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x10067c53
cmp eax, dword [esp + 0x1c]
jg 0x10067c53
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10067c53
cmp eax, dword [esp + 0x18]
jg 0x10067c53
cmp edx, ebp
jl 0x10067c53
cmp edx, dword [esp + 0x14]
jg 0x10067c53
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx edx, bh
mov esi, esi
and ebx, 0xff
mov dword [esp + 0x18], ebx
nop
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
mov bh, bh
mov ebp, ecx
and ebp, 0xff
mov edx, edx
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
push eax
pop eax
mov ecx, edx
sub ecx, dword [esp + 0x24]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x34], ebx
mov dl, dl
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
push ebx
pop ebx
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x1006790e
mov dword [esp + 0x14], eax
mov edx, edx
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x10067922
mov dword [esp + 0x1c], edx
push ebx
pop ebx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x1006793d
mov edx, ecx
mov ebp, ebp
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10067c53
cmp ecx, dword [esp + 0x14]
jg 0x10067c53
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10067c53
cmp eax, dword [esp + 0x1c]
jg 0x10067c53
cmp ebp, ebx
jl 0x10067c53
cmp ebp, edx
jg 0x10067c53
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx ebx, ch
mov esi, esi
and ecx, 0xff
mov dword [esp + 0x18], ecx
nop
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
mov bh, bh
mov ebp, ecx
and ebp, 0xff
mov edx, edx
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
push eax
pop eax
mov edx, ebx
sub edx, dword [esp + 0x24]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x34], ecx
mov dl, dl
mov edx, dword [esp + 0x18]
sub edx, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and edx, ecx
push ebx
pop ebx
add eax, esi
cmp eax, 0xff
jle 0x10067a23
mov eax, 0xff
mov edx, edx
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10067a3f
mov dword [esp + 0x14], ebx
push ebx
pop ebx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x10067a5a
mov ebx, ecx
mov ebp, ebp
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10067c53
cmp ecx, eax
jg 0x10067c53
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x10067c53
cmp ecx, dword [esp + 0x14]
jg 0x10067c53
cmp ebp, edx
jl 0x10067c53
cmp ebp, ebx
jg 0x10067c53
mov dh, dh
xor ecx, ecx
cmp dword [esp + 0x70], ecx
jne 0x10067bb0
cmp dword [esp + 0x6c], ecx
jne 0x10067bb0
cmp esi, ecx
jne 0x10067bb0
cmp dword [esp + 0x24], ecx
jne 0x10067bb0
cmp dword [esp + 0x20], ecx
jne 0x10067bb0
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10067c42
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
lea esp, [esp]
xchg ebx, eax
xchg ebx, eax
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x10067b18
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x10067b1c
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10067b04
test eax, eax
je 0x10067b79
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10067b6b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10067b79
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10067b6b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10067b79
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10067b6b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10067b79
movzx ebx, byte [edx]
movzx edx, byte [ecx]
sub ebx, edx
je 0x10067b79
test ebx, ebx
mov eax, 1
jg 0x10067b7b
or eax, 0xffffffff
jmp 0x10067b7b
xor eax, eax
test eax, eax
jne 0x10067c42
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
add edx, dword [esp + 0x50]
add ebp, dword [esp + 0x40]
add eax, 1
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
jl 0x10067af0
jmp 0x10067c42
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10067c42
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
lea esp, [esp]
mov cl, cl
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x10067c22
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x28]
push ecx
mov ecx, dword [ebp + ebx*4]
push edx
mov edx, dword [edi]
push eax
push esi
call fcn.1004af40
add esp, 0x14
test eax, eax
je 0x10067c19
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x10067be1
jmp 0x10067c22
cmp ebx, dword [esp + 0xb0]
jl 0x10067c42
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x50]
add ebp, dword [esp + 0x40]
add dword [esp + 0x14], ecx
add eax, 1
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x1c], eax
jl 0x10067bd0
mov edx, dword [esp + 0xb4]
cmp dword [esp + 0x1c], edx
je 0x10068600
mov ecx, dword [esp + 0x48]
sub ecx, 1
mov dword [esp + 0x48], ecx
jns 0x100675e0
mov ebp, dword [esp + 0x5c]
mov edi, dword [esp + 0x44]
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x24]
sub ecx, dword [esp + 0xb4]
add edi, 1
cmp edi, ecx
mov dword [esp + 0x44], edi
jle 0x10067531
jmp 0x100683f9
cmp eax, 3
jne 0x100683f9
mov edx, dword [esp + 0x38]
mov edi, dword [edx + 0x24]
sub edi, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x100683f9
nop
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x20]
sub ecx, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x100683ec
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0xd4]
imul ebp, eax
imul edi, eax
mov ebx, dword [esp + 0xa8]
imul edx, eax
lea edx, [edx + ebx*4]
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x8c], edx
mov edx, dword [esp + 0x98]
imul edx, eax
lea edx, [edx + ebx*4]
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0xd8]
lea edx, [ebp + edx*4]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x9c]
imul edx, eax
mov eax, dword [esp + 0xa0]
lea edx, [edx + eax*4]
movzx eax, byte [esp + 0x6a]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x84], edx
movzx edx, ah
and eax, 0xff
mov dword [esp + 0x80], edi
mov dword [esp + 0x54], edx
mov dword [esp + 0x4c], eax
jmp 0x10067d67
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
push eax
pop eax
push edx
pop edx
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
push eax
pop eax
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov ecx, ecx
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov edi, edi
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
mov ch, ch
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
push eax
pop eax
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov esi, esi
and eax, 0xff
mov dword [esp + 0x14], eax
nop
push ecx
pop ecx
mov bh, bh
mov edx, edx
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
push eax
pop eax
mov ebp, dword [esp + 0x18]
sub ebp, dword [esp + 0x24]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x2c], eax
mov dl, dl
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
push ebx
pop ebx
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10067e35
mov dword [esp + 0x1c], ecx
mov edx, edx
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10067e55
mov dword [esp + 0x18], ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10067e75
mov dword [esp + 0x14], ecx
mov ebp, ebp
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x100683d3
cmp ecx, dword [esp + 0x1c]
jg 0x100683d3
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x100683d3
cmp ecx, dword [esp + 0x18]
jg 0x100683d3
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x100683d3
cmp ecx, dword [esp + 0x14]
jg 0x100683d3
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov eax, edx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov esi, esi
and edx, 0xff
mov dword [esp + 0x14], edx
nop
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
push ecx
pop ecx
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
mov bh, bh
and edx, 0xff
mov edx, edx
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
push eax
pop eax
mov ebp, dword [esp + 0x18]
sub ebp, dword [esp + 0x24]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x34], ecx
mov dl, dl
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ebp, ecx
push ebx
pop ebx
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10067f68
mov dword [esp + 0x1c], eax
mov edx, edx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10067f88
mov dword [esp + 0x18], ecx
push ebx
pop ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10067fa8
mov dword [esp + 0x14], ecx
mov ebp, ebp
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x100683d3
cmp eax, dword [esp + 0x1c]
jg 0x100683d3
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x100683d3
cmp eax, dword [esp + 0x18]
jg 0x100683d3
cmp edx, ebp
jl 0x100683d3
cmp edx, dword [esp + 0x14]
jg 0x100683d3
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx edx, bh
mov esi, esi
and ebx, 0xff
mov dword [esp + 0x18], ebx
nop
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
mov bh, bh
mov ebp, ecx
and ebp, 0xff
mov edx, edx
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
push eax
pop eax
mov ecx, edx
sub ecx, dword [esp + 0x24]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x34], ebx
mov dl, dl
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
push ebx
pop ebx
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x1006808e
mov dword [esp + 0x14], eax
mov edx, edx
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x100680a2
mov dword [esp + 0x1c], edx
push ebx
pop ebx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x100680bd
mov edx, ecx
mov ebp, ebp
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x100683d3
cmp ecx, dword [esp + 0x14]
jg 0x100683d3
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x100683d3
cmp eax, dword [esp + 0x1c]
jg 0x100683d3
cmp ebp, ebx
jl 0x100683d3
cmp ebp, edx
jg 0x100683d3
push eax
pop eax
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
push edx
pop edx
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
push eax
pop eax
movzx ebx, ch
mov esi, esi
and ecx, 0xff
mov dword [esp + 0x18], ecx
nop
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
mov bh, bh
mov ebp, ecx
and ebp, 0xff
mov edx, edx
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
push eax
pop eax
mov edx, ebx
sub edx, dword [esp + 0x24]
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x34], ecx
mov dl, dl
mov edx, dword [esp + 0x18]
sub edx, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and edx, ecx
push ebx
pop ebx
add eax, esi
cmp eax, 0xff
jle 0x100681a3
mov eax, 0xff
mov edx, edx
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100681bf
mov dword [esp + 0x14], ebx
push ebx
pop ebx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x100681da
mov ebx, ecx
mov ebp, ebp
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x100683d3
cmp ecx, eax
jg 0x100683d3
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x100683d3
cmp ecx, dword [esp + 0x14]
jg 0x100683d3
cmp ebp, edx
jl 0x100683d3
cmp ebp, ebx
jg 0x100683d3
mov edi, edi
xor eax, eax
cmp dword [esp + 0x70], eax
jne 0x10068330
cmp dword [esp + 0x6c], eax
jne 0x10068330
cmp esi, eax
jne 0x10068330
cmp dword [esp + 0x24], eax
jne 0x10068330
cmp dword [esp + 0x20], eax
jne 0x10068330
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x100683c2
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
lea esp, [esp]
push eax
pop eax
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x10068298
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x1006829c
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10068284
test eax, eax
je 0x100682f9
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x100682eb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100682f9
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x100682eb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100682f9
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x100682eb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100682f9
movzx eax, byte [ecx]
movzx ebx, byte [edx]
sub ebx, eax
je 0x100682f9
test ebx, ebx
mov eax, 1
jg 0x100682fb
or eax, 0xffffffff
jmp 0x100682fb
xor eax, eax
test eax, eax
jne 0x100683c2
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
add edx, dword [esp + 0x50]
add ebp, dword [esp + 0x40]
add eax, 1
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edx
jl 0x10068270
jmp 0x100683c2
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x100683c2
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
lea esp, [esp]
mov dl, dl
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x100683a2
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x28]
push edx
mov edx, dword [edi]
push eax
push ecx
mov ecx, dword [ebp + ebx*4]
push esi
call fcn.1004af40
add esp, 0x14
test eax, eax
je 0x10068399
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x10068361
jmp 0x100683a2
cmp ebx, dword [esp + 0xb0]
jl 0x100683c2
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x50]
add ebp, dword [esp + 0x40]
add dword [esp + 0x14], edx
add eax, 1
cmp eax, dword [esp + 0xb4]
mov dword [esp + 0x1c], eax
jl 0x10068350
mov eax, dword [esp + 0xb4]
cmp dword [esp + 0x1c], eax
je 0x1006866b
mov ecx, dword [esp + 0x48]
sub ecx, 1
mov dword [esp + 0x48], ecx
jns 0x10067d60
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 0x5c]
sub edi, 1
mov dword [esp + 0x44], edi
jns 0x10067cb0
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x10], 0
jne 0x10068413
mov ecx, dword [esp + 0x94]
cmp dword [ecx + 0x32fc], 0
jne 0x10068424
mov edx, dword [esp + 0x90]
push edx
call fcn.100fac4f
add esp, 4
nop
cmp dword [esi + 0x18], 0
je 0x10068455
mov eax, dword [esp + 0x30]
push eax
call fcn.100fac4f
add esp, 4
mov bl, bl
jmp 0x10068455
cmp dword [esi + 0x10], 0
jne 0x1006844a
cmp dword [ebp + 0x32fc], 0
jne 0x10068455
push eax
call fcn.100fac4f
add esp, 4
mov ecx, ecx
mov edi, dword [esp + 0xe8]
mov esi, dword [esp + 0x38]
add edi, 1
cmp edi, dword [esi + 0xc]
mov dword [esp + 0xe8], edi
jle 0x10066120
jmp 0x1006857b
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0xec]
lea esi, [ecx + edx]
push ebx
pop ebx
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xf0]
lea edi, [eax + ecx]
mov cl, cl
mov ebx, ebx
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x100684b4
mov edx, dword [esp + 0x94]
cmp dword [edx + 0x32fc], 0
jne 0x100684c6
mov eax, dword [esp + 0x90]
push eax
call fcn.100fac4f
add esp, 4
push eax
pop eax
cmp dword [ebx + 0x18], 0
je 0x100684db
mov ecx, dword [esp + 0x30]
push ecx
call fcn.100fac4f
add esp, 4
mov dl, dl
push ebx
pop ebx
mov cl, 0x25
mov al, 0x64
mov dl, 0x7c
mov byte [esp + 0xfc], cl
mov byte [esp + 0xfd], al
mov byte [esp + 0xfe], dl
mov byte [esp + 0xff], cl
mov byte [esp + 0x100], al
mov byte [esp + 0x101], dl
mov byte [esp + 0x102], cl
mov byte [esp + 0x103], al
mov byte [esp + 0x104], 0
mov bh, bh
mov edx, dword [esp + 0xe8]
push edi
push esi
push edx
lea eax, [esp + 0x108]
push eax
lea ecx, [esp + 0x118]
push ecx
call fcn.100fca00
add esp, 0x14
push eax
pop eax
lea eax, [esp + 0x108]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10068553
mov ecx, dword [ebx + 0x168]
sub eax, edx
lea edx, [esp + eax + 0x108]
push edx
lea eax, [esp + 0x10c]
push eax
call fcn.1000b340
mov ebp, ebp
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1fc]
pop esi
xor ecx, esp
call fcn.100fb12a
add esp, 0x1fc
ret
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0xec]
lea esi, [edx + eax]
mov dh, dh
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0xf0]
lea edi, [ecx + edx]
push edx
pop edx
mov dh, dh
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x100685d0
mov eax, dword [esp + 0x94]
cmp dword [eax + 0x32fc], 0
jne 0x100685e2
mov ecx, dword [esp + 0x90]
push ecx
call fcn.100fac4f
add esp, 4
mov ebx, ebx
cmp dword [ebx + 0x18], 0
je 0x100684db
mov edx, dword [esp + 0x30]
push edx
call fcn.100fac4f
add esp, 4
push eax
pop eax
jmp 0x100684db
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xec]
lea esi, [eax + ecx]
mov dh, dh
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0xf0]
lea edi, [edx + eax]
mov al, al
push edx
pop edx
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x1006863c
mov ecx, dword [esp + 0x94]
cmp dword [ecx + 0x32fc], 0
jne 0x1006864d
mov edx, dword [esp + 0x90]
push edx
call fcn.100fac4f
add esp, 4
nop
cmp dword [ebx + 0x18], 0
je 0x100684db
mov eax, dword [esp + 0x30]
push eax
call fcn.100fac4f
add esp, 4
mov ebp, ebp
jmp 0x100684db
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0xec]
lea esi, [ecx + edx]
mov ch, ch
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xf0]
lea edi, [eax + ecx]
mov cl, cl
mov eax, eax
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x100686a7
mov edx, dword [esp + 0x94]
cmp dword [edx + 0x32fc], 0
jne 0x100686b9
mov eax, dword [esp + 0x90]
push eax
call fcn.100fac4f
add esp, 4
mov edx, edx
cmp dword [ebx + 0x18], 0
je 0x100684db
mov ecx, dword [esp + 0x30]
push ecx
call fcn.100fac4f
add esp, 4
mov eax, eax
jmp 0x100684db
jmp fcn.100e9bf9