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

Disassembly:
sub esp, 0x1fc
mov eax, dword [0x101cc114]
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 ecx
pop ecx
mov ecx, dword [esi]
mov dword [esp + 0x88], ecx
nop
mov ch, ch
mov edx, dword [esi + 0x44]
mov dword [esp + 0x44], edx
mov ch, ch
mov eax, dword [esi + 0x50]
mov dword [esp + 0xd8], eax
nop
mov ecx, dword [esi + 0x58]
mov dword [esp + 0xe8], ecx
xchg ebx, eax
xchg ebx, eax
mov dl, dl
fld qword [esi + 0x160]
fstp qword [esp + 0xf0]
push ebx
pop ebx
mov edx, dword [esi + 0x48]
mov dword [esp + 0xe0], edx
mov ah, ah
mov eax, dword [esi + 0x4c]
mov dword [esp + 0xe4], eax
push ecx
pop ecx
mov al, al
mov dl, dl
nop
mov ecx, dword [esi + 0x168]
push 0
push 0x101818e0
call fcn.1000a1c0
mov dl, dl
push ebx
pop ebx
mov ebx, ebx
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0xc]
mov dword [esp + 0xdc], eax
jg 0x100815b7
push ebx
push ebp
push edi
mov edi, eax
mov ebx, ebx
mov dword [esp + 0x30], 0
mov al, al
mov esi, esi
mov al, al
cmp dword [esi + 0x16c], 0
jne 0x100815b4
mov ebp, dword [esp + 0x94]
lea ebx, [ebp + 0x3260]
push 0x3e8
push ebx
call fcn.10057360
add esp, 8
mov eax, eax
test edi, edi
jl 0x10081711
mov eax, dword [esp + 0xf8]
cmp edi, dword [eax + 8]
jge 0x10081711
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.1007e250
add esp, 0x1c
test eax, eax
push ebx
jne 0x1007f1ff
call fcn.100573f0
add esp, 4
mov bl, bl
jmp 0x10081495
call fcn.100573f0
add esp, 4
nop
mov eax, dword [esp + 0x30]
mov dword [esp + 0x90], eax
mov al, al
mov ebx, dword [esp + 0xb0]
cmp ebx, dword [esi + 0x20]
jg 0x1008147b
mov edi, dword [esp + 0xb4]
cmp edi, dword [esi + 0x24]
jg 0x1008147b
cmp dword [esi + 0x18], 0
jne 0x1007f273
test edi, edi
jle 0x1007f345
mov edx, eax
mov esi, edi
mov edi, dword [esp + 0x40]
add edx, 3
mov edi, edi
test ebx, ebx
jle 0x1007f267
mov eax, edx
mov ecx, ebx
mov cl, cl
mov byte [eax], 0
mov edx, edx
add eax, 4
sub ecx, 1
jne 0x1007f258
add edx, edi
sub esi, 1
jne 0x1007f250
jmp 0x1007f345
mov eax, edi
imul eax, dword [esp + 0x40]
push eax
call fcn.10117399
add esp, 4
mov dword [esp + 0x30], eax
mov ebx, ebx
test eax, eax
jne 0x1007f2b5
cmp dword [esi + 0x10], eax
jne 0x1007f29e
cmp dword [ebp + 0x32f8], eax
jne 0x10081495
mov ecx, dword [esp + 0x90]
push ecx
call fcn.1011745c
add esp, 4
mov edx, edx
jmp 0x10081495
test edi, edi
jle 0x1007f345
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 0x1007f332
mov esi, dword [esp + 0x74]
mov ecx, dword [esp + 0x70]
mov ebp, ebx
mov edi, edi
mov dl, dl
push edx
pop edx
movzx eax, byte [ecx + 1]
mov ecx, ecx
movzx edx, byte [ecx]
mov edi, edi
movzx edi, byte [ecx - 1]
push ecx
pop ecx
add edi, edx
add edi, eax
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
push ebx
pop ebx
movzx eax, dl
mov edx, eax
shl edx, 8
or edx, eax
shl edx, 8
or edx, eax
mov dword [esi], edx
mov ebp, ebp
add ecx, 4
add esi, 4
sub ebp, 1
jne 0x1007f2f0
mov eax, dword [esp + 0x40]
add dword [esp + 0x74], eax
add dword [esp + 0x70], eax
sub dword [esp + 0x14], 1
jne 0x1007f2e0
fld1
fsub qword [esp + 0xfc]
fnstcw word [esp + 0x20]
fmul qword [0x10181830]
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 ch, ch
mov dl, dl
mov ebp, ebp
push ecx
pop ecx
xor ebp, ebp
mov dword [esp + 0x10], ebp
mov bl, bl
lea eax, [esp + 0x10]
push eax
mov eax, dword [esp + 0x3c]
add eax, 0x5c
push 0x101817e0
push eax
call fcn.10119c85
add esp, 0xc
mov ch, ch
movzx esi, byte [esp + 0x12]
add esi, edi
mov eax, eax
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
push ebx
pop ebx
mov esi, esi
mov bh, bh
push ebx
pop ebx
mov edx, edx
mov al, al
mov dword [esp + 0xd4], ebp
mov dword [esp + 0xa8], ebp
push edx
pop edx
lea eax, [ebx - 1]
mov dword [esp + 0xa4], eax
mov ecx, ecx
mov dword [esp + 0x98], ebp
mov edx, edx
mov dword [esp + 0xd8], ebp
xchg ebx, eax
xchg ebx, eax
mov edx, dword [esp + 0xb4]
lea ebp, [edx - 1]
mov dword [esp + 0x5c], ebp
mov eax, eax
mov dword [esp + 0xa0], eax
mov edx, edx
mov dword [esp + 0x9c], ebp
xchg ebx, eax
xchg ebx, eax
mov eax, dword [esp + 0x30]
mov edi, dword [eax]
mov dword [esp + 0x68], edi
mov dl, dl
mov ecx, dword [eax + ebx*4 - 4]
mov dword [esp + 0x64], ecx
mov esi, esi
lea eax, [edx - 1]
imul eax, dword [esp + 0x40]
mov edx, dword [esp + 0x30]
mov edx, dword [eax + edx]
mov dword [esp + 0x58], edx
push edx
pop edx
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 esi, esi
mov edx, edi
mov dword [esp + 0x74], edx
mov bh, bh
cmp edi, ecx
jne 0x1007f65b
mov edi, dword [esp + 0x58]
cmp ecx, edi
jne 0x1007f65b
cmp edi, eax
jne 0x1007f65b
mov dword [esp + 0x6c], 1
mov ch, ch
xor ecx, ecx
cmp dword [esp + 0xb4], ecx
jle 0x1007f508
mov edi, dword [esp + 0x30]
mov dword [esp + 0x14], edi
xor eax, eax
test ebx, ebx
jle 0x1007f4f0
lea ebx, [ebx]
mov edx, edx
cmp dword [edi], edx
jne 0x1007f4d2
add eax, 1
add edi, 4
cmp eax, ebx
jl 0x1007f4c0
jmp 0x1007f4f0
mov edi, dword [edi]
mov dword [esp + 0x68], edi
mov al, al
mov dword [esp + 0xa8], eax
mov ebp, ebp
mov dword [esp + 0xd4], ecx
push edx
pop edx
cmp eax, ebx
jl 0x1007f508
mov edi, dword [esp + 0x14]
add edi, dword [esp + 0x40]
add ecx, 1
cmp ecx, dword [esp + 0xb4]
mov dword [esp + 0x14], edi
jl 0x1007f4b4
xor edi, edi
cmp dword [esp + 0xb4], edi
jle 0x1007f578
xor ecx, ecx
mov dword [esp + 0x14], ecx
lea esp, [esp]
lea eax, [ebx - 1]
test eax, eax
jl 0x1007f560
lea ecx, [ecx + eax*4]
add ecx, dword [esp + 0x30]
mov edi, edi
mov ch, ch
cmp dword [ecx], edx
jne 0x1007f542
sub eax, 1
sub ecx, 4
test eax, eax
jge 0x1007f530
jmp 0x1007f560
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
mov ecx, ecx
test eax, eax
jge 0x1007f578
mov ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x40]
add edi, 1
cmp edi, dword [esp + 0xb4]
mov dword [esp + 0x14], ecx
jl 0x1007f520
mov edi, dword [esp + 0xb4]
add edi, 0xffffffff
test edi, edi
jl 0x1007f5e8
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 0x1007f5d5
mov bl, bl
cmp dword [ecx], edx
jne 0x1007f5b8
add eax, 1
add ecx, 4
cmp eax, ebx
jl 0x1007f5a6
jmp 0x1007f5d1
mov ecx, dword [ecx]
mov dword [esp + 0x58], ecx
mov dh, dh
mov dword [esp + 0xd8], eax
mov ebx, ebx
mov ebp, edi
mov esi, esi
cmp eax, ebx
jl 0x1007f5e4
mov ecx, dword [esp + 0x5c]
add ecx, dword [esp + 0x1c]
sub edi, 1
test edi, edi
mov dword [esp + 0x5c], ecx
jge 0x1007f5a0
mov dword [esp + 0x5c], ebp
mov edi, dword [esp + 0xb4]
add edi, 0xffffffff
test edi, edi
jl 0x1007f65b
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 0x1007f650
lea ecx, [ebx + eax*4]
add ecx, dword [esp + 0x30]
nop
push edx
pop edx
cmp dword [ecx], edx
jne 0x1007f632
sub eax, 1
sub ecx, 4
test eax, eax
jge 0x1007f620
jmp 0x1007f650
mov ecx, dword [ecx]
mov dword [esp + 0x60], ecx
mov ah, ah
mov dword [esp + 0xa0], eax
mov esi, esi
mov dword [esp + 0x9c], edi
mov al, al
test eax, eax
jge 0x1007f65b
add ebx, dword [esp + 0x1c]
sub edi, 1
test edi, edi
jge 0x1007f610
mov eax, dword [esp + 0xf4]
test eax, eax
jne 0x1007fdee
mov edx, dword [esp + 0x38]
mov eax, dword [edx + 0x24]
xor edi, edi
sub eax, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x10081438
mov edx, dword [esp + 0x38]
mov eax, dword [edx + 0x20]
xor ecx, ecx
sub eax, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x1007fdcc
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 0x1007f737
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
push edx
pop edx
mov ah, ah
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
mov eax, eax
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
xchg ebx, eax
xchg ebx, eax
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
push ecx
pop ecx
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0xdc], ecx
mov cl, cl
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov dl, dl
movzx ebp, ah
mov dword [esp + 0x14], ebp
mov edx, edx
and eax, 0xff
mov dword [esp + 0x1c], eax
nop
mov ebx, ebx
mov ebp, ebp
mov bl, bl
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x34], eax
nop
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 dh, dh
mov ebp, dword [esp + 0x1c]
sub ebp, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov cl, cl
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x1007f804
mov dword [esp + 0x18], ecx
mov esi, esi
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x1007f824
mov dword [esp + 0x14], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x1007f844
mov dword [esp + 0x1c], ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x88]
cmp ecx, dword [esp + 0x34]
jl 0x1007fda3
cmp ecx, dword [esp + 0x18]
jg 0x1007fda3
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x4c]
jl 0x1007fda3
cmp ecx, dword [esp + 0x14]
jg 0x1007fda3
mov ecx, dword [esp + 0x2c]
cmp ecx, eax
jl 0x1007fda3
cmp ecx, dword [esp + 0x1c]
jg 0x1007fda3
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov edx, edx
and edx, 0xff
mov dword [esp + 0x14], edx
nop
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x4c], edx
mov ebx, ebx
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x54], ecx
mov ebp, ebp
and edx, 0xff
mov bl, bl
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x34], ecx
nop
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 dh, dh
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ebp, ecx
mov cl, cl
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x1007f936
mov dword [esp + 0x1c], eax
mov esi, esi
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x1007f956
mov dword [esp + 0x18], ecx
push ecx
pop ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x1007f976
mov dword [esp + 0x14], ecx
push ebx
pop ebx
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x34]
jl 0x1007fda3
cmp eax, dword [esp + 0x1c]
jg 0x1007fda3
mov eax, dword [esp + 0x54]
cmp eax, dword [esp + 0x28]
jl 0x1007fda3
cmp eax, dword [esp + 0x18]
jg 0x1007fda3
cmp edx, ebp
jl 0x1007fda3
cmp edx, dword [esp + 0x14]
jg 0x1007fda3
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx edx, bh
mov edx, edx
and ebx, 0xff
mov dword [esp + 0x18], ebx
nop
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
mov ebx, ebx
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x4c], ebx
mov ebp, ebp
mov ebp, ecx
and ebp, 0xff
mov bl, bl
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x54], ebx
nop
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 dh, dh
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov cl, cl
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x1007fa5b
mov dword [esp + 0x14], eax
mov esi, esi
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x1007fa6f
mov dword [esp + 0x1c], edx
push ecx
pop ecx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x1007fa8a
mov edx, ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x54]
jl 0x1007fda3
cmp ecx, dword [esp + 0x14]
jg 0x1007fda3
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x34]
jl 0x1007fda3
cmp eax, dword [esp + 0x1c]
jg 0x1007fda3
cmp ebp, ebx
jl 0x1007fda3
cmp ebp, edx
jg 0x1007fda3
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov ecx, dword [esp + 0xdc]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx ebx, ch
mov edx, edx
and ecx, 0xff
mov dword [esp + 0x18], ecx
nop
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0xdc], ecx
mov ebx, ebx
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x54], edx
mov ebp, ebp
mov ebp, ecx
and ebp, 0xff
mov bl, bl
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x28], ecx
nop
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 dh, dh
mov edx, dword [esp + 0x18]
sub edx, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and edx, ecx
mov cl, cl
add eax, esi
cmp eax, 0xff
jle 0x1007fb72
mov eax, 0xff
mov esi, esi
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x1007fb8e
mov dword [esp + 0x14], ebx
push ecx
pop ecx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x1007fba9
mov ebx, ecx
push ebx
pop ebx
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x1007fda3
cmp ecx, eax
jg 0x1007fda3
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x4c]
jl 0x1007fda3
cmp ecx, dword [esp + 0x14]
jg 0x1007fda3
cmp ebp, edx
jl 0x1007fda3
cmp ebp, ebx
jg 0x1007fda3
mov esi, esi
xor eax, eax
cmp dword [esp + 0x70], eax
jne 0x1007fd00
cmp dword [esp + 0x6c], eax
jne 0x1007fd00
cmp esi, eax
jne 0x1007fd00
cmp dword [esp + 0x24], eax
jne 0x1007fd00
cmp dword [esp + 0x20], eax
jne 0x1007fd00
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x1007fd92
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
jmp 0x1007fc40
push ecx
pop ecx
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x1007fc68
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x1007fc6c
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1007fc54
test eax, eax
je 0x1007fcc9
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x1007fcbb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1007fcc9
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x1007fcbb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1007fcc9
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x1007fcbb
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1007fcc9
movzx ebx, byte [edx]
movzx edx, byte [ecx]
sub ebx, edx
je 0x1007fcc9
test ebx, ebx
mov eax, 1
jg 0x1007fccb
or eax, 0xffffffff
jmp 0x1007fccb
xor eax, eax
test eax, eax
jne 0x1007fd92
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 0x1007fc40
jmp 0x1007fd92
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x1007fd92
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 0x1007fd72
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.10061e30
add esp, 0x14
test eax, eax
je 0x1007fd69
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x1007fd31
jmp 0x1007fd72
cmp ebx, dword [esp + 0xb0]
jl 0x1007fd92
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 0x1007fd20
mov edx, dword [esp + 0x1c]
cmp edx, dword [esp + 0xb4]
je 0x100814b8
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 0x1007f730
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 0x1007f684
jmp 0x10081438
cmp eax, 1
jne 0x1008055e
mov edx, dword [esp + 0x38]
mov edi, dword [edx + 0x24]
sub edi, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x10081438
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 0x1008054c
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 0x1007fec7
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
push ecx
pop ecx
push ecx
pop ecx
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
nop
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov ah, ah
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov ecx, ecx
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
mov edx, edx
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov dl, dl
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov edx, edx
and eax, 0xff
mov dword [esp + 0x14], eax
nop
mov ebx, ebx
mov ebp, ebp
mov bl, bl
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
nop
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 dh, dh
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov cl, cl
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x1007ff93
mov dword [esp + 0x1c], ecx
mov esi, esi
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x1007ffb3
mov dword [esp + 0x18], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x1007ffd3
mov dword [esp + 0x14], ecx
push ebx
pop ebx
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10080523
cmp ecx, dword [esp + 0x1c]
jg 0x10080523
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x10080523
cmp ecx, dword [esp + 0x18]
jg 0x10080523
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x10080523
cmp ecx, dword [esp + 0x14]
jg 0x10080523
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov edx, edx
and edx, 0xff
mov dword [esp + 0x14], edx
nop
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
mov ebx, ebx
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
mov ebp, ebp
and edx, 0xff
mov bl, bl
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
nop
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 dh, dh
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ebp, ecx
mov cl, cl
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x100800c5
mov dword [esp + 0x1c], eax
mov esi, esi
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x100800e5
mov dword [esp + 0x18], ecx
push ecx
pop ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10080105
mov dword [esp + 0x14], ecx
push ebx
pop ebx
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x10080523
cmp eax, dword [esp + 0x1c]
jg 0x10080523
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10080523
cmp eax, dword [esp + 0x18]
jg 0x10080523
cmp edx, ebp
jl 0x10080523
cmp edx, dword [esp + 0x14]
jg 0x10080523
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx edx, bh
mov edx, edx
and ebx, 0xff
mov dword [esp + 0x18], ebx
nop
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
mov ebx, ebx
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
mov ebp, ebp
mov ebp, ecx
and ebp, 0xff
mov bl, bl
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
nop
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 dh, dh
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov cl, cl
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x100801ea
mov dword [esp + 0x14], eax
mov esi, esi
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x100801fe
mov dword [esp + 0x1c], edx
push ecx
pop ecx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x10080219
mov edx, ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10080523
cmp ecx, dword [esp + 0x14]
jg 0x10080523
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10080523
cmp eax, dword [esp + 0x1c]
jg 0x10080523
cmp ebp, ebx
jl 0x10080523
cmp ebp, edx
jg 0x10080523
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx ebx, ch
mov edx, edx
and ecx, 0xff
mov dword [esp + 0x18], ecx
nop
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
mov ebx, ebx
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
mov ebp, ebp
mov ebp, ecx
and ebp, 0xff
mov bl, bl
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
nop
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 dh, dh
mov edx, dword [esp + 0x18]
sub edx, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and edx, ecx
mov cl, cl
add eax, esi
cmp eax, 0xff
jle 0x100802fe
mov eax, 0xff
mov esi, esi
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x1008031a
mov dword [esp + 0x14], ebx
push ecx
pop ecx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x10080335
mov ebx, ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10080523
cmp ecx, eax
jg 0x10080523
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x10080523
cmp ecx, dword [esp + 0x14]
jg 0x10080523
cmp ebp, edx
jl 0x10080523
cmp ebp, ebx
jg 0x10080523
nop
xor ecx, ecx
cmp dword [esp + 0x70], ecx
jne 0x10080483
cmp dword [esp + 0x6c], ecx
jne 0x10080483
cmp esi, ecx
jne 0x10080483
cmp dword [esp + 0x24], ecx
jne 0x10080483
cmp dword [esp + 0x20], ecx
jne 0x10080483
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10080512
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
mov ecx, ecx
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x100803eb
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x100803ef
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x100803d7
test eax, eax
je 0x1008044c
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x1008043e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008044c
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x1008043e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008044c
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x1008043e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1008044c
movzx eax, byte [ecx]
movzx ebx, byte [edx]
sub ebx, eax
je 0x1008044c
test ebx, ebx
mov eax, 1
jg 0x1008044e
or eax, 0xffffffff
jmp 0x1008044e
xor eax, eax
test eax, eax
jne 0x10080512
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 0x100803c3
jmp 0x10080512
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10080512
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
lea esp, [esp]
mov eax, eax
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x100804f2
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.10061e30
add esp, 0x14
test eax, eax
je 0x100804e9
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x100804b1
jmp 0x100804f2
cmp ebx, dword [esp + 0xb0]
jl 0x10080512
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 0x100804a0
mov eax, dword [esp + 0xb4]
cmp dword [esp + 0x1c], eax
je 0x100815cd
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 0x1007fec0
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 0x5c]
sub edi, 1
mov dword [esp + 0x44], edi
jns 0x1007fe10
jmp 0x10081438
cmp eax, 2
jne 0x10080cce
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + 0x24]
xor edi, edi
sub edx, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x10081438
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x20]
sub ecx, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x10080cac
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 0x10080637
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
mov ecx, ecx
mov dh, dh
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
nop
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov edi, edi
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov ah, ah
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
mov ch, ch
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov dl, dl
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov edx, edx
and eax, 0xff
mov dword [esp + 0x14], eax
nop
mov ebx, ebx
mov ebp, ebp
mov bl, bl
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
nop
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 dh, dh
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov cl, cl
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10080703
mov dword [esp + 0x1c], ecx
mov esi, esi
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10080723
mov dword [esp + 0x18], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10080743
mov dword [esp + 0x14], ecx
push ebx
pop ebx
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10080c93
cmp ecx, dword [esp + 0x1c]
jg 0x10080c93
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x10080c93
cmp ecx, dword [esp + 0x18]
jg 0x10080c93
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x10080c93
cmp ecx, dword [esp + 0x14]
jg 0x10080c93
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov edx, edx
and edx, 0xff
mov dword [esp + 0x14], edx
nop
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
mov ebx, ebx
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
mov ebp, ebp
and edx, 0xff
mov bl, bl
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
nop
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 dh, dh
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ebp, ecx
mov cl, cl
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10080835
mov dword [esp + 0x1c], eax
mov esi, esi
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10080855
mov dword [esp + 0x18], ecx
push ecx
pop ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10080875
mov dword [esp + 0x14], ecx
push ebx
pop ebx
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x10080c93
cmp eax, dword [esp + 0x1c]
jg 0x10080c93
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10080c93
cmp eax, dword [esp + 0x18]
jg 0x10080c93
cmp edx, ebp
jl 0x10080c93
cmp edx, dword [esp + 0x14]
jg 0x10080c93
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx edx, bh
mov edx, edx
and ebx, 0xff
mov dword [esp + 0x18], ebx
nop
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
mov ebx, ebx
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
mov ebp, ebp
mov ebp, ecx
and ebp, 0xff
mov bl, bl
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
nop
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 dh, dh
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov cl, cl
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x1008095a
mov dword [esp + 0x14], eax
mov esi, esi
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x1008096e
mov dword [esp + 0x1c], edx
push ecx
pop ecx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x10080989
mov edx, ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10080c93
cmp ecx, dword [esp + 0x14]
jg 0x10080c93
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10080c93
cmp eax, dword [esp + 0x1c]
jg 0x10080c93
cmp ebp, ebx
jl 0x10080c93
cmp ebp, edx
jg 0x10080c93
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx ebx, ch
mov edx, edx
and ecx, 0xff
mov dword [esp + 0x18], ecx
nop
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
mov ebx, ebx
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
mov ebp, ebp
mov ebp, ecx
and ebp, 0xff
mov bl, bl
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
nop
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 dh, dh
mov edx, dword [esp + 0x18]
sub edx, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and edx, ecx
mov cl, cl
add eax, esi
cmp eax, 0xff
jle 0x10080a6e
mov eax, 0xff
mov esi, esi
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10080a8a
mov dword [esp + 0x14], ebx
push ecx
pop ecx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x10080aa5
mov ebx, ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10080c93
cmp ecx, eax
jg 0x10080c93
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x10080c93
cmp ecx, dword [esp + 0x14]
jg 0x10080c93
cmp ebp, edx
jl 0x10080c93
cmp ebp, ebx
jg 0x10080c93
mov bl, bl
xor ecx, ecx
cmp dword [esp + 0x70], ecx
jne 0x10080bf4
cmp dword [esp + 0x6c], ecx
jne 0x10080bf4
cmp esi, ecx
jne 0x10080bf4
cmp dword [esp + 0x24], ecx
jne 0x10080bf4
cmp dword [esp + 0x20], ecx
jne 0x10080bf4
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10080c82
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
mov eax, eax
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x10080b5c
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x10080b60
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10080b48
test eax, eax
je 0x10080bbd
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10080baf
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10080bbd
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10080baf
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10080bbd
movzx ebx, byte [edx]
movzx edi, byte [ecx]
sub ebx, edi
jne 0x10080baf
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10080bbd
movzx ebx, byte [edx]
movzx edx, byte [ecx]
sub ebx, edx
je 0x10080bbd
test ebx, ebx
mov eax, 1
jg 0x10080bbf
or eax, 0xffffffff
jmp 0x10080bbf
xor eax, eax
test eax, eax
jne 0x10080c82
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 0x10080b34
jmp 0x10080c82
cmp dword [esp + 0xb4], ecx
mov dword [esp + 0x1c], ecx
jle 0x10080c82
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
lea ecx, [ecx]
mov ebp, ebp
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x10080c62
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.10061e30
add esp, 0x14
test eax, eax
je 0x10080c59
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x10080c21
jmp 0x10080c62
cmp ebx, dword [esp + 0xb0]
jl 0x10080c82
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 0x10080c10
mov edx, dword [esp + 0xb4]
cmp dword [esp + 0x1c], edx
je 0x10081639
mov ecx, dword [esp + 0x48]
sub ecx, 1
mov dword [esp + 0x48], ecx
jns 0x10080630
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 0x10080581
jmp 0x10081438
cmp eax, 3
jne 0x10081438
mov edx, dword [esp + 0x38]
mov edi, dword [edx + 0x24]
sub edi, dword [esp + 0xb4]
mov dword [esp + 0x44], edi
js 0x10081438
nop
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 0x20]
sub ecx, dword [esp + 0xb0]
mov dword [esp + 0x48], ecx
js 0x1008142b
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 0x10080da7
mov edi, dword [esp + 0x80]
lea edi, [edi + ecx*4]
add edi, dword [esp + 0xe4]
xchg ebx, eax
xchg ebx, eax
push edx
pop edx
mov eax, dword [esp + 0x8c]
mov eax, dword [eax + edi]
mov bh, bh
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx + edi]
mov ebp, ebp
mov ecx, dword [esp + 0x7c]
mov ebx, dword [ecx + edi]
mov dl, dl
mov ecx, dword [esp + 0x84]
mov ecx, dword [ecx + edi]
mov dword [esp + 0x88], ecx
mov edi, edi
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov ecx, eax
shr ecx, 0x10
and ecx, 0xff
mov dl, dl
movzx ebp, ah
mov dword [esp + 0x18], ebp
mov edx, edx
and eax, 0xff
mov dword [esp + 0x14], eax
nop
mov ebx, ebx
mov ebp, ebp
mov bl, bl
mov ebp, ecx
sub ebp, esi
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov dword [esp + 0x28], eax
nop
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 dh, dh
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov eax, 0
sets al
sub eax, 1
and eax, ebp
mov cl, cl
add ecx, esi
cmp ecx, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10080e74
mov dword [esp + 0x1c], ecx
mov esi, esi
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10080e94
mov dword [esp + 0x18], ecx
push ecx
pop ecx
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
add ecx, ebp
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10080eb4
mov dword [esp + 0x14], ecx
push ebx
pop ebx
mov ecx, dword [esp + 0xdc]
cmp ecx, dword [esp + 0x28]
jl 0x10081412
cmp ecx, dword [esp + 0x1c]
jg 0x10081412
mov ecx, dword [esp + 0x54]
cmp ecx, dword [esp + 0x2c]
jl 0x10081412
cmp ecx, dword [esp + 0x18]
jg 0x10081412
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
jl 0x10081412
cmp ecx, dword [esp + 0x14]
jg 0x10081412
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov eax, edx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx ecx, dh
mov dword [esp + 0x18], ecx
mov edx, edx
and edx, 0xff
mov dword [esp + 0x14], edx
nop
movzx edx, byte [esp + 0x66]
mov dword [esp + 0x28], edx
mov ebx, ebx
mov edx, dword [esp + 0x64]
movzx ecx, dh
mov dword [esp + 0x3c], ecx
mov ebp, ebp
and edx, 0xff
mov bl, bl
mov ebp, eax
sub ebp, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, ebp
mov dword [esp + 0x2c], ecx
nop
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 dh, dh
mov ebp, dword [esp + 0x14]
sub ebp, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and ebp, ecx
mov cl, cl
add eax, esi
cmp eax, 0xff
mov dword [esp + 0x1c], 0xff
jg 0x10080fa6
mov dword [esp + 0x1c], eax
mov esi, esi
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x18], 0xff
jg 0x10080fc6
mov dword [esp + 0x18], ecx
push ecx
pop ecx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
add ecx, eax
cmp ecx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x10080fe6
mov dword [esp + 0x14], ecx
push ebx
pop ebx
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x2c]
jl 0x10081412
cmp eax, dword [esp + 0x1c]
jg 0x10081412
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10081412
cmp eax, dword [esp + 0x18]
jg 0x10081412
cmp edx, ebp
jl 0x10081412
cmp edx, dword [esp + 0x14]
jg 0x10081412
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov eax, ebx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx edx, bh
mov edx, edx
and ebx, 0xff
mov dword [esp + 0x18], ebx
nop
movzx ecx, byte [esp + 0x5a]
mov dword [esp + 0x28], ecx
mov ebx, ebx
mov ecx, dword [esp + 0x58]
movzx ebx, ch
mov dword [esp + 0x3c], ebx
mov ebp, ebp
mov ebp, ecx
and ebp, 0xff
mov bl, bl
mov ecx, eax
sub ecx, esi
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov dword [esp + 0x2c], ebx
nop
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 dh, dh
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 0x20]
mov ebx, 0
sets bl
sub ebx, 1
and ebx, ecx
mov cl, cl
mov ecx, 0xff
add eax, esi
cmp eax, ecx
mov dword [esp + 0x14], ecx
jg 0x100810cb
mov dword [esp + 0x14], eax
mov esi, esi
mov eax, dword [esp + 0x24]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x1c], ecx
jg 0x100810df
mov dword [esp + 0x1c], edx
push ecx
pop ecx
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, edx
cmp ecx, 0xff
mov edx, 0xff
jg 0x100810fa
mov edx, ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10081412
cmp ecx, dword [esp + 0x14]
jg 0x10081412
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x34]
jl 0x10081412
cmp eax, dword [esp + 0x1c]
jg 0x10081412
cmp ebp, ebx
jl 0x10081412
cmp ebp, edx
jg 0x10081412
mov al, al
push ecx
pop ecx
mov cl, cl
mov ch, ch
mov bh, bh
mov ecx, dword [esp + 0x88]
mov eax, ecx
shr eax, 0x10
and eax, 0xff
mov dl, dl
movzx ebx, ch
mov edx, edx
and ecx, 0xff
mov dword [esp + 0x18], ecx
nop
movzx ecx, byte [esp + 0x62]
mov dword [esp + 0x28], ecx
mov ebx, ebx
mov ecx, dword [esp + 0x60]
movzx edx, ch
mov dword [esp + 0x3c], edx
mov ebp, ebp
mov ebp, ecx
and ebp, 0xff
mov bl, bl
mov edx, eax
sub edx, esi
mov ecx, 0
sets cl
sub ecx, 1
and ecx, edx
mov dword [esp + 0x2c], ecx
nop
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 dh, dh
mov edx, dword [esp + 0x18]
sub edx, dword [esp + 0x20]
mov ecx, 0
sets cl
sub ecx, 1
and edx, ecx
mov cl, cl
add eax, esi
cmp eax, 0xff
jle 0x100811df
mov eax, 0xff
mov esi, esi
mov ecx, dword [esp + 0x24]
add ebx, ecx
cmp ebx, 0xff
mov dword [esp + 0x14], 0xff
jg 0x100811fb
mov dword [esp + 0x14], ebx
push ecx
pop ecx
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
add ecx, ebx
cmp ecx, 0xff
mov ebx, 0xff
jg 0x10081216
mov ebx, ecx
push ebx
pop ebx
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
jl 0x10081412
cmp ecx, eax
jg 0x10081412
mov ecx, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x34]
jl 0x10081412
cmp ecx, dword [esp + 0x14]
jg 0x10081412
cmp ebp, edx
jl 0x10081412
cmp ebp, ebx
jg 0x10081412
mov bl, bl
xor eax, eax
cmp dword [esp + 0x70], eax
jne 0x1008136c
cmp dword [esp + 0x6c], eax
jne 0x1008136c
cmp esi, eax
jne 0x1008136c
cmp dword [esp + 0x24], eax
jne 0x1008136c
cmp dword [esp + 0x20], eax
jne 0x1008136c
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x10081401
mov ebp, dword [esp + 0x30]
mov edx, edi
mov dword [esp + 0x18], edx
mov esi, esi
mov eax, dword [esp + 0xb0]
add eax, eax
add eax, eax
cmp eax, 4
mov ecx, ebp
jb 0x100812d4
lea esp, [esp]
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x100812d8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x100812c0
test eax, eax
je 0x10081335
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x10081327
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10081335
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x10081327
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10081335
movzx edi, byte [ecx]
movzx ebx, byte [edx]
sub ebx, edi
jne 0x10081327
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10081335
movzx eax, byte [ecx]
movzx ebx, byte [edx]
sub ebx, eax
je 0x10081335
test ebx, ebx
mov eax, 1
jg 0x10081337
or eax, 0xffffffff
jmp 0x10081337
xor eax, eax
test eax, eax
jne 0x10081401
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 0x100812a5
jmp 0x10081401
cmp dword [esp + 0xb4], eax
mov dword [esp + 0x1c], eax
jle 0x10081401
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x14], edi
mov ebp, ebp
xor ebx, ebx
cmp dword [esp + 0xb0], ebx
jle 0x100813e1
mov edi, dword [esp + 0x14]
jmp 0x100813a0
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.10061e30
add esp, 0x14
test eax, eax
je 0x100813d8
add ebx, 1
add edi, 4
cmp ebx, dword [esp + 0xb0]
jl 0x100813a0
jmp 0x100813e1
cmp ebx, dword [esp + 0xb0]
jl 0x10081401
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 0x10081385
mov eax, dword [esp + 0xb4]
cmp dword [esp + 0x1c], eax
je 0x100816a5
mov ecx, dword [esp + 0x48]
sub ecx, 1
mov dword [esp + 0x48], ecx
jns 0x10080da0
mov edi, dword [esp + 0x44]
mov ebp, dword [esp + 0x5c]
sub edi, 1
mov dword [esp + 0x44], edi
jns 0x10080cf0
mov esi, dword [esp + 0x38]
cmp dword [esi + 0x10], 0
jne 0x10081452
mov ecx, dword [esp + 0x94]
cmp dword [ecx + 0x32f8], 0
jne 0x10081464
mov edx, dword [esp + 0x90]
push edx
call fcn.1011745c
add esp, 4
push eax
pop eax
cmp dword [esi + 0x18], 0
je 0x10081495
mov eax, dword [esp + 0x30]
push eax
call fcn.1011745c
add esp, 4
push edx
pop edx
jmp 0x10081495
cmp dword [esi + 0x10], 0
jne 0x1008148a
cmp dword [ebp + 0x32f8], 0
jne 0x10081495
push eax
call fcn.1011745c
add esp, 4
mov al, al
mov edi, dword [esp + 0xe8]
mov esi, dword [esp + 0x38]
add edi, 1
cmp edi, dword [esi + 0xc]
mov dword [esp + 0xe8], edi
jle 0x1007f171
jmp 0x100815b4
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0xec]
lea esi, [ecx + edx]
mov ah, ah
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xf0]
lea edi, [eax + ecx]
push edx
pop edx
mov bh, bh
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x100814f4
mov edx, dword [esp + 0x94]
cmp dword [edx + 0x32f8], 0
jne 0x10081506
mov eax, dword [esp + 0x90]
push eax
call fcn.1011745c
add esp, 4
push eax
pop eax
cmp dword [ebx + 0x18], 0
je 0x1008151b
mov ecx, dword [esp + 0x30]
push ecx
call fcn.1011745c
add esp, 4
mov esi, esi
mov bl, bl
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 edi, edi
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.101191d0
add esp, 0x14
mov ah, ah
lea eax, [esp + 0x108]
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10081593
mov ecx, dword [ebx + 0x168]
sub eax, edx
push eax
lea edx, [esp + 0x10c]
push edx
call fcn.1000a1c0
xchg ebx, eax
xchg ebx, eax
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1fc]
pop esi
xor ecx, esp
call fcn.10117937
add esp, 0x1fc
ret
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0xec]
lea esi, [edx + eax]
mov dl, dl
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0xf0]
lea edi, [ecx + edx]
mov al, al
push eax
pop eax
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x10081609
mov eax, dword [esp + 0x94]
cmp dword [eax + 0x32f8], 0
jne 0x1008161b
mov ecx, dword [esp + 0x90]
push ecx
call fcn.1011745c
add esp, 4
mov cl, cl
cmp dword [ebx + 0x18], 0
je 0x1008151b
mov edx, dword [esp + 0x30]
push edx
call fcn.1011745c
add esp, 4
mov ah, ah
jmp 0x1008151b
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xec]
lea esi, [eax + ecx]
mov eax, eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0xf0]
lea edi, [edx + eax]
xchg ebx, eax
xchg ebx, eax
mov eax, eax
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x10081675
mov ecx, dword [esp + 0x94]
cmp dword [ecx + 0x32f8], 0
jne 0x10081687
mov edx, dword [esp + 0x90]
push edx
call fcn.1011745c
add esp, 4
mov cl, cl
cmp dword [ebx + 0x18], 0
je 0x1008151b
mov eax, dword [esp + 0x30]
push eax
call fcn.1011745c
add esp, 4
mov dh, dh
jmp 0x1008151b
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0xec]
lea esi, [ecx + edx]
mov bh, bh
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xf0]
lea edi, [eax + ecx]
mov edi, edi
mov bh, bh
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0x10], 0
jne 0x100816e1
mov edx, dword [esp + 0x94]
cmp dword [edx + 0x32f8], 0
jne 0x100816f3
mov eax, dword [esp + 0x90]
push eax
call fcn.1011745c
add esp, 4
mov dl, dl
cmp dword [ebx + 0x18], 0
je 0x1008151b
mov ecx, dword [esp + 0x30]
push ecx
call fcn.1011745c
add esp, 4
mov eax, eax
jmp 0x1008151b
jmp fcn.1010967c