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

Disassembly:
sub esp, 0x1fc
mov eax, dword [0x101c52b4]
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
mov cl, cl
mov ecx, dword [esi]
mov dword [esp + 0x88], ecx
push edx
pop edx
mov edx, edx
mov edx, dword [esi + 0x44]
mov dword [esp + 0x44], edx
mov ah, ah
mov eax, dword [esi + 0x50]
mov dword [esp + 0xd8], eax
mov esi, esi
mov ecx, dword [esi + 0x58]
mov dword [esp + 0xe8], ecx
mov ebx, ebx
push eax
pop eax
fld qword [esi + 0x160]
fstp qword [esp + 0xf0]
mov al, al
mov edx, dword [esi + 0x48]
mov dword [esp + 0xe0], edx
mov ch, ch
mov eax, dword [esi + 0x4c]
mov dword [esp + 0xe4], eax
mov eax, eax
push ebx
pop ebx
push edx
pop edx
mov bh, bh
mov ecx, dword [esi + 0x168]
push 0
push 0x10178a34
call fcn.1000a180
mov ah, ah
mov esi, esi
mov ebx, ebx
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0xc]
mov dword [esp + 0xdc], eax
jg 0x10079bb7
push ebx
push ebp
push edi
mov edi, eax
mov al, al
mov dword [esp + 0x30], 0
mov esi, esi
mov dh, dh
push edx
pop edx
cmp dword [esi + 0x16c], 0
jne 0x10079bb4
mov ebp, dword [esp + 0x94]
lea ebx, [ebp + 0x325c]
push 0x3e8
push ebx
call fcn.10047da0
add esp, 8
mov ah, ah
test edi, edi
jl 0x10079d10
mov eax, dword [esp + 0xf8]
cmp edi, dword [eax + 8]
jge 0x10079d10
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.10076830
add esp, 0x1c
test eax, eax
push ebx
jne 0x100777e2
call fcn.10047e30
add esp, 4
mov cl, cl
jmp 0x10079a95
call fcn.10047e30
add esp, 4
mov bh, bh
mov eax, dword [esp + 0x30]
mov dword [esp + 0x90], eax
mov edx, edx
mov ebx, dword [esp + 0xb0]
cmp ebx, dword [esi + 0x20]
jg 0x10079a7b
mov edi, dword [esp + 0xb4]
cmp edi, dword [esi + 0x24]
jg 0x10079a7b
cmp dword [esi + 0x18], 0
jne 0x1007785b
test edi, edi
jle 0x10077929
mov edx, eax
mov esi, edi
mov edi, dword [esp + 0x40]
add edx, 3
test ebx, ebx
jle 0x1007784f
mov eax, edx
mov ecx, ebx
lea ebx, [ebx]
push ebx
pop ebx
mov byte [eax], 0
mov ch, ch
add eax, 4
sub ecx, 1
jne 0x10077840
add edx, edi
sub esi, 1
jne 0x10077832
jmp 0x10077929
mov eax, edi
imul eax, dword [esp + 0x40]
push eax
call fcn.1010df39
add esp, 4
mov dword [esp + 0x30], eax
mov cl, cl
test eax, eax
jne 0x1007789d
cmp dword [esi + 0x10], eax
jne 0x10077886
cmp dword [ebp + 0x32f4], eax
jne 0x10079a95
mov ecx, dword [esp + 0x90]
push ecx
call fcn.1010dffc
add esp, 4
mov ecx, ecx
jmp 0x10079a95
test edi, edi
jle 0x10077929
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
test ebx, ebx
jle 0x10077916
mov esi, dword [esp + 0x74]
mov ecx, dword [esp + 0x70]
mov ebp, ebx
push eax
pop eax
mov cl, cl
movzx eax, byte [ecx + 1]
push ebx
pop ebx
movzx edx, byte [ecx]
mov esi, esi
movzx edi, byte [ecx - 1]
mov al, al
add edi, edx
add edi, eax
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
mov edi, edi
movzx eax, dl
mov edx, eax
shl edx, 8
or edx, eax
shl edx, 8
or edx, eax
mov dword [esi], edx
mov bh, bh
add ecx, 4
add esi, 4
sub ebp, 1
jne 0x100778d4
mov eax, dword [esp + 0x40]
add dword [esp + 0x74], eax
add dword [esp + 0x70], eax
sub dword [esp + 0x14], 1
jne 0x100778c6
fld1
fsub qword [esp + 0xfc]
fnstcw word [esp + 0x20]
fmul qword [0x10179910]
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]
push ebx
pop ebx
mov edi, edi
mov esi, esi
mov dl, dl
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov bh, bh
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x3c]
add eax, 0x5c
push 0x101798c0
push eax
call fcn.10110865
add esp, 0xc
xchg ebx, eax
xchg ebx, eax
movzx esi, byte [esp + 0x12]
add esi, edi
push ebx
pop ebx
movzx eax, byte [esp + 0x11]
add eax, edi
mov dword [esp + 0x24], eax
push ecx
pop ecx
mov eax, dword [esp + 0x10]
and eax, 0xff
add eax, edi
mov dword [esp + 0x20], eax
mov cl, cl
mov eax, eax
mov edi, edi
mov edx, edx
push ecx
pop ecx
push eax
pop eax
mov dword [esp + 0xd4], ebp
mov dword [esp + 0xa8], ebp
mov edx, edx
lea eax, [ebx - 1]
mov dword [esp + 0xa4], eax
push ebx
pop ebx
mov dword [esp + 0x98], ebp
mov edx, edx
mov dword [esp + 0xd8], ebp
mov edx, edx
mov edx, dword [esp + 0xb4]
lea ebp, [edx - 1]
mov dword [esp + 0x5c], ebp
push eax
pop eax
mov dword [esp + 0xa0], eax
mov bh, bh
mov dword [esp + 0x9c], ebp
mov ebx, ebx
mov eax, dword [esp + 0x30]
mov edi, dword [eax]
mov dword [esp + 0x68], edi
mov ebp, ebp
mov ecx, dword [eax + ebx*4 - 4]
mov dword [esp + 0x64], ecx
mov edx, edx
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 dl, dl
mov edx, dword [esp + 0x30]
lea eax, [eax + ebx*4]
mov eax, dword [eax + edx - 4]
mov dword [esp + 0x60], eax
push ecx
pop ecx
mov dword [esp + 0x6c], 0
mov ecx, ecx
mov edx, edi
mov dword [esp + 0x74], edx
mov dh, dh
cmp edi, ecx
jne 0x10077c3b
mov edi, dword [esp + 0x58]
cmp ecx, edi
jne 0x10077c3b
cmp edi, eax
jne 0x10077c3b
mov dword [esp + 0x6c], 1
push ecx
pop ecx
xor ecx, ecx
cmp dword [esp + 0xb4], ecx
jle 0x10077ae8
mov edi, dword [esp + 0x30]
mov dword [esp + 0x14], edi
xor eax, eax
test ebx, ebx
jle 0x10077ad0
mov edi, edi
mov dh, dh
cmp dword [edi], edx
jne 0x10077ab2
add eax, 1
add edi, 4
cmp eax, ebx
jl 0x10077aa0
jmp 0x10077ad0
mov edi, dword [edi]
mov dword [esp + 0x68], edi
mov bl, bl
mov dword [esp + 0xa8], eax
mov eax, eax
mov dword [esp + 0xd4], ecx
mov ch, ch
cmp eax, ebx
jl 0x10077ae8
mov edi, dword [esp + 0x14]
add edi, dword [esp + 0x40]
add ecx, 1
cmp ecx, dword [esp + 0xb4]
mov dword [esp + 0x14], edi
jl 0x10077a98
xor edi, edi
cmp dword [esp + 0xb4], edi
jle 0x10077b58
xor ecx, ecx
mov dword [esp + 0x14], ecx
lea esp, [esp]
lea eax, [ebx - 1]
test eax, eax
jl 0x10077b40
lea ecx, [ecx + eax*4]
add ecx, dword [esp + 0x30]
mov edi, edi
mov cl, cl
cmp dword [ecx], edx
jne 0x10077b22
sub eax, 1
sub ecx, 4
test eax, eax
jge 0x10077b10
jmp 0x10077b40
mov ecx, dword [ecx]
mov dword [esp + 0x64], ecx
mov ecx, ecx
mov dword [esp + 0xa4], eax
push ecx
pop ecx
mov dword [esp + 0x98], edi
xchg ebx, eax
xchg ebx, eax
test eax, eax
jge 0x10077b58
mov ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x40]
add edi, 1
cmp edi, dword [esp + 0xb4]
mov dword [esp + 0x14], ecx
jl 0x10077b00
mov edi, dword [esp + 0xb4]
add edi, 0xffffffff
test edi, edi
jl 0x10077bc8
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 0x10077bb5
push eax
pop eax
cmp dword [ecx], edx
jne 0x10077b98
add eax, 1
add ecx, 4
cmp eax, ebx
jl 0x10077b86
jmp 0x10077bb1
mov ecx, dword [ecx]
mov dword [esp + 0x58], ecx
push edx
pop edx
mov dword [esp + 0xd8], eax
mov ah, ah
mov ebp, edi
mov ah, ah
cmp eax, ebx
jl 0x10077bc4
mov ecx, dword [esp + 0x5c]
add ecx, dword [esp + 0x1c]
sub edi, 1
test edi, edi
mov dword [esp + 0x5c], ecx
jge 0x10077b80
mov dword [esp + 0x5c], ebp
mov edi, dword [esp + 0xb4]
add edi, 0xffffffff
test edi, edi
jl 0x10077c3b
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 0x10077c30
lea ecx, [ebx + eax*4]
add ecx, dword [esp + 0x30]
nop
mov bl, bl
cmp dword [ecx], edx
jne 0x10077c12
sub eax, 1
sub ecx, 4
test eax, eax
jge 0x10077c00
jmp 0x10077c30
mov ecx, dword [ecx]
mov dword [esp + 0x60], ecx
mov dh, dh
mov dword [esp + 0xa0], eax
mov ebp, ebp
mov dword [esp + 0x9c], edi
push ecx
pop ecx
test eax, eax
jge 0x10077c3b
add ebx, dword [esp + 0x1c]
sub edi, 1
test edi, edi
jge 0x10077bf0
mov eax, dword [esp + 0xf4]
test eax, eax
jne 0x100783ce
mov edx, dword [esp + 0x38]
mov eax, dword [edx + 0x24]
xor edi, edi
sub eax, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x10079a39
mov edx, dword [esp + 0x38]
mov eax, dword [edx + 0x20]
xor ecx, ecx
sub eax, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x100783ac
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 0x10077d17
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
mov esi, esi
mov eax, eax
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
mov bl, bl
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
nop
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
push eax
pop eax
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0xdc], ecx
mov ch, ch
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov dh, dh
movzx ebp, ah
mov dword [esp + 0x14], ebp
mov cl, cl
and eax, 0xff
mov dword [esp + 0x1c], eax
mov ch, ch
mov cl, cl
push ecx
pop ecx
mov esi, esi
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x34], eax
mov ah, ah
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
mov bl, bl
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10077de5
mov dword [esp + 0x18], ecx
mov bl, bl
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10077e05
mov dword [esp + 0x14], ecx
mov edx, edx
mov ecx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10077e25
mov dword [esp + 0x1c], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x88]
cmp ecx, dword [esp + 0x34]
jl 0x10078383
cmp ecx, dword [esp + 0x18]
jg 0x10078383
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x4c]
jl 0x10078383
cmp ecx, dword [esp + 0x14]
jg 0x10078383
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jl 0x10078383
cmp ecx, dword [esp + 0x1c]
jg 0x10078383
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov cl, cl
and edx, 0xff
mov dword [esp + 0x14], edx
mov ch, ch
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x4c], edx
mov cl, cl
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x54], ecx
push ecx
pop ecx
and edx, 0xff
mov esi, esi
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x34], ecx
mov ah, ah
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
mov bl, bl
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10077f19
mov dword [esp + 0x1c], eax
mov bl, bl
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10077f39
mov dword [esp + 0x18], ecx
mov edx, edx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10077f59
mov dword [esp + 0x14], ecx
push ecx
pop ecx
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x34]
jl 0x10078383
cmp eax, dword [esp + 0x1c]
jg 0x10078383
mov eax, dword [esp + 0x54]
cmp eax, dword [esp + 0x28]
jl 0x10078383
cmp eax, dword [esp + 0x18]
jg 0x10078383
cmp edx, ebp
jl 0x10078383
cmp edx, dword [esp + 0x14]
jg 0x10078383
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx edx, bh
mov cl, cl
and ebx, 0xff
mov dword [esp + 0x18], ebx
mov ch, ch
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
mov cl, cl
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x4c], ebx
push ecx
pop ecx
mov ebp, ecx
and ebp, 0xff
mov esi, esi
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x54], ebx
mov ah, ah
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
mov bl, bl
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x10078040
mov dword [esp + 0x14], eax
mov bl, bl
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x10078054
mov dword [esp + 0x1c], edx
mov edx, edx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x1007806f
mov edx, ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x54]
jl 0x10078383
cmp ecx, dword [esp + 0x14]
jg 0x10078383
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x34]
jl 0x10078383
cmp eax, dword [esp + 0x1c]
jg 0x10078383
cmp ebp, ebx
jl 0x10078383
cmp ebp, edx
jg 0x10078383
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov ecx, dword [esp + 0xdc]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx ebx, ch
mov cl, cl
and ecx, 0xff
mov dword [esp + 0x18], ecx
mov ch, ch
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0xdc], ecx
mov cl, cl
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x54], edx
push ecx
pop ecx
mov ebp, ecx
and ebp, 0xff
mov esi, esi
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x28], ecx
mov ah, ah
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
mov bl, bl
add eax, esi
cmp eax, 0xff
jle 0x10078159
mov eax, 0xff
mov bl, bl
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10078175
mov dword [esp + 0x14], ebx
mov edx, edx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x10078190
mov ebx, ecx
push ecx
pop ecx
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10078383
cmp ecx, eax
jg 0x10078383
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x4c]
jl 0x10078383
cmp ecx, dword [esp + 0x14]
jg 0x10078383
cmp ebp, edx
jl 0x10078383
cmp ebp, ebx
jg 0x10078383
mov ch, ch
xor eax, eax
cmp dword [esp + 0x70], eax
jne 0x100782e2
cmp dword [esp + 0x6c], eax
jne 0x100782e2
cmp esi, eax
jne 0x100782e2
cmp dword [esp + 0x24], eax
jne 0x100782e2
cmp dword [esp + 0x20], eax
jne 0x100782e2
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x10078372
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
push eax
pop eax
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x1007824a
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x1007824e
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10078236
test eax, eax
je 0x100782ab
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x1007829d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100782ab
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x1007829d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100782ab
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x1007829d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100782ab
movzx ebx, byte [edx]
movzx edx, byte [ecx]
sub ebx, edx
je 0x100782ab
test ebx, ebx
mov eax, 1
jg 0x100782ad
or eax, 0xffffffff
jmp 0x100782ad
xor eax, eax
test eax, eax
jne 0x10078372
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 0x10078222
jmp 0x10078372
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x10078372
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
jmp 0x10078300
mov al, al
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x10078352
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.100527c0
add esp, 0x14
test eax, eax
je 0x10078349
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x10078311
jmp 0x10078352
cmp ebx, dword [esp + 0xb0]
jl 0x10078372
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 0x10078300
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0xb4]
je 0x10079ab8
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 0x10077d10
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 0x10077c64
jmp 0x10079a39
cmp eax, 1
jne 0x10078b4e
mov edx, dword [esp + 0x38]
mov edi, dword [edx + 0x24]
sub edi, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x10079a39
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 0x10078b3c
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 0x100784a7
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
push edx
pop edx
mov ebp, ebp
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
mov dh, dh
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov bh, bh
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov cl, cl
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
mov dh, dh
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov dh, dh
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov cl, cl
and eax, 0xff
mov dword [esp + 0x14], eax
mov ch, ch
mov cl, cl
push ecx
pop ecx
mov esi, esi
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
mov ah, ah
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
mov bl, bl
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10078576
mov dword [esp + 0x1c], ecx
mov bl, bl
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10078596
mov dword [esp + 0x18], ecx
mov edx, edx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100785b6
mov dword [esp + 0x14], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10078b13
cmp ecx, dword [esp + 0x1c]
jg 0x10078b13
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x10078b13
cmp ecx, dword [esp + 0x18]
jg 0x10078b13
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x10078b13
cmp ecx, dword [esp + 0x14]
jg 0x10078b13
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov cl, cl
and edx, 0xff
mov dword [esp + 0x14], edx
mov ch, ch
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
mov cl, cl
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
push ecx
pop ecx
and edx, 0xff
mov esi, esi
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
mov ah, ah
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
mov bl, bl
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x100786aa
mov dword [esp + 0x1c], eax
mov bl, bl
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x100786ca
mov dword [esp + 0x18], ecx
mov edx, edx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100786ea
mov dword [esp + 0x14], ecx
push ecx
pop ecx
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x10078b13
cmp eax, dword [esp + 0x1c]
jg 0x10078b13
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10078b13
cmp eax, dword [esp + 0x18]
jg 0x10078b13
cmp edx, ebp
jl 0x10078b13
cmp edx, dword [esp + 0x14]
jg 0x10078b13
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx edx, bh
mov cl, cl
and ebx, 0xff
mov dword [esp + 0x18], ebx
mov ch, ch
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
mov cl, cl
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
push ecx
pop ecx
mov ebp, ecx
and ebp, 0xff
mov esi, esi
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
mov ah, ah
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
mov bl, bl
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x100787d1
mov dword [esp + 0x14], eax
mov bl, bl
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x100787e5
mov dword [esp + 0x1c], edx
mov edx, edx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x10078800
mov edx, ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10078b13
cmp ecx, dword [esp + 0x14]
jg 0x10078b13
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10078b13
cmp eax, dword [esp + 0x1c]
jg 0x10078b13
cmp ebp, ebx
jl 0x10078b13
cmp ebp, edx
jg 0x10078b13
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx ebx, ch
mov cl, cl
and ecx, 0xff
mov dword [esp + 0x18], ecx
mov ch, ch
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
mov cl, cl
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
push ecx
pop ecx
mov ebp, ecx
and ebp, 0xff
mov esi, esi
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
mov ah, ah
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
mov bl, bl
add eax, esi
cmp eax, 0xff
jle 0x100788e7
mov eax, 0xff
mov bl, bl
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10078903
mov dword [esp + 0x14], ebx
mov edx, edx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x1007891e
mov ebx, ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10078b13
cmp ecx, eax
jg 0x10078b13
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x10078b13
cmp ecx, dword [esp + 0x14]
jg 0x10078b13
cmp ebp, edx
jl 0x10078b13
cmp ebp, ebx
jg 0x10078b13
mov bh, bh
xor ecx, ecx
cmp dword [esp + 0x70], ecx
jne 0x10078a70
cmp dword [esp + 0x6c], ecx
jne 0x10078a70
cmp esi, ecx
jne 0x10078a70
cmp dword [esp + 0x24], ecx
jne 0x10078a70
cmp dword [esp + 0x20], ecx
jne 0x10078a70
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10078b02
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
lea ecx, [ecx]
xchg ebx, eax
xchg ebx, eax
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x100789d8
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x100789dc
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x100789c4
test eax, eax
je 0x10078a39
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x10078a2b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10078a39
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x10078a2b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10078a39
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x10078a2b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10078a39
movzx eax, byte [ecx]
movzx ebx, byte [edx]
sub ebx, eax
je 0x10078a39
test ebx, ebx
mov eax, 1
jg 0x10078a3b
or eax, 0xffffffff
jmp 0x10078a3b
xor eax, eax
test eax, eax
jne 0x10078b02
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 0x100789b0
jmp 0x10078b02
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10078b02
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 0x10078ae2
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.100527c0
add esp, 0x14
test eax, eax
je 0x10078ad9
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x10078aa1
jmp 0x10078ae2
cmp ebx, dword [esp + 0xb0]
jl 0x10078b02
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 0x10078a90
mov eax, dword [esp + 0xb4]
cmp dword [esp + 0x1c], eax
je 0x10079bcd
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 0x100784a0
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 0x5c]
sub edi, 1
mov dword [esp + 0x44], edi
jns 0x100783f0
jmp 0x10079a39
cmp eax, 2
jne 0x100792ce
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + 0x24]
xor edi, edi
sub edx, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x10079a39
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x20]
sub ecx, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x100792ac
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 0x10078c27
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
mov bh, bh
mov edx, edx
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
mov bl, bl
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov eax, eax
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
push edx
pop edx
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
push ecx
pop ecx
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov dh, dh
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov cl, cl
and eax, 0xff
mov dword [esp + 0x14], eax
mov ch, ch
mov cl, cl
push ecx
pop ecx
mov esi, esi
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
mov ah, ah
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
mov bl, bl
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10078cf6
mov dword [esp + 0x1c], ecx
mov bl, bl
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10078d16
mov dword [esp + 0x18], ecx
mov edx, edx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10078d36
mov dword [esp + 0x14], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10079293
cmp ecx, dword [esp + 0x1c]
jg 0x10079293
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x10079293
cmp ecx, dword [esp + 0x18]
jg 0x10079293
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x10079293
cmp ecx, dword [esp + 0x14]
jg 0x10079293
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov cl, cl
and edx, 0xff
mov dword [esp + 0x14], edx
mov ch, ch
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
mov cl, cl
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
push ecx
pop ecx
and edx, 0xff
mov esi, esi
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
mov ah, ah
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
mov bl, bl
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10078e2a
mov dword [esp + 0x1c], eax
mov bl, bl
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10078e4a
mov dword [esp + 0x18], ecx
mov edx, edx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10078e6a
mov dword [esp + 0x14], ecx
push ecx
pop ecx
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x10079293
cmp eax, dword [esp + 0x1c]
jg 0x10079293
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10079293
cmp eax, dword [esp + 0x18]
jg 0x10079293
cmp edx, ebp
jl 0x10079293
cmp edx, dword [esp + 0x14]
jg 0x10079293
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx edx, bh
mov cl, cl
and ebx, 0xff
mov dword [esp + 0x18], ebx
mov ch, ch
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
mov cl, cl
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
push ecx
pop ecx
mov ebp, ecx
and ebp, 0xff
mov esi, esi
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
mov ah, ah
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
mov bl, bl
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x10078f51
mov dword [esp + 0x14], eax
mov bl, bl
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x10078f65
mov dword [esp + 0x1c], edx
mov edx, edx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x10078f80
mov edx, ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10079293
cmp ecx, dword [esp + 0x14]
jg 0x10079293
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10079293
cmp eax, dword [esp + 0x1c]
jg 0x10079293
cmp ebp, ebx
jl 0x10079293
cmp ebp, edx
jg 0x10079293
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx ebx, ch
mov cl, cl
and ecx, 0xff
mov dword [esp + 0x18], ecx
mov ch, ch
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
mov cl, cl
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
push ecx
pop ecx
mov ebp, ecx
and ebp, 0xff
mov esi, esi
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
mov ah, ah
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
mov bl, bl
add eax, esi
cmp eax, 0xff
jle 0x10079067
mov eax, 0xff
mov bl, bl
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10079083
mov dword [esp + 0x14], ebx
mov edx, edx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x1007909e
mov ebx, ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10079293
cmp ecx, eax
jg 0x10079293
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x10079293
cmp ecx, dword [esp + 0x14]
jg 0x10079293
cmp ebp, edx
jl 0x10079293
cmp ebp, ebx
jg 0x10079293
push edx
pop edx
xor ecx, ecx
cmp dword [esp + 0x70], ecx
jne 0x100791f0
cmp dword [esp + 0x6c], ecx
jne 0x100791f0
cmp esi, ecx
jne 0x100791f0
cmp dword [esp + 0x24], ecx
jne 0x100791f0
cmp dword [esp + 0x20], ecx
jne 0x100791f0
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10079282
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
lea ecx, [ecx]
push edx
pop edx
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x10079158
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x1007915c
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10079144
test eax, eax
je 0x100791b9
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x100791ab
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100791b9
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x100791ab
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100791b9
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x100791ab
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x100791b9
movzx ebx, byte [edx]
movzx edx, byte [ecx]
sub ebx, edx
je 0x100791b9
test ebx, ebx
mov eax, 1
jg 0x100791bb
or eax, 0xffffffff
jmp 0x100791bb
xor eax, eax
test eax, eax
jne 0x10079282
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 0x10079130
jmp 0x10079282
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10079282
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
lea esp, [esp]
mov esi, esi
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x10079262
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.100527c0
add esp, 0x14
test eax, eax
je 0x10079259
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x10079221
jmp 0x10079262
cmp ebx, dword [esp + 0xb0]
jl 0x10079282
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 0x10079210
mov edx, dword [esp + 0xb4]
cmp dword [esp + 0x1c], edx
je 0x10079c38
mov ecx, dword [esp + 0x48]
sub ecx, 1
mov dword [esp + 0x48], ecx
jns 0x10078c20
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 0x10078b71
jmp 0x10079a39
cmp eax, 3
jne 0x10079a39
mov edx, dword [esp + 0x38]
mov edi, dword [edx + 0x24]
sub edi, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x10079a39
nop
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x20]
sub ecx, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x10079a2c
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 0x100793a7
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
mov ecx, ecx
mov ebp, ebp
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
mov cl, cl
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
push eax
pop eax
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov eax, eax
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
mov ebp, ebp
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov dh, dh
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov cl, cl
and eax, 0xff
mov dword [esp + 0x14], eax
mov ch, ch
mov cl, cl
push ecx
pop ecx
mov esi, esi
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
mov ah, ah
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
mov bl, bl
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10079476
mov dword [esp + 0x1c], ecx
mov bl, bl
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10079496
mov dword [esp + 0x18], ecx
mov edx, edx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100794b6
mov dword [esp + 0x14], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10079a13
cmp ecx, dword [esp + 0x1c]
jg 0x10079a13
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x10079a13
cmp ecx, dword [esp + 0x18]
jg 0x10079a13
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x10079a13
cmp ecx, dword [esp + 0x14]
jg 0x10079a13
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov cl, cl
and edx, 0xff
mov dword [esp + 0x14], edx
mov ch, ch
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
mov cl, cl
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
push ecx
pop ecx
and edx, 0xff
mov esi, esi
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
mov ah, ah
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
mov bl, bl
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x100795aa
mov dword [esp + 0x1c], eax
mov bl, bl
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x100795ca
mov dword [esp + 0x18], ecx
mov edx, edx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100795ea
mov dword [esp + 0x14], ecx
push ecx
pop ecx
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x10079a13
cmp eax, dword [esp + 0x1c]
jg 0x10079a13
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10079a13
cmp eax, dword [esp + 0x18]
jg 0x10079a13
cmp edx, ebp
jl 0x10079a13
cmp edx, dword [esp + 0x14]
jg 0x10079a13
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx edx, bh
mov cl, cl
and ebx, 0xff
mov dword [esp + 0x18], ebx
mov ch, ch
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
mov cl, cl
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
push ecx
pop ecx
mov ebp, ecx
and ebp, 0xff
mov esi, esi
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
mov ah, ah
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
mov bl, bl
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x100796d1
mov dword [esp + 0x14], eax
mov bl, bl
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x100796e5
mov dword [esp + 0x1c], edx
mov edx, edx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x10079700
mov edx, ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10079a13
cmp ecx, dword [esp + 0x14]
jg 0x10079a13
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10079a13
cmp eax, dword [esp + 0x1c]
jg 0x10079a13
cmp ebp, ebx
jl 0x10079a13
cmp ebp, edx
jg 0x10079a13
xchg ebx, eax
xchg ebx, eax
mov ch, ch
mov bl, bl
mov dh, dh
mov ebx, ebx
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov dh, dh
movzx ebx, ch
mov cl, cl
and ecx, 0xff
mov dword [esp + 0x18], ecx
mov ch, ch
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
mov cl, cl
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
push ecx
pop ecx
mov ebp, ecx
and ebp, 0xff
mov esi, esi
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
mov ah, ah
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
mov bl, bl
add eax, esi
cmp eax, 0xff
jle 0x100797e7
mov eax, 0xff
mov bl, bl
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10079803
mov dword [esp + 0x14], ebx
mov edx, edx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x1007981e
mov ebx, ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10079a13
cmp ecx, eax
jg 0x10079a13
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x10079a13
cmp ecx, dword [esp + 0x14]
jg 0x10079a13
cmp ebp, edx
jl 0x10079a13
cmp ebp, ebx
jg 0x10079a13
push edx
pop edx
xor eax, eax
cmp dword [esp + 0x70], eax
jne 0x10079970
cmp dword [esp + 0x6c], eax
jne 0x10079970
cmp esi, eax
jne 0x10079970
cmp dword [esp + 0x24], eax
jne 0x10079970
cmp dword [esp + 0x20], eax
jne 0x10079970
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x10079a02
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
lea ecx, [ecx]
mov edx, edx
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x100798d8
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x100798dc
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x100798c4
test eax, eax
je 0x10079939
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x1007992b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10079939
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x1007992b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10079939
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x1007992b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10079939
movzx eax, byte [ecx]
movzx ebx, byte [edx]
sub ebx, eax
je 0x10079939
test ebx, ebx
mov eax, 1
jg 0x1007993b
or eax, 0xffffffff
jmp 0x1007993b
xor eax, eax
test eax, eax
jne 0x10079a02
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 0x100798b0
jmp 0x10079a02
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x10079a02
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
lea esp, [esp]
xchg ebx, eax
xchg ebx, eax
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x100799e2
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.100527c0
add esp, 0x14
test eax, eax
je 0x100799d9
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x100799a1
jmp 0x100799e2
cmp ebx, dword [esp + 0xb0]
jl 0x10079a02
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 0x10079990
mov eax, dword [esp + 0xb4]
cmp dword [esp + 0x1c], eax
je 0x10079ca4
mov ecx, dword [esp + 0x48]
sub ecx, 1
mov dword [esp + 0x48], ecx
jns 0x100793a0
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 0x5c]
sub edi, 1
mov dword [esp + 0x44], edi
jns 0x100792f0
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x10], 0
jne 0x10079a53
mov ecx, dword [esp + 0x94]
cmp dword [ecx + 0x32f4], 0
jne 0x10079a64
mov edx, dword [esp + 0x90]
push edx
call fcn.1010dffc
add esp, 4
nop
cmp dword [esi + 0x18], 0
je 0x10079a95
mov eax, dword [esp + 0x30]
push eax
call fcn.1010dffc
add esp, 4
push eax
pop eax
jmp 0x10079a95
cmp dword [esi + 0x10], 0
jne 0x10079a8a
cmp dword [ebp + 0x32f4], 0
jne 0x10079a95
push eax
call fcn.1010dffc
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 0x10077754
jmp 0x10079bb4
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 ebp, ebp
mov al, al
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x10079af4
mov edx, dword [esp + 0x94]
cmp dword [edx + 0x32f4], 0
jne 0x10079b06
mov eax, dword [esp + 0x90]
push eax
call fcn.1010dffc
add esp, 4
mov ecx, ecx
cmp dword [ebx + 0x18], 0
je 0x10079b1b
mov ecx, dword [esp + 0x30]
push ecx
call fcn.1010dffc
add esp, 4
mov ebp, ebp
mov ebp, ebp
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 eax, eax
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.1010fdb0
add esp, 0x14
mov ecx, ecx
lea eax, [esp + 0x108]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10079b93
mov ecx, dword [ebx + 0x168]
sub eax, edx
push eax
lea edx, [esp + 0x10c]
push edx
call fcn.1000a180
push eax
pop eax
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1fc]
pop esi
xor ecx, esp
call fcn.1010e4d7
add esp, 0x1fc
ret
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0xec]
lea esi, [edx + eax]
push eax
pop eax
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0xf0]
lea edi, [ecx + edx]
nop
mov ah, ah
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x10079c08
mov eax, dword [esp + 0x94]
cmp dword [eax + 0x32f4], 0
jne 0x10079c1a
mov ecx, dword [esp + 0x90]
push ecx
call fcn.1010dffc
add esp, 4
mov ecx, ecx
cmp dword [ebx + 0x18], 0
je 0x10079b1b
mov edx, dword [esp + 0x30]
push edx
call fcn.1010dffc
add esp, 4
mov ah, ah
jmp 0x10079b1b
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xec]
lea esi, [eax + ecx]
mov al, al
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0xf0]
lea edi, [edx + eax]
mov ebp, ebp
push eax
pop eax
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x10079c74
mov ecx, dword [esp + 0x94]
cmp dword [ecx + 0x32f4], 0
jne 0x10079c86
mov edx, dword [esp + 0x90]
push edx
call fcn.1010dffc
add esp, 4
xchg ebx, eax
xchg ebx, eax
cmp dword [ebx + 0x18], 0
je 0x10079b1b
mov eax, dword [esp + 0x30]
push eax
call fcn.1010dffc
add esp, 4
xchg ebx, eax
xchg ebx, eax
jmp 0x10079b1b
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0xec]
lea esi, [ecx + edx]
mov ebp, ebp
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xf0]
lea edi, [eax + ecx]
mov dh, dh
mov dl, dl
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x10079ce0
mov edx, dword [esp + 0x94]
cmp dword [edx + 0x32f4], 0
jne 0x10079cf2
mov eax, dword [esp + 0x90]
push eax
call fcn.1010dffc
add esp, 4
push ecx
pop ecx
cmp dword [ebx + 0x18], 0
je 0x10079b1b
mov ecx, dword [esp + 0x30]
push ecx
call fcn.1010dffc
add esp, 4
push ebx
pop ebx
jmp 0x10079b1b
jmp fcn.100fcfa6