Function at 0x100a8be0
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe8
mov eax, dword [0x10172044]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, ecx
push ebx
mov dword [ebp - 0x98], eax
push esi
mov ecx, dword [eax]
push edi
movzx eax, word [ecx + 0xa8e]
lea ebx, [ecx + 0xa92]
mov edi, dword [ecx + 0xaa2]
lea edx, [ecx + 0xe7a]
add ebx, eax
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xb8], ebx
lea eax, [ebx + 0x28]
cmp edx, eax
jb 0x100a8cc0
mov eax, dword [ebx + 0xc]
xor edx, edx
xor esi, esi
mov dword [ebp - 0x8c], edx
cmp edi, eax
jb 0x100a8cc0
mov ebx, dword [ebx + 8]
add eax, ebx
cmp edi, eax
jae 0x100a8cc0
mov eax, dword [ebp - 0xb8]
mov edi, dword [eax + 0x10]
lea eax, [edi - 0x2000]
cmp eax, 0x9e000
ja 0x100a8cc0
cmp word [ecx + 0xad6], 2
jne 0x100a8cc0
mov eax, 0x2000
test word [ecx + 0xa90], ax
jne 0x100a8cc0
mov eax, dword [ebp - 0xb8]
cmp dword [eax + 0x24], edx
jl 0x100a8d21
cmp dword [ecx + 0xab6], 0x200
jne 0x100a8d21
cmp dword [ecx + 0xb42], edx
je 0x100a8ca9
cmp dword [ecx + 0xad2], edx
je 0x100a8d21
cmp edi, ebx
jne 0x100a8cd3
mov eax, dword [ecx + 0xab2]
dec eax
test ebx, eax
je 0x100a8d21
cmp dword [ecx + 0xad2], edx
je 0x100a8d21
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ad43d
mov esp, ebp
pop ebp
ret
cmp dword [ecx + 0xad2], edx
jne 0x100a8cc0
mov edi, dword [ecx + 0xab2]
dec edi
test dword [ecx + 0xaca], edi
jne 0x100a8d21
movzx eax, word [ecx + 0xa80]
lea eax, [eax + eax*4]
shl eax, 3
mov dword [ebp - 0xa8], eax
add eax, dword [ebp - 0xb8]
cmp dword [ebp - 0xb0], eax
jb 0x100a8cc0
test ebx, edi
je 0x100a8cc0
mov eax, dword [ebp - 0xa8]
mov ebx, dword [ebp - 0xb8]
test dword [eax + ebx - 0x20], edi
jne 0x100a8cc0
mov edi, dword [ebp - 0xb8]
mov ebx, dword [ecx + 0xb56]
mov dword [ebp - 0xa8], ebx
mov eax, dword [edi + 0xc]
cmp eax, dword [ecx + 0xb52]
jne 0x100a8d59
cmp ebx, 0x1000
jb 0x100a8d5f
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ad43d
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0xa8], esi
xor edi, edi
xor ebx, ebx
nop dword [eax]
nop word [eax + eax]
mov eax, dword [ebp - 0x98]
mov ecx, dword [eax]
mov al, byte [ecx + ebx + 0x427a]
cmp al, 0x89
je 0x100a8dbe
cmp al, 0x8b
je 0x100a8dbe
cmp al, 0xc1
je 0x100a8dbe
cmp al, 0xd3
je 0x100a8dbe
cmp al, 0x8d
je 0x100a8dbe
cmp al, 0xc7
je 0x100a8dbe
cmp al, 0xa1
je 0x100a8da3
cmp al, 0xa3
jne 0x100a8e3c
inc edi
add ebx, 4
cmp edi, 6
jbe 0x100a8e5a
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
jmp 0x100a8e58
movzx eax, byte [ecx + ebx + 0x427b]
mov edx, dword [ebp - 0x98]
mov ecx, eax
shr ecx, 6
and eax, 7
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xac], eax
mov ecx, dword [edx]
lea eax, [ecx + 0x427a]
add eax, ebx
push eax
call fcn.10009d90
movzx ecx, ax
mov eax, dword [ebp - 0xb0]
test eax, eax
jne 0x100a8e08
cmp dword [ebp - 0xac], 5
je 0x100a8e2d
jmp 0x100a8e36
cmp eax, 1
je 0x100a8e12
cmp eax, 2
jne 0x100a8e36
cmp dword [ebp - 0xac], 4
jne 0x100a8e2d
mov eax, dword [ebp - 0x98]
mov eax, dword [eax]
cmp byte [eax + ebx + 0x427c], 0x24
jne 0x100a8e36
dec ebx
inc edi
add ebx, ecx
cmp edi, 6
jbe 0x100a8e5a
mov edx, dword [ebp - 0x8c]
cmp edi, 3
je 0x100a8e51
cmp edi, 4
je 0x100a8e51
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
jmp 0x100a8e58
inc edx
mov dword [ebp - 0x8c], edx
xor edi, edi
mov edx, dword [ebp - 0x8c]
inc ebx
cmp ebx, 0x1000
jb 0x100a8d70
mov ebx, dword [ebp - 0x98]
mov ecx, ebx
push 1
call fcn.100abad0
test eax, eax
jne 0x100a8cc0
mov eax, dword [ebx + 4]
test eax, eax
je 0x100a8cc0
test byte [eax], 1
je 0x100a8cc0
cmp dword [eax + 0xc064], 0x1000
lea ecx, [eax + 4]
jb 0x100a8cc0
test ecx, ecx
je 0x100a8cc0
mov edx, dword [ebp - 0xa8]
mov eax, 0x1000
sub eax, edx
mov dword [ebp - 0xa8], eax
je 0x100a8fc1
lea eax, [ecx + edx]
xor edi, edi
mov dword [ebp - 0xa4], eax
xor ebx, ebx
nop dword [eax]
lea ecx, [ebx + eax]
mov al, byte [ecx]
cmp al, 0x89
je 0x100a8f24
cmp al, 0x8b
je 0x100a8f24
cmp al, 0xc1
je 0x100a8f24
cmp al, 0xd3
je 0x100a8f24
cmp al, 0x8d
je 0x100a8f24
cmp al, 0xc7
je 0x100a8f24
cmp al, 0xa1
je 0x100a8f09
cmp al, 0xa3
jne 0x100a8f8b
inc edi
add ebx, 4
cmp edi, 6
jbe 0x100a8fa8
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
jmp 0x100a8fa6
movzx eax, byte [ecx + 1]
mov edx, eax
and eax, 7
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0x98]
shr edx, 6
push ecx
mov dword [ebp - 0xb0], edx
mov ecx, dword [eax]
call fcn.10009d90
movzx ecx, ax
mov eax, dword [ebp - 0xb0]
test eax, eax
jne 0x100a8f62
cmp dword [ebp - 0xac], 5
je 0x100a8f82
jmp 0x100a8f8b
cmp eax, 1
je 0x100a8f6c
cmp eax, 2
jne 0x100a8f8b
cmp dword [ebp - 0xac], 4
jne 0x100a8f82
mov eax, dword [ebp - 0xa4]
cmp byte [ebx + eax + 2], 0x24
jne 0x100a8f8b
dec ebx
inc edi
add ebx, ecx
cmp edi, 6
jbe 0x100a8fa8
cmp edi, 3
je 0x100a8fa0
cmp edi, 4
je 0x100a8fa0
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
jmp 0x100a8fa6
inc dword [ebp - 0x8c]
xor edi, edi
mov eax, dword [ebp - 0xa4]
inc ebx
cmp ebx, dword [ebp - 0xa8]
jb 0x100a8ee0
mov ebx, dword [ebp - 0x98]
push 4
mov ecx, ebx
call fcn.100abad0
test eax, eax
jne 0x100a8cc0
mov eax, dword [ebx + 4]
test eax, eax
je 0x100a8cc0
test byte [eax], 4
je 0x100a8cc0
cmp dword [eax + 0xc06c], 0x1000
lea ecx, [eax + 0x2004]
mov dword [ebp - 0xa4], ecx
jb 0x100a8cc0
test ecx, ecx
je 0x100a8cc0
xor edi, edi
xor ebx, ebx
nop
mov al, byte [ecx + ebx]
add ecx, ebx
cmp al, 0x89
je 0x100a9232
cmp al, 0x8b
je 0x100a9232
cmp al, 0xc1
je 0x100a9232
cmp al, 0xd3
je 0x100a9232
cmp al, 0x8d
je 0x100a9232
cmp al, 0xc7
je 0x100a9232
cmp al, 0xa1
je 0x100a9051
cmp al, 0xa3
jne 0x100a929d
inc edi
add ebx, 4
cmp edi, 6
ja 0x100a92a7
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0xa4]
inc ebx
cmp ebx, 0xfec
jb 0x100a9010
cmp eax, 7
jge 0x100a92cb
cmp eax, 4
jle 0x100a8cc0
xor ecx, ecx
cmp esi, 3
jbe 0x100a8cc0
add eax, esi
cmp eax, 0xe
jae 0x100a909f
test ecx, ecx
je 0x100a8cc0
mov ebx, dword [ebp - 0xb8]
mov eax, dword [ebx + 0x10]
add eax, 0x20
push eax
mov eax, dword [ebp - 0x98]
mov ecx, dword [eax]
call fcn.10001100
mov edi, eax
mov dword [ebp - 0x8c], edi
mov dword [ebp - 0xa4], edi
test edi, edi
je 0x100a8cc0
mov eax, dword [ebx + 0x10]
push eax
push edi
push dword [ebx + 0x14]
mov ebx, dword [ebp - 0x98]
mov dword [ebp - 0x94], eax
mov ecx, dword [ebx]
call fcn.100043c0
mov edx, dword [ebp - 0x94]
lea eax, [edx - 0xa]
mov dword [ebp - 0xe8], eax
cmp edx, 0xa
je 0x100aa247
xor eax, eax
mov dword [ebp - 0xb8], 0
xor ecx, ecx
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0x88], eax
lea esi, [ecx + 7]
mov dword [ebp - 0xcc], 0
mov eax, edi
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xe0], 4
mov dword [ebp - 0xa8], 3
mov dword [ebp - 0x90], 7
mov al, byte [eax]
cmp al, 0x64
jne 0x100a9845
mov eax, dword [ebp - 0x88]
mov ecx, 0x35ff
movzx eax, word [eax + edi + 1]
cmp ax, cx
mov ecx, dword [ebp - 0x88]
jne 0x100a9537
cmp dword [ecx + edi + 3], 0
jne 0x100aa0d7
add esi, edi
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0xbc], 0xffffffff
xorps xmm0, xmm0
mov dword [ebp - 0xa0], 1
lea eax, [edx + edi]
mov dword [ebp - 0xc4], eax
movups xmmword [ebp - 0x24], xmm0
movups xmmword [ebp - 0x14], xmm0
cmp esi, edi
jb 0x100aa0d1
cmp esi, eax
jae 0x100aa0c5
mov ecx, dword [ebx]
push esi
call fcn.10009d90
movzx ecx, byte [esi]
movzx eax, ax
mov dword [ebp - 0xb0], eax
mov al, byte [esi + 1]
movzx edx, al
mov edi, edx
mov dword [ebp - 0xc0], edx
mov ebx, edx
shr edi, 3
shr ebx, 6
and edi, 7
and edx, 7
cmp ecx, 0xe8
jb 0x100a9373
cmp ecx, 0xe9
ja 0x100a92de
mov eax, dword [esi + 1]
add esi, 5
add esi, eax
jmp 0x100a9502
movzx eax, byte [ecx + 1]
mov edx, eax
and eax, 7
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0x98]
shr edx, 6
push ecx
mov dword [ebp - 0xb0], edx
mov ecx, dword [eax]
call fcn.10009d90
movzx ecx, ax
mov eax, dword [ebp - 0xb0]
test eax, eax
je 0x100a9287
cmp eax, 1
jne 0x100a9280
cmp dword [ebp - 0xac], 4
jne 0x100a9290
mov eax, dword [ebp - 0xa4]
cmp byte [ebx + eax + 2], 0x24
jmp 0x100a928e
cmp eax, 2
jne 0x100a929d
jmp 0x100a926a
cmp dword [ebp - 0xac], 5
jne 0x100a929d
dec ebx
inc edi
add ebx, ecx
cmp edi, 6
jbe 0x100a905e
cmp edi, 3
je 0x100a92b7
cmp edi, 4
je 0x100a92b7
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
xor edi, edi
jmp 0x100a905e
mov eax, dword [ebp - 0x8c]
inc eax
xor edi, edi
mov dword [ebp - 0x8c], eax
jmp 0x100a9064
cmp esi, 7
jl 0x100a9085
mov ecx, 1
jmp 0x100a9090
cmp ecx, 0xeb
jne 0x100a92f3
movsx eax, al
add esi, 2
add esi, eax
jmp 0x100a9502
cmp ecx, 0xfc
jne 0x100a93f6
cmp dword [ebp - 0x9c], 0
je 0x100a94fc
mov ebx, dword [ebp - 0x98]
xor edi, edi
push esi
mov ecx, dword [ebx]
call fcn.10009d90
movzx eax, ax
add esi, eax
movzx eax, byte [esi]
cmp eax, 0xf2
je 0x100aa0bf
nop
cmp eax, 0xf3
je 0x100aa0bf
cmp eax, 0xa9
jbe 0x100a934d
cmp eax, 0xb0
jb 0x100aa0bf
inc edi
cmp edi, 5
jae 0x100aa0ab
mov ecx, dword [ebx]
push esi
call fcn.10009d90
movzx eax, ax
add esi, eax
movzx eax, byte [esi]
cmp eax, 0xf2
jne 0x100a9330
jmp 0x100aa0bf
cmp ecx, 0xc2
jb 0x100a93a7
cmp ecx, 0xc3
jbe 0x100a9a6d
cmp ecx, 0xcc
jne 0x100a93f6
cmp dword [ebp - 0x9c], 0
je 0x100a94fc
inc dword [ebp - 0xdc]
jmp 0x100aa0b9
cmp ecx, 0x64
jne 0x100a93ea
cmp dword [ebp - 0xc0], 0x89
jne 0x100a94fc
mov al, byte [esi + 2]
cmp al, 0x40
jae 0x100a94fc
and al, 7
cmp al, 5
jne 0x100a94fc
cmp dword [esi + 3], 0
jne 0x100a94fc
mov dword [ebp - 0x9c], 1
jmp 0x100a94fc
cmp ecx, 0x8d
je 0x100a94dd
lea eax, [ecx - 0x81]
cmp eax, 0x7e
ja case.0x100a940c.130
movzx eax, byte [eax + 0x100aa2e0]
jmp dword [eax*4 + 0x100aa2d0]
cmp ebx, 3
jne 0x100a9432
cmp edi, 2
je 0x100a9422
cmp edi, 4
jne 0x100a9432
mov ecx, dword [ebp - 0xbc]
cmp edx, ecx
je 0x100a9ec6
jmp 0x100a9438
mov ecx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xc0]
cmp eax, 0x15
je 0x100a944c
cmp eax, 0x25
jne 0x100a94fc
cmp ecx, 0xffffffff
jmp 0x100a9ec0
cmp ebx, 1
je 0x100a9472
cmp ebx, 2
je 0x100a9472
test ebx, ebx
jne 0x100a9467
cmp edx, 5
je 0x100a9472
xor eax, eax
mov dword [ebp + edi*4 - 0x24], eax
jmp 0x100a94fc
mov eax, 1
mov dword [ebp + edi*4 - 0x24], eax
jmp 0x100a94fc
cmp dword [ebp - 0x9c], 0
je 0x100a94fc
test ebx, ebx
jne 0x100a94fc
cmp edx, 4
je 0x100a94fc
cmp edx, 5
je 0x100a94fc
cmp dword [ebp + edx*4 - 0x24], 1
jne 0x100a94fc
inc dword [ebp - 0xcc]
jmp 0x100aa0b9
cmp ecx, 0x3d
je 0x100a94fc
lea eax, [ecx - 0xc6]
cmp eax, 1
ja 0x100a94fc
cmp dword [ebp - 0x9c], 0
je 0x100a94fc
test ebx, ebx
jne 0x100a94fc
cmp edx, 4
je 0x100a94fc
cmp edx, 5
je 0x100a94fc
test edi, edi
jne 0x100a94fc
cmp dword [ebp + edx*4 - 0x24], 1
je 0x100a949e
jmp 0x100a94fc
cmp dword [ebp - 0x9c], 0
je 0x100a94fc
cmp ebx, 2
jne 0x100a94fc
mov eax, dword [ebp - 0xbc]
cmp edx, edi
cmove eax, edi
mov dword [ebp - 0xbc], eax
add esi, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x8c]
cmp eax, 0x1e
jae 0x100a9a73
mov ebx, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0xa0], eax
cmp esi, edi
jb 0x100aa0c5
mov eax, dword [ebp - 0xc4]
jmp 0x100a91d5
cmp al, 0x8b
jne 0x100aa0d7
cmp dword [ecx + edi + 3], 0
jne 0x100aa0d7
mov eax, dword [ebp - 0xa4]
mov al, byte [eax + 2]
cmp al, 0x40
jae 0x100aa0d7
and al, 7
cmp al, 5
jne 0x100aa0d7
add esi, edi
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0xa0], 0xffffffff
xorps xmm0, xmm0
mov dword [ebp - 0xc4], 1
lea eax, [edx + edi]
mov dword [ebp - 0xbc], eax
movups xmmword [ebp - 0x44], xmm0
movups xmmword [ebp - 0x34], xmm0
cmp esi, edi
jb 0x100aa0d1
cmp esi, eax
jae 0x100aa0c5
mov ecx, dword [ebx]
push esi
call fcn.10009d90
movzx ecx, byte [esi]
movzx eax, ax
mov dword [ebp - 0xb0], eax
mov al, byte [esi + 1]
movzx edx, al
mov edi, edx
mov dword [ebp - 0xc0], edx
mov ebx, edx
shr edi, 3
shr ebx, 6
and edi, 7
and edx, 7
cmp ecx, 0xe8
jb 0x100a9693
cmp ecx, 0xe9
ja 0x100a95fa
mov eax, dword [esi + 1]
add esi, 5
add esi, eax
jmp 0x100a9810
cmp ecx, 0xeb
jne 0x100a960f
movsx eax, al
add esi, 2
add esi, eax
jmp 0x100a9810
cmp ecx, 0xfc
jne 0x100a9739
cmp dword [ebp - 0x9c], 0
je 0x100a980a
mov ebx, dword [ebp - 0x98]
xor edi, edi
push esi
mov ecx, dword [ebx]
call fcn.10009d90
movzx eax, ax
add esi, eax
movzx eax, byte [esi]
cmp eax, 0xf2
je 0x100aa0bf
nop dword [eax + eax]
cmp eax, 0xf3
je 0x100aa0bf
cmp eax, 0xa9
jbe 0x100a966d
cmp eax, 0xb0
jb 0x100aa0bf
inc edi
cmp edi, 5
jae 0x100aa0ab
mov ecx, dword [ebx]
push esi
call fcn.10009d90
movzx eax, ax
add esi, eax
movzx eax, byte [esi]
cmp eax, 0xf2
jne 0x100a9650
jmp 0x100aa0bf
cmp ecx, 0xc2
jae 0x100a9713
cmp ecx, 0x64
je 0x100a96d5
cmp ecx, 0x8d
jne 0x100a9739
cmp dword [ebp - 0x9c], 0
je 0x100a980a
cmp ebx, 2
jne 0x100a980a
cmp edx, edi
jne 0x100a980a
mov dword [ebp - 0xa0], edi
jmp 0x100a980a
cmp dword [ebp - 0xc0], 0x89
jne 0x100a980a
mov al, byte [esi + 2]
cmp al, 0x40
jae 0x100a980a
and al, 7
cmp al, 5
jne 0x100a980a
cmp dword [esi + 3], 0
jne 0x100a980a
mov dword [ebp - 0x9c], 1
jmp 0x100a980a
cmp ecx, 0xc3
jbe 0x100a9a6d
cmp ecx, 0xcc
jne 0x100a9739
cmp dword [ebp - 0x9c], 0
jne 0x100a939c
jmp 0x100a980a
lea eax, [ecx - 0x81]
cmp eax, 0x7e
ja case.0x100a974f.130
movzx eax, byte [eax + 0x100aa370]
jmp dword [eax*4 + 0x100aa360]
cmp ebx, 3
jne 0x100a9775
cmp edi, 2
je 0x100a9765
cmp edi, 4
jne 0x100a9775
mov ecx, dword [ebp - 0xa0]
cmp edx, ecx
je 0x100a9ec6
jmp 0x100a977b
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xc0]
cmp eax, 0x15
je 0x100a944c
cmp eax, 0x25
je 0x100a944c
jmp 0x100a980a
cmp ebx, 1
je 0x100a97b0
cmp ebx, 2
je 0x100a97b0
test ebx, ebx
jne 0x100a97a8
cmp edx, 5
je 0x100a97b0
xor eax, eax
mov dword [ebp + edi*4 - 0x44], eax
jmp 0x100a980a
mov eax, 1
mov dword [ebp + edi*4 - 0x44], eax
jmp 0x100a980a
cmp dword [ebp - 0x9c], 0
je 0x100a980a
test ebx, ebx
jne 0x100a980a
cmp edx, 4
je 0x100a980a
cmp edx, 5
je 0x100a980a
jmp 0x100a97ff
cmp ecx, 0x3d
je 0x100a980a
lea eax, [ecx - 0xc6]
cmp eax, 1
ja 0x100a980a
cmp dword [ebp - 0x9c], 0
je 0x100a980a
test ebx, ebx
jne 0x100a980a
cmp edx, 4
je 0x100a980a
cmp edx, 5
je 0x100a980a
test edi, edi
jne 0x100a980a
cmp dword [ebp + edx*4 - 0x44], 1
je 0x100a949e
add esi, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xc4]
mov edi, dword [ebp - 0x8c]
cmp eax, 0x1e
jae 0x100a9a73
mov ebx, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0xc4], eax
cmp esi, edi
jb 0x100aa0c5
mov eax, dword [ebp - 0xbc]
jmp 0x100a95a1
cmp al, 0xc1
je 0x100a9d23
cmp al, 0xff
je 0x100a98df
cmp al, 0xf
jne 0x100aa0d7
cmp byte [ecx + edi + 1], 0xb6
jne 0x100aa0d7
cmp byte [ecx + edi + 3], 0x85
jne 0x100aa0d7
mov ecx, dword [ebp - 0xa4]
movzx esi, byte [ecx + 2]
mov ecx, esi
and ecx, 7
cmp esi, 0x40
jae 0x100aa0cb
mov eax, dword [ebp - 0xa4]
movzx edx, byte [eax + 4]
mov eax, edx
and eax, 0xffffffc0
cmp eax, 0xc0
jne 0x100aa0c5
cmp ecx, 4
je 0x100aa0c5
cmp ecx, 5
je 0x100aa0c5
mov ecx, dword [ebp - 0x88]
xor edx, esi
mov esi, dword [ebp - 0x90]
test dl, 0x38
mov edx, dword [ebp - 0x94]
jne 0x100aa0d7
inc dword [ebp - 0xd4]
jmp 0x100aa0d7
cmp byte [ecx + edi + 1], 0x37
jne 0x100aa0d7
cmp word [ecx + edi + 2], 0
jne 0x100aa0d7
mov esi, dword [ebp - 0xe0]
lea eax, [edx + edi]
add esi, edi
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0xc4], 0xffffffff
xorps xmm0, xmm0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xb0], 1
movups xmmword [ebp - 0x64], xmm0
movups xmmword [ebp - 0x54], xmm0
cmp esi, edi
jb 0x100aa0d1
cmp esi, eax
jae 0x100aa0c5
mov ecx, dword [ebx]
push esi
call fcn.10009d90
movzx ebx, ax
mov al, byte [esi + 1]
movzx ecx, al
mov byte [ebp - 0xb1], al
mov edi, ecx
mov eax, ecx
shr edi, 3
shr eax, 6
mov edx, ecx
mov dword [ebp - 0xc0], eax
and edx, 7
movzx eax, byte [esi]
and edi, 7
mov dword [ebp - 0xa0], edx
cmp eax, 0xe8
jb 0x100a99fa
cmp eax, 0xe9
ja 0x100a999a
mov eax, dword [esi + 1]
add esi, 5
add esi, eax
jmp 0x100a99c5
cmp eax, 0xeb
jne 0x100a99af
movsx eax, byte [ebp - 0xb1]
add eax, 2
add esi, eax
jmp 0x100a99c5
cmp eax, 0xfc
jne 0x100a9a22
cmp dword [ebp - 0x9c], 0
jne 0x100a9cb5
add esi, ebx
mov eax, dword [ebp - 0xb0]
mov edi, dword [ebp - 0x8c]
cmp eax, 0x1e
jae 0x100a9a73
mov ebx, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0xb0], eax
cmp esi, edi
jb 0x100aa0c5
mov eax, dword [ebp - 0xe4]
jmp 0x100a9942
cmp eax, 0xc2
jb 0x100a9a7e
cmp eax, 0xc3
jbe 0x100a9a6d
cmp eax, 0xcc
jne 0x100a9a22
cmp dword [ebp - 0x9c], 0
jne 0x100a939c
jmp 0x100a99c3
cmp eax, 0xff
jne 0x100a9af1
cmp dword [ebp - 0xc0], 3
jne 0x100a9a50
cmp edi, 2
je 0x100a9a40
cmp edi, 4
jne 0x100a9a50
mov eax, dword [ebp - 0xc4]
cmp edx, eax
je 0x100a9ec6
jmp 0x100a9a56
mov eax, dword [ebp - 0xc4]
cmp ecx, 0x15
je 0x100a9a64
cmp ecx, 0x25
jne 0x100a99c3
cmp eax, 0xffffffff
jne 0x100a9ec6
mov edi, dword [ebp - 0x8c]
mov ebx, dword [ebp - 0x98]
jmp 0x100aa0c5
cmp eax, 0x64
jne 0x100a9aba
lea edx, [ebx + esi]
cmp ecx, 0x89
jne 0x100a9ab3
mov al, byte [esi + 2]
cmp al, 0x40
jae 0x100a9ab3
and al, 7
cmp al, 5
jne 0x100a9ab3
mov eax, dword [ebp - 0x9c]
mov ecx, 1
cmp dword [esi + 3], 0
cmove eax, ecx
mov dword [ebp - 0x9c], eax
mov esi, edx
jmp 0x100a99c5
cmp eax, 0x8d
jne 0x100a9af1
add esi, ebx
cmp dword [ebp - 0x9c], 0
je 0x100a99c5
cmp dword [ebp - 0xc0], 2
jne 0x100a99c5
cmp edx, edi
cmovne edi, dword [ebp - 0xc4]
mov dword [ebp - 0xc4], edi
jmp 0x100a99c5
cmp eax, 0x8b
jne 0x100a9b2b
mov eax, dword [ebp - 0xc0]
cmp eax, 1
je 0x100a9b1d
cmp eax, 2
je 0x100a9b1d
cmp ecx, 0x40
jae 0x100a9b12
cmp edx, 5
je 0x100a9b1d
xor eax, eax
mov dword [ebp + edi*4 - 0x64], eax
jmp 0x100a99c3
mov eax, 1
mov dword [ebp + edi*4 - 0x64], eax
jmp 0x100a99c3
cmp eax, 0x81
je 0x100a9c6f
mov edx, eax
sub edx, 0x83
je 0x100a9c64
sub edx, 0x3e
je 0x100a9c55
sub edx, 0x10
je 0x100a9c55
cmp eax, 0xd3
je 0x100a9c02
cmp eax, 0x3d
jne 0x100a9ba6
cmp edi, 7
jne 0x100a99c3
mov eax, dword [esi + ebx - 4]
add esi, ebx
cmp eax, 0x27f
je 0x100a9b85
cmp eax, 0x7f
jne 0x100a99c5
mov eax, dword [ebp - 0xbc]
inc eax
mov dword [ebp - 0xbc], eax
cmp eax, 1
jbe 0x100a99c5
inc dword [ebp - 0xd0]
jmp 0x100aa0b9
cmp eax, 0xc6
jb 0x100a99c3
cmp eax, 0xc7
ja 0x100a99c3
cmp dword [ebp - 0x9c], 0
je 0x100a99c3
cmp ecx, 0x40
jae 0x100a99c3
mov eax, dword [ebp - 0xa0]
cmp eax, 4
je 0x100a99c3
cmp eax, 5
je 0x100a99c3
test edi, edi
jne 0x100a99c3
cmp dword [ebp + eax*4 - 0x64], 1
je 0x100a949e
jmp 0x100a99c3
cmp dword [ebp - 0x9c], 0
je 0x100a99c3
mov edx, dword [ebp - 0xa0]
cmp ecx, 0x40
jae 0x100a9c2f
cmp edx, 4
je 0x100a9c2f
cmp edx, 5
je 0x100a9c2f
cmp dword [ebp + edx*4 - 0x64], 1
je 0x100a949e
cmp eax, 0x81
je 0x100a9c78
cmp eax, 0x83
jne 0x100a99c3
and ecx, 0x38
add esi, ebx
cmp cl, 0x38
jne 0x100a99c5
cmp byte [esi - 1], 0x7f
jmp 0x100a9c94
cmp dword [ebp - 0x9c], 0
je 0x100a99c3
jmp 0x100a9c0f
cmp dword [ebp - 0x9c], 0
je 0x100a9c41
jmp 0x100a9c0f
cmp dword [ebp - 0x9c], 0
jne 0x100a9c15
and ecx, 0x38
cmp cl, 0x38
jne 0x100a99c3
mov eax, dword [esi + ebx - 4]
add esi, ebx
cmp eax, 0x27f
je 0x100a9c9a
cmp eax, 0x7f
jne 0x100a99c5
mov eax, dword [ebp - 0xbc]
inc eax
mov dword [ebp - 0xbc], eax
cmp eax, 1
ja 0x100a9b9b
jmp 0x100a99c5
mov ebx, dword [ebp - 0x98]
xor edi, edi
push esi
mov ecx, dword [ebx]
call fcn.10009d90
movzx eax, ax
add esi, eax
movzx eax, byte [esi]
cmp eax, 0xf2
je 0x100aa0bf
nop dword [eax + eax]
cmp eax, 0xf3
je 0x100aa0bf
cmp eax, 0xa9
jbe 0x100a9cfd
cmp eax, 0xb0
jb 0x100aa0bf
inc edi
cmp edi, 5
jae 0x100aa0ab
mov ecx, dword [ebx]
push esi
call fcn.10009d90
movzx eax, ax
add esi, eax
movzx eax, byte [esi]
cmp eax, 0xf2
jne 0x100a9ce0
jmp 0x100aa0bf
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x88]
mov al, byte [eax + edi + 1]
and al, 0xf8
cmp al, 0xe0
jne 0x100aa0d7
cmp byte [ecx + edi + 2], 4
jne 0x100aa0d7
mov esi, dword [ebp - 0xa8]
lea eax, [edx + edi]
add esi, edi
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0xa0], 0xffffffff
xorps xmm0, xmm0
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xb0], 1
movups xmmword [ebp - 0x84], xmm0
movups xmmword [ebp - 0x74], xmm0
cmp esi, edi
jb 0x100aa0d1
nop dword [eax]
cmp esi, eax
jae 0x100aa0c5
mov ecx, dword [ebx]
push esi
call fcn.10009d90
movzx eax, ax
mov dword [ebp - 0xe4], eax
mov al, byte [esi + 1]
movzx edi, al
mov byte [ebp - 0xb1], al
mov ebx, edi
mov al, byte [esi]
mov edx, edi
shr ebx, 3
mov ecx, edi
mov byte [ebp - 0xc5], al
and ebx, 7
movzx eax, al
and ecx, 7
shr edx, 6
cmp eax, 0xe8
jb 0x100a9ed1
cmp eax, 0xe9
ja 0x100a9df1
mov eax, dword [esi + 1]
add esi, 5
add esi, eax
jmp 0x100aa07a
cmp eax, 0xeb
jne 0x100a9e09
movsx eax, byte [ebp - 0xb1]
add eax, 2
add esi, eax
jmp 0x100aa07a
cmp eax, 0xfc
jne 0x100a9e83
cmp dword [ebp - 0x9c], 0
je 0x100aa074
mov ebx, dword [ebp - 0x98]
xor edi, edi
push esi
mov ecx, dword [ebx]
call fcn.10009d90
movzx eax, ax
add esi, eax
movzx eax, byte [esi]
cmp eax, 0xf2
je 0x100aa0bf
cmp eax, 0xf3
je 0x100aa0bf
cmp eax, 0xa9
jbe 0x100a9e5d
cmp eax, 0xb0
jb 0x100aa0bf
inc edi
cmp edi, 5
jae 0x100aa0ab
mov ecx, dword [ebx]
push esi
call fcn.10009d90
movzx eax, ax
add esi, eax
movzx eax, byte [esi]
cmp eax, 0xf2
jne 0x100a9e40
jmp 0x100aa0bf
cmp eax, 0xff
jne 0x100a9ff6
cmp edx, 3
jne 0x100a9ea9
cmp ebx, 2
je 0x100a9e9d
cmp ebx, 4
jne 0x100a9ea9
mov eax, dword [ebp - 0xa0]
cmp ecx, eax
je 0x100a9ec6
jmp 0x100a9eaf
mov eax, dword [ebp - 0xa0]
cmp edi, 0x15
je 0x100a9ebd
cmp edi, 0x25
jne 0x100aa074
cmp eax, 0xffffffff
je 0x100a9a6d
inc dword [ebp - 0xac]
jmp 0x100aa0b9
cmp eax, 0xc2
jae 0x100a9fbb
cmp eax, 0x64
je 0x100a9f81
cmp eax, 0x8d
jne 0x100a9f15
cmp dword [ebp - 0x9c], 0
je 0x100aa074
cmp edx, 2
jne 0x100aa074
cmp ecx, ebx
jne 0x100aa074
mov dword [ebp - 0xa0], ebx
jmp 0x100aa074
cmp eax, 0x8b
jne 0x100a9f4e
cmp edx, 1
je 0x100a9f3d
cmp edx, 2
je 0x100a9f3d
test edx, edx
jne 0x100a9f2f
cmp ecx, 5
je 0x100a9f3d
xor eax, eax
mov dword [ebp + ebx*4 - 0x84], eax
jmp 0x100aa074
mov eax, 1
mov dword [ebp + ebx*4 - 0x84], eax
jmp 0x100aa074
cmp eax, 0x81
je 0x100aa02b
cmp eax, 0x83
je 0x100aa02b
cmp eax, 0xc1
jne 0x100a9fed
cmp dword [ebp - 0x9c], 0
jne 0x100aa034
jmp 0x100aa05b
cmp edi, 0x89
jne 0x100aa074
mov al, byte [esi + 2]
cmp al, 0x40
jae 0x100aa074
and al, 7
cmp al, 5
jne 0x100aa074
cmp dword [esi + 3], 0
jne 0x100aa074
mov dword [ebp - 0x9c], 1
jmp 0x100aa074
cmp eax, 0xc3
jbe 0x100a9a6d
cmp eax, 0xcc
jne 0x100a9fdf
cmp dword [ebp - 0x9c], 0
jne 0x100a939c
jmp 0x100aa074
cmp eax, 0xd1
je 0x100aa02b
cmp eax, 0xd3
je 0x100aa02b
cmp eax, 0x3d
je 0x100aa074
add eax, 0xffffff3a
cmp eax, 1
ja 0x100aa074
cmp dword [ebp - 0x9c], 0
je 0x100aa074
test edx, edx
jne 0x100aa074
cmp ecx, 4
je 0x100aa074
cmp ecx, 5
je 0x100aa074
test ebx, ebx
jne 0x100aa074
cmp dword [ebp + ecx*4 - 0x84], 1
je 0x100a949e
jmp 0x100aa074
cmp dword [ebp - 0x9c], 0
je 0x100aa074
test edx, edx
jne 0x100aa052
cmp ecx, 4
je 0x100aa074
cmp ecx, 5
je 0x100aa074
cmp dword [ebp + ecx*4 - 0x84], 1
je 0x100a949e
jmp 0x100aa074
cmp byte [ebp - 0xc5], 0xc1
jne 0x100aa074
cmp edx, 3
jne 0x100aa074
cmp ebx, 5
jne 0x100aa074
mov al, byte [esi + 2]
cmp al, bl
je 0x100aa0b3
cmp al, dl
je 0x100a9a6d
add esi, dword [ebp - 0xe4]
mov eax, dword [ebp - 0xb0]
mov edi, dword [ebp - 0x8c]
cmp eax, 0x1e
jae 0x100a9a73
mov ebx, dword [ebp - 0x98]
inc eax
mov dword [ebp - 0xb0], eax
cmp esi, edi
jb 0x100aa0c5
mov eax, dword [ebp - 0xc0]
jmp 0x100a9d90
inc dword [ebp - 0xb8]
jmp 0x100aa0bf
inc dword [ebp - 0xd8]
mov ebx, dword [ebp - 0x98]
mov edi, dword [ebp - 0x8c]
mov edx, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x88]
mov esi, dword [ebp - 0x90]
mov eax, dword [ebp - 0xa4]
inc ecx
inc dword [ebp - 0xe0]
inc eax
inc dword [ebp - 0xa8]
inc esi
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x90], esi
cmp ecx, dword [ebp - 0xe8]
jb 0x100a9165
mov ecx, dword [ebx]
push edi
call fcn.100010e0
mov eax, dword [ebp - 0xac]
mov ecx, dword [ebp - 0xd0]
mov ebx, dword [ebp - 0xb8]
mov esi, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xd4]
mov edi, dword [ebp - 0xd8]
mov dword [ebp - 0xa4], ecx
mov dword [ebp - 0xa0], ebx
test eax, eax
jne 0x100aa184
mov dword [ebp - 0xa8], edx
mov edx, dword [ebp - 0xdc]
mov ecx, edx
test edx, edx
je 0x100aa19d
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xac]
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0xa0], ebx
jmp 0x100aa18e
mov ecx, dword [ebp - 0xdc]
test ecx, ecx
jne 0x100aa1a9
cmp ebx, 3
ja 0x100aa286
test eax, eax
jne 0x100aa1e8
jmp 0x100aa1a3
mov edx, dword [ebp - 0xa8]
test ebx, ebx
jne 0x100aa1e8
jmp 0x100aa1f1
mov eax, dword [ebp - 0xd0]
mov ebx, dword [ebp - 0xb8]
mov esi, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xd4]
mov edi, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0xdc]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xa0], ebx
cmp ebx, 2
ja 0x100aa286
cmp ecx, 3
ja 0x100aa286
cmp esi, 0x46
ja 0x100a8cc0
lea ebx, [eax + ecx]
mov dword [ebp - 0xa8], ebx
cmp ebx, 2
mov ebx, dword [ebp - 0xa0]
jbe 0x100aa218
cmp esi, 2
jbe 0x100aa218
cmp edi, 2
ja 0x100aa286
test eax, eax
je 0x100aa26e
test ecx, ecx
je 0x100aa26e
test esi, esi
je 0x100aa26e
mov eax, dword [ebp - 0xa8]
add eax, esi
cmp eax, 4
jbe 0x100aa26e
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ad43d
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x98]
xor ebx, ebx
push dword [ebp - 0x8c]
xor edi, edi
mov dword [ebp - 0xa4], ebx
xor esi, esi
mov ecx, dword [eax]
call fcn.100010e0
mov dword [ebp - 0xa8], ebx
xor edx, edx
mov ecx, dword [ebp - 0xa8]
add ecx, ebx
add ecx, esi
cmp ecx, 3
jbe 0x100aa29c
cmp edi, 5
jbe 0x100a8cc0
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ad43d
mov esp, ebp
pop ebp
ret
cmp edi, 5
jbe 0x100a8cc0
cmp dword [ebp - 0xa4], 5
ja 0x100aa286
cmp edx, 0xa
jbe 0x100a8cc0
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100ad43d
mov esp, ebp
pop ebp
ret