Function at 0x100aa3f0
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe0
mov eax, dword [0x10172044]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, ecx
push ebx
mov dword [ebp - 0x88], eax
push esi
mov edx, dword [eax]
push edi
movzx eax, word [edx + 0xa8e]
lea ebx, [edx + 0xa92]
mov edi, dword [edx + 0xaa2]
lea ecx, [edx + 0xe7a]
add ebx, eax
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0xb8], ebx
lea eax, [ebx + 0x28]
cmp ecx, eax
jb 0x100ab934
mov eax, dword [ebx + 0xc]
xor ecx, ecx
xor esi, esi
mov dword [ebp - 0x8c], ecx
cmp edi, eax
jb 0x100ab934
mov ebx, dword [ebx + 8]
add eax, ebx
cmp edi, eax
jae 0x100ab934
mov eax, dword [ebp - 0xb8]
mov edi, dword [eax + 0x10]
lea eax, [edi - 0x2000]
cmp eax, 0x9e000
ja 0x100ab934
mov eax, dword [ebp - 0xb8]
cmp dword [eax + 0x24], ecx
jl 0x100aa500
cmp edi, ebx
jne 0x100aa4b3
mov eax, dword [edx + 0xab2]
dec eax
test ebx, eax
je 0x100aa500
cmp dword [edx + 0xad2], ecx
je 0x100aa500
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 [edx + 0xad2], ecx
jne 0x100ab934
mov edi, dword [edx + 0xab2]
dec edi
test dword [edx + 0xaca], edi
jne 0x100aa500
movzx eax, word [edx + 0xa80]
mov ecx, dword [ebp - 0xb8]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*8]
mov ecx, esi
cmp dword [ebp - 0xac], eax
jb 0x100ab934
test ebx, edi
je 0x100ab934
test dword [eax - 0x20], edi
jne 0x100ab934
mov edi, dword [ebp - 0xb8]
mov ebx, dword [edx + 0xb56]
mov dword [ebp - 0xc4], ebx
mov eax, dword [edi + 0xc]
cmp eax, dword [edx + 0xb52]
jne 0x100aa538
cmp ebx, 0x1000
jb 0x100aa53e
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 - 0xc4], esi
xor edi, edi
xor ebx, ebx
mov eax, dword [ebp - 0x88]
mov edx, dword [eax]
lea eax, [edx + ebx]
mov al, byte [eax + 0x427a]
cmp al, 0x89
je 0x100aa592
cmp al, 0x8b
je 0x100aa592
cmp al, 0xc1
je 0x100aa592
cmp al, 0xd3
je 0x100aa592
cmp al, 0x8d
je 0x100aa592
cmp al, 0xc7
je 0x100aa592
cmp al, 0xa1
je 0x100aa577
cmp al, 0xa3
jne 0x100aa608
inc edi
add ebx, 4
cmp edi, 6
jbe 0x100aa626
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
jmp 0x100aa624
movzx eax, byte [edx + ebx + 0x427b]
mov ecx, eax
and eax, 7
mov dword [ebp - 0xa8], eax
lea eax, [edx + 0x427a]
shr ecx, 6
add eax, ebx
mov dword [ebp - 0xac], ecx
mov ecx, edx
push eax
call fcn.10009d90
movzx ecx, ax
mov eax, dword [ebp - 0xac]
test eax, eax
jne 0x100aa5d4
cmp dword [ebp - 0xa8], 5
jmp 0x100aa5f7
cmp eax, 1
je 0x100aa5de
cmp eax, 2
jne 0x100aa602
cmp dword [ebp - 0xa8], 4
jne 0x100aa5f9
mov eax, dword [ebp - 0x88]
mov eax, dword [eax]
cmp byte [ebx + eax + 0x427c], 0x24
jne 0x100aa602
dec ebx
inc edi
add ebx, ecx
cmp edi, 6
jbe 0x100aa626
mov ecx, dword [ebp - 0x8c]
cmp edi, 3
je 0x100aa61d
cmp edi, 4
je 0x100aa61d
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
jmp 0x100aa624
inc ecx
mov dword [ebp - 0x8c], ecx
xor edi, edi
mov ecx, dword [ebp - 0x8c]
inc ebx
cmp ebx, 0xfec
jl 0x100aa542
mov ebx, dword [ebp - 0x88]
mov ecx, ebx
push 1
call fcn.100abad0
test eax, eax
jne 0x100ab934
mov eax, dword [ebx + 4]
test eax, eax
je 0x100ab934
test byte [eax], 1
je 0x100ab934
cmp dword [eax + 0xc064], 0x1000
lea ecx, [eax + 4]
jb 0x100ab934
test ecx, ecx
je 0x100ab934
mov edx, dword [ebp - 0xc4]
mov eax, 0xfec
sub eax, edx
mov dword [ebp - 0xc4], eax
je 0x100aa786
lea eax, [ecx + edx]
xor edi, edi
mov dword [ebp - 0xb4], eax
xor ebx, ebx
lea ecx, [ebx + eax]
mov al, byte [ecx]
cmp al, 0x89
je 0x100aa6e9
cmp al, 0x8b
je 0x100aa6e9
cmp al, 0xc1
je 0x100aa6e9
cmp al, 0xd3
je 0x100aa6e9
cmp al, 0x8d
je 0x100aa6e9
cmp al, 0xc7
je 0x100aa6e9
cmp al, 0xa1
je 0x100aa6ce
cmp al, 0xa3
jne 0x100aa750
inc edi
add ebx, 4
cmp edi, 6
jbe 0x100aa76d
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
jmp 0x100aa76b
movzx eax, byte [ecx + 1]
mov edx, eax
and eax, 7
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x88]
shr edx, 6
push ecx
mov dword [ebp - 0xac], edx
mov ecx, dword [eax]
call fcn.10009d90
movzx ecx, ax
mov eax, dword [ebp - 0xac]
test eax, eax
jne 0x100aa727
cmp dword [ebp - 0xa8], 5
je 0x100aa747
jmp 0x100aa750
cmp eax, 1
je 0x100aa731
cmp eax, 2
jne 0x100aa750
cmp dword [ebp - 0xa8], 4
jne 0x100aa747
mov eax, dword [ebp - 0xb4]
cmp byte [ebx + eax + 2], 0x24
jne 0x100aa750
dec ebx
inc edi
add ebx, ecx
cmp edi, 6
jbe 0x100aa76d
cmp edi, 3
je 0x100aa765
cmp edi, 4
je 0x100aa765
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
jmp 0x100aa76b
inc dword [ebp - 0x8c]
xor edi, edi
mov eax, dword [ebp - 0xb4]
inc ebx
cmp ebx, dword [ebp - 0xc4]
jb 0x100aa6a5
mov ebx, dword [ebp - 0x88]
push 4
mov ecx, ebx
call fcn.100abad0
test eax, eax
jne 0x100ab934
mov eax, dword [ebx + 4]
test eax, eax
je 0x100ab934
test byte [eax], 4
je 0x100ab934
cmp dword [eax + 0xc06c], 0x1000
lea ecx, [eax + 0x2004]
mov dword [ebp - 0xb4], ecx
jb 0x100ab934
test ecx, ecx
je 0x100ab934
xor edi, edi
xor ebx, ebx
mov al, byte [ecx + ebx]
add ecx, ebx
cmp al, 0x89
je 0x100aa9f5
cmp al, 0x8b
je 0x100aa9f5
cmp al, 0xc1
je 0x100aa9f5
cmp al, 0xd3
je 0x100aa9f5
cmp al, 0x8d
je 0x100aa9f5
cmp al, 0xc7
je 0x100aa9f5
cmp al, 0xa1
je 0x100aa814
cmp al, 0xa3
jne 0x100aaa60
inc edi
add ebx, 4
cmp edi, 6
ja 0x100aaa6a
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0xb4]
inc ebx
cmp ebx, 0xfec
jb 0x100aa7d3
cmp eax, 7
jge 0x100aaa8e
cmp eax, 4
jle 0x100ab934
xor ecx, ecx
cmp esi, 3
jbe 0x100ab934
add eax, esi
cmp eax, 0xe
jae 0x100aa862
test ecx, ecx
je 0x100ab934
mov ebx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0x88]
mov eax, dword [ebx + 0x10]
mov ecx, dword [edi]
add eax, 0x20
push eax
call fcn.10001100
mov esi, eax
mov dword [ebp - 0x8c], esi
test esi, esi
je 0x100ab934
mov eax, dword [ebx + 0x10]
mov ecx, dword [edi]
push eax
push esi
push dword [ebx + 0x14]
mov dword [ebp - 0x98], eax
call fcn.100043c0
mov ebx, dword [ebp - 0x98]
lea eax, [ebx - 0xa]
mov dword [ebp - 0xe0], eax
cmp ebx, 0xa
je 0x100ab92c
xor ecx, ecx
mov dword [ebp - 0xc8], 0
xor edx, edx
mov dword [ebp - 0xb4], ecx
xor esi, esi
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xc4], ecx
mov ecx, dword [ebp - 0x8c]
mov eax, ecx
mov dword [ebp - 0xa8], esi
lea esi, [edx + 7]
mov dword [ebp - 0xb8], edx
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0x90], edx
mov dword [ebp - 0xd0], 3
mov dword [ebp - 0x94], 7
mov dword [ebp - 0xd8], 4
nop dword [eax]
mov al, byte [eax]
cmp al, 0x64
jne 0x100ab026
mov eax, dword [ebp - 0x90]
mov edx, 0x35ff
movzx eax, word [eax + ecx + 1]
cmp ax, dx
mov edx, dword [ebp - 0x90]
jne 0x100aad05
cmp dword [edx + ecx + 3], 0
jne 0x100ab682
xorps xmm0, xmm0
mov dword [ebp - 0x9c], 0
add esi, ecx
mov dword [ebp - 0xb0], 0xffffffff
mov dword [ebp - 0xbc], 1
lea eax, [ebx + ecx]
mov dword [ebp - 0xc0], eax
movups xmmword [ebp - 0x24], xmm0
movups xmmword [ebp - 0x14], xmm0
cmp esi, ecx
jb 0x100ab67c
cmp esi, eax
jae 0x100ab670
mov ecx, dword [edi]
push esi
call fcn.10009d90
movzx ecx, byte [esi]
movzx eax, ax
mov dword [ebp - 0xa4], eax
mov al, byte [esi + 1]
mov byte [ebp - 0x9d], al
movzx eax, al
mov edi, eax
mov dword [ebp - 0xac], eax
shr edi, 3
mov ebx, eax
mov edx, eax
shr ebx, 6
and edi, 7
and edx, 7
cmp ecx, 0xe8
jb 0x100aab49
cmp ecx, 0xe9
ja 0x100aaaa1
mov eax, dword [esi + 1]
add esi, 5
add esi, eax
jmp 0x100aacd0
movzx eax, byte [ecx + 1]
mov edx, eax
and eax, 7
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x88]
shr edx, 6
push ecx
mov dword [ebp - 0xac], edx
mov ecx, dword [eax]
call fcn.10009d90
movzx ecx, ax
mov eax, dword [ebp - 0xac]
test eax, eax
je 0x100aaa4a
cmp eax, 1
jne 0x100aaa43
cmp dword [ebp - 0xa8], 4
jne 0x100aaa53
mov eax, dword [ebp - 0xb4]
cmp byte [ebx + eax + 2], 0x24
jmp 0x100aaa51
cmp eax, 2
jne 0x100aaa60
jmp 0x100aaa2d
cmp dword [ebp - 0xa8], 5
jne 0x100aaa60
dec ebx
inc edi
add ebx, ecx
cmp edi, 6
jbe 0x100aa821
cmp edi, 3
je 0x100aaa7a
cmp edi, 4
je 0x100aaa7a
cmp edi, 4
lea eax, [esi + 1]
cmova esi, eax
xor edi, edi
jmp 0x100aa821
mov eax, dword [ebp - 0x8c]
inc eax
xor edi, edi
mov dword [ebp - 0x8c], eax
jmp 0x100aa827
cmp esi, 7
jl 0x100aa848
mov ecx, 1
jmp 0x100aa853
cmp ecx, 0xeb
jne 0x100aaaba
movsx eax, byte [ebp - 0x9d]
add eax, 2
add esi, eax
jmp 0x100aacd0
cmp ecx, 0xfc
jne 0x100aabc7
cmp dword [ebp - 0x9c], 0
je 0x100aacca
mov eax, dword [ebp - 0x88]
xor ebx, ebx
push esi
mov ecx, dword [eax]
call fcn.10009d90
movzx edi, ax
movzx eax, byte [edi + esi]
add edi, esi
cmp eax, 0xf2
je 0x100ab664
nop word [eax + eax]
cmp eax, 0xf3
je 0x100ab664
cmp eax, 0xa9
jbe 0x100aab1d
cmp eax, 0xb0
jb 0x100ab664
inc ebx
cmp ebx, 5
jae 0x100ab885
mov eax, dword [ebp - 0x88]
push edi
mov ecx, dword [eax]
call fcn.10009d90
movzx eax, ax
add edi, eax
movzx eax, byte [edi]
cmp eax, 0xf2
jne 0x100aab00
jmp 0x100ab664
cmp ecx, 0xc2
jb 0x100aab7d
cmp ecx, 0xc3
jbe 0x100ab664
cmp ecx, 0xcc
jne 0x100aabc7
cmp dword [ebp - 0x9c], 0
je 0x100aacca
inc dword [ebp - 0xb8]
jmp 0x100ab664
cmp ecx, 0x64
jne 0x100aabbb
cmp eax, 0x89
jne 0x100aacca
mov al, byte [esi + 2]
cmp al, 0x40
jae 0x100aacca
and al, 7
cmp al, 5
jne 0x100aacca
cmp dword [esi + 3], 0
jne 0x100aacca
mov dword [ebp - 0x9c], 1
jmp 0x100aacca
cmp ecx, 0x8d
je 0x100aacab
lea eax, [ecx - 0x81]
cmp eax, 0x7e
ja case.0x100aabdd.130
movzx eax, byte [eax + 0x100ab958]
jmp dword [eax*4 + 0x100ab948]
cmp ebx, 3
jne 0x100aac03
cmp edi, 2
je 0x100aabf3
cmp edi, 4
jne 0x100aac03
mov ecx, dword [ebp - 0xb0]
cmp edx, ecx
je 0x100ab52c
jmp 0x100aac09
mov ecx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xac]
cmp eax, 0x15
je 0x100aac1d
cmp eax, 0x25
jne 0x100aacca
cmp ecx, 0xffffffff
jmp 0x100ab526
cmp ebx, 1
je 0x100aac43
cmp ebx, 2
je 0x100aac43
test ebx, ebx
jne 0x100aac38
cmp edx, 5
je 0x100aac43
xor eax, eax
mov dword [ebp + edi*4 - 0x24], eax
jmp 0x100aacca
mov eax, 1
mov dword [ebp + edi*4 - 0x24], eax
jmp 0x100aacca
cmp dword [ebp - 0x9c], 0
je 0x100aacca
test ebx, ebx
jne 0x100aacca
cmp edx, 4
je 0x100aacca
cmp edx, 5
je 0x100aacca
cmp dword [ebp + edx*4 - 0x24], 1
jne 0x100aacca
inc dword [ebp - 0xa8]
jmp 0x100ab664
cmp ecx, 0x3d
je 0x100aacca
lea eax, [ecx - 0xc6]
cmp eax, 1
ja 0x100aacca
cmp dword [ebp - 0x9c], 0
je 0x100aacca
test ebx, ebx
jne 0x100aacca
cmp edx, 4
je 0x100aacca
cmp edx, 5
je 0x100aacca
test edi, edi
jne 0x100aacca
cmp dword [ebp + edx*4 - 0x24], 1
je 0x100aac6c
jmp 0x100aacca
cmp dword [ebp - 0x9c], 0
je 0x100aacca
cmp ebx, 2
jne 0x100aacca
mov eax, dword [ebp - 0xb0]
cmp edx, edi
cmove eax, edi
mov dword [ebp - 0xb0], eax
add esi, dword [ebp - 0xa4]
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x8c]
cmp eax, 0x1e
jae 0x100ab66a
mov edi, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0xbc], eax
cmp esi, ecx
jb 0x100ab670
mov eax, dword [ebp - 0xc0]
jmp 0x100aa990
cmp al, 0x8b
jne 0x100ab682
cmp dword [edx + ecx + 3], 0
jne 0x100ab682
mov eax, dword [ebp - 0xd4]
mov al, byte [eax + 2]
cmp al, 0x40
jae 0x100ab682
and al, 7
cmp al, 5
jne 0x100ab682
xorps xmm0, xmm0
mov dword [ebp - 0x9c], 0
add esi, ecx
mov dword [ebp - 0xa4], 0xffffffff
mov dword [ebp - 0xbc], 1
lea eax, [ebx + ecx]
mov dword [ebp - 0xb0], eax
movups xmmword [ebp - 0x44], xmm0
movups xmmword [ebp - 0x34], xmm0
cmp esi, ecx
jb 0x100ab67c
nop
cmp esi, eax
jae 0x100ab670
mov ecx, dword [edi]
push esi
call fcn.10009d90
movzx ecx, byte [esi]
movzx eax, ax
mov dword [ebp - 0xc0], eax
mov al, byte [esi + 1]
mov byte [ebp - 0x9d], al
movzx eax, al
mov edi, eax
mov dword [ebp - 0xac], eax
shr edi, 3
mov ebx, eax
mov edx, eax
shr ebx, 6
and edi, 7
and edx, 7
cmp ecx, 0xe8
jb 0x100aae79
cmp ecx, 0xe9
ja 0x100aadd1
mov eax, dword [esi + 1]
add esi, 5
add esi, eax
jmp 0x100aaff1
cmp ecx, 0xeb
jne 0x100aadea
movsx eax, byte [ebp - 0x9d]
add eax, 2
add esi, eax
jmp 0x100aaff1
cmp ecx, 0xfc
jne 0x100aaf1a
cmp dword [ebp - 0x9c], 0
je 0x100aafeb
mov eax, dword [ebp - 0x88]
xor ebx, ebx
push esi
mov ecx, dword [eax]
call fcn.10009d90
movzx edi, ax
movzx eax, byte [edi + esi]
add edi, esi
cmp eax, 0xf2
je 0x100ab664
nop word [eax + eax]
cmp eax, 0xf3
je 0x100ab664
cmp eax, 0xa9
jbe 0x100aae4d
cmp eax, 0xb0
jb 0x100ab664
inc ebx
cmp ebx, 5
jae 0x100ab885
mov eax, dword [ebp - 0x88]
push edi
mov ecx, dword [eax]
call fcn.10009d90
movzx eax, ax
add edi, eax
movzx eax, byte [edi]
cmp eax, 0xf2
jne 0x100aae30
jmp 0x100ab664
cmp ecx, 0xc2
jae 0x100aaef4
cmp ecx, 0x64
je 0x100aaebb
cmp ecx, 0x8d
jne 0x100aaf1a
cmp dword [ebp - 0x9c], 0
je 0x100aafeb
cmp ebx, 2
jne 0x100aafeb
cmp edx, edi
jne 0x100aafeb
mov dword [ebp - 0xa4], edi
jmp 0x100aafeb
cmp eax, 0x89
jne 0x100aafeb
mov al, byte [esi + 2]
cmp al, 0x40
jae 0x100aafeb
and al, 7
cmp al, 5
jne 0x100aafeb
cmp dword [esi + 3], 0
jne 0x100aafeb
mov dword [ebp - 0x9c], 1
jmp 0x100aafeb
cmp ecx, 0xc3
jbe 0x100ab664
cmp ecx, 0xcc
jne 0x100aaf1a
cmp dword [ebp - 0x9c], 0
jne 0x100aab72
jmp 0x100aafeb
lea eax, [ecx - 0x81]
cmp eax, 0x7e
ja case.0x100aaf30.130
movzx eax, byte [eax + 0x100ab9e8]
jmp dword [eax*4 + 0x100ab9d8]
cmp ebx, 3
jne 0x100aaf56
cmp edi, 2
je 0x100aaf46
cmp edi, 4
jne 0x100aaf56
mov ecx, dword [ebp - 0xa4]
cmp edx, ecx
je 0x100ab52c
jmp 0x100aaf5c
mov ecx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0xac]
cmp eax, 0x15
je 0x100aac1d
cmp eax, 0x25
je 0x100aac1d
jmp 0x100aafeb
cmp ebx, 1
je 0x100aaf91
cmp ebx, 2
je 0x100aaf91
test ebx, ebx
jne 0x100aaf89
cmp edx, 5
je 0x100aaf91
xor eax, eax
mov dword [ebp + edi*4 - 0x44], eax
jmp 0x100aafeb
mov eax, 1
mov dword [ebp + edi*4 - 0x44], eax
jmp 0x100aafeb
cmp dword [ebp - 0x9c], 0
je 0x100aafeb
test ebx, ebx
jne 0x100aafeb
cmp edx, 4
je 0x100aafeb
cmp edx, 5
je 0x100aafeb
jmp 0x100aafe0
cmp ecx, 0x3d
je 0x100aafeb
lea eax, [ecx - 0xc6]
cmp eax, 1
ja 0x100aafeb
cmp dword [ebp - 0x9c], 0
je 0x100aafeb
test ebx, ebx
jne 0x100aafeb
cmp edx, 4
je 0x100aafeb
cmp edx, 5
je 0x100aafeb
test edi, edi
jne 0x100aafeb
cmp dword [ebp + edx*4 - 0x44], 1
je 0x100aac6c
add esi, dword [ebp - 0xc0]
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x8c]
cmp eax, 0x1e
jae 0x100ab66a
mov edi, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0xbc], eax
cmp esi, ecx
jb 0x100ab670
mov eax, dword [ebp - 0xb0]
jmp 0x100aad70
cmp al, 0xc1
jne 0x100ab397
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x90]
mov al, byte [eax + ecx + 1]
and al, 0xf8
cmp al, 0xe0
jne 0x100ab682
cmp byte [edx + ecx + 2], 4
jne 0x100ab682
mov esi, dword [ebp - 0xd0]
lea eax, [ebx + ecx]
xorps xmm0, xmm0
mov dword [ebp - 0x9c], 0
add esi, ecx
mov dword [ebp - 0xa4], 0xffffffff
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], 1
movups xmmword [ebp - 0x64], xmm0
movups xmmword [ebp - 0x54], xmm0
cmp esi, ecx
jb 0x100ab67c
cmp esi, eax
jae 0x100ab670
mov ecx, dword [edi]
push esi
call fcn.10009d90
movzx ecx, byte [esi]
movzx eax, ax
mov dword [ebp - 0xac], eax
mov al, byte [esi + 1]
mov byte [ebp - 0x9d], al
movzx eax, al
mov ebx, eax
mov edi, eax
shr ebx, 3
mov edx, eax
shr edi, 6
and ebx, 7
and edx, 7
cmp ecx, 0xe8
jb 0x100ab199
cmp ecx, 0xe9
ja 0x100ab0f0
mov eax, dword [esi + 1]
add esi, 5
add esi, eax
jmp 0x100ab357
cmp ecx, 0xeb
jne 0x100ab109
movsx eax, byte [ebp - 0x9d]
add eax, 2
add esi, eax
jmp 0x100ab357
cmp ecx, 0xfc
jne 0x100ab1c7
cmp dword [ebp - 0x9c], 0
je 0x100ab351
mov eax, dword [ebp - 0x88]
xor ebx, ebx
push esi
mov ecx, dword [eax]
call fcn.10009d90
movzx edi, ax
movzx eax, byte [edi + esi]
add edi, esi
cmp eax, 0xf2
je 0x100ab664
nop word [eax + eax]
cmp eax, 0xf3
je 0x100ab664
cmp eax, 0xa9
jbe 0x100ab16d
cmp eax, 0xb0
jb 0x100ab664
inc ebx
cmp ebx, 5
jae 0x100ab885
mov eax, dword [ebp - 0x88]
push edi
mov ecx, dword [eax]
call fcn.10009d90
movzx eax, ax
add edi, eax
movzx eax, byte [edi]
cmp eax, 0xf2
jne 0x100ab150
jmp 0x100ab664
cmp ecx, 0xc2
jb 0x100ab20f
cmp ecx, 0xc3
jbe 0x100ab664
cmp ecx, 0xcc
jne 0x100ab1c7
cmp dword [ebp - 0x9c], 0
jne 0x100aab72
jmp 0x100ab351
cmp ecx, 0xff
jne 0x100ab27e
cmp edi, 3
jne 0x100ab1f2
cmp ebx, 2
je 0x100ab1e2
cmp ebx, 4
jne 0x100ab1f2
mov ecx, dword [ebp - 0xa4]
cmp edx, ecx
je 0x100ab52c
jmp 0x100ab1f8
mov ecx, dword [ebp - 0xa4]
cmp eax, 0x15
je 0x100aac1d
cmp eax, 0x25
je 0x100aac1d
jmp 0x100ab351
cmp ecx, 0x64
jne 0x100ab24d
cmp eax, 0x89
jne 0x100ab351
mov al, byte [esi + 2]
cmp al, 0x40
jae 0x100ab351
and al, 7
cmp al, 5
jne 0x100ab351
cmp dword [esi + 3], 0
jne 0x100ab351
mov dword [ebp - 0x9c], 1
jmp 0x100ab351
cmp ecx, 0x8d
jne 0x100ab27e
cmp dword [ebp - 0x9c], 0
je 0x100ab351
cmp edi, 2
jne 0x100ab351
cmp edx, ebx
jne 0x100ab351
mov dword [ebp - 0xa4], ebx
jmp 0x100ab351
cmp ecx, 0x8b
jne 0x100ab2b2
cmp edi, 1
je 0x100ab2a4
cmp edi, 2
je 0x100ab2a4
test edi, edi
jne 0x100ab299
cmp edx, 5
je 0x100ab2a4
xor eax, eax
mov dword [ebp + ebx*4 - 0x64], eax
jmp 0x100ab351
mov eax, 1
mov dword [ebp + ebx*4 - 0x64], eax
jmp 0x100ab351
lea eax, [ecx - 0x81]
cmp eax, 0x50
ja case.0x100ab2c4.130
movzx eax, byte [eax + 0x100aba74]
jmp dword [eax*4 + 0x100aba68]
cmp dword [ebp - 0x9c], 0
je 0x100ab342
jmp 0x100ab31f
cmp ecx, 0xd3
je case.0x100ab2c4.129
cmp ecx, 0x3d
je 0x100ab351
lea eax, [ecx - 0xc6]
cmp eax, 1
ja 0x100ab351
cmp dword [ebp - 0x9c], 0
je 0x100ab351
test edi, edi
jne 0x100ab351
cmp edx, 4
je 0x100ab351
cmp edx, 5
je 0x100ab351
test ebx, ebx
jne 0x100ab351
cmp dword [ebp + edx*4 - 0x64], 1
je 0x100aac6c
jmp 0x100ab351
cmp dword [ebp - 0x9c], 0
je 0x100ab351
test edi, edi
jne 0x100ab33a
cmp edx, 4
je 0x100ab351
cmp edx, 5
je 0x100ab351
cmp dword [ebp + edx*4 - 0x64], 1
je 0x100aac6c
jmp 0x100ab351
cmp ecx, 0xc1
jne 0x100ab351
cmp edi, 3
jne 0x100ab351
cmp ebx, 5
jne 0x100ab351
cmp byte [esi + 2], bl
je 0x100ab38c
add esi, dword [ebp - 0xac]
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x8c]
cmp eax, 0x1e
jae 0x100ab66a
mov edi, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0xbc], eax
cmp esi, ecx
jb 0x100ab670
mov eax, dword [ebp - 0xc0]
jmp 0x100ab095
inc dword [ebp - 0xcc]
jmp 0x100ab664
cmp al, 0xff
jne 0x100ab682
cmp byte [edx + ecx + 1], 0x37
jne 0x100ab682
cmp word [edx + ecx + 2], 0
jne 0x100ab682
mov esi, dword [ebp - 0xd8]
lea eax, [ebx + ecx]
xorps xmm0, xmm0
mov dword [ebp - 0x9c], 0
add esi, ecx
mov dword [ebp - 0xc0], 0xffffffff
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xac], 1
movups xmmword [ebp - 0x84], xmm0
movups xmmword [ebp - 0x74], xmm0
cmp esi, ecx
jb 0x100ab67c
cmp esi, eax
jae 0x100ab670
mov ecx, dword [edi]
push esi
call fcn.10009d90
movzx ebx, ax
mov al, byte [esi + 1]
movzx ecx, al
mov byte [ebp - 0x9d], al
mov edi, ecx
mov eax, ecx
shr edi, 3
shr eax, 6
mov edx, ecx
mov dword [ebp - 0xbc], eax
and edx, 7
movzx eax, byte [esi]
and edi, 7
mov dword [ebp - 0xa4], edx
cmp eax, 0xe8
jb 0x100ab4bd
cmp eax, 0xe9
ja 0x100ab45d
mov eax, dword [esi + 1]
add esi, 5
add esi, eax
jmp 0x100ab488
cmp eax, 0xeb
jne 0x100ab472
movsx eax, byte [ebp - 0x9d]
add eax, 2
add esi, eax
jmp 0x100ab488
cmp eax, 0xfc
jne 0x100ab4e5
cmp dword [ebp - 0x9c], 0
jne 0x100ab814
add esi, ebx
mov eax, dword [ebp - 0xac]
mov ecx, dword [ebp - 0x8c]
cmp eax, 0x1e
jae 0x100ab66a
mov edi, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0xac], eax
cmp esi, ecx
jb 0x100ab670
mov eax, dword [ebp - 0xdc]
jmp 0x100ab405
cmp eax, 0xc2
jb 0x100ab537
cmp eax, 0xc3
jbe 0x100ab664
cmp eax, 0xcc
jne 0x100ab4e5
cmp dword [ebp - 0x9c], 0
jne 0x100aab72
jmp 0x100ab486
cmp eax, 0xff
jne 0x100ab5aa
cmp dword [ebp - 0xbc], 3
jne 0x100ab50f
cmp edi, 2
je 0x100ab503
cmp edi, 4
jne 0x100ab50f
mov eax, dword [ebp - 0xc0]
cmp edx, eax
je 0x100ab52c
jmp 0x100ab515
mov eax, dword [ebp - 0xc0]
cmp ecx, 0x15
je 0x100ab523
cmp ecx, 0x25
jne 0x100ab486
cmp eax, 0xffffffff
je 0x100ab664
inc dword [ebp - 0xb4]
jmp 0x100ab664
cmp eax, 0x64
jne 0x100ab573
lea edx, [ebx + esi]
cmp ecx, 0x89
jne 0x100ab56c
mov al, byte [esi + 2]
cmp al, 0x40
jae 0x100ab56c
and al, 7
cmp al, 5
jne 0x100ab56c
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 0x100ab488
cmp eax, 0x8d
jne 0x100ab5aa
add esi, ebx
cmp dword [ebp - 0x9c], 0
je 0x100ab488
cmp dword [ebp - 0xbc], 2
jne 0x100ab488
cmp edx, edi
cmovne edi, dword [ebp - 0xc0]
mov dword [ebp - 0xc0], edi
jmp 0x100ab488
cmp eax, 0x8b
jne 0x100ab5ea
mov eax, dword [ebp - 0xbc]
cmp eax, 1
je 0x100ab5d9
cmp eax, 2
je 0x100ab5d9
cmp ecx, 0x40
jae 0x100ab5cb
cmp edx, 5
je 0x100ab5d9
xor eax, eax
mov dword [ebp + edi*4 - 0x84], eax
jmp 0x100ab486
mov eax, 1
mov dword [ebp + edi*4 - 0x84], eax
jmp 0x100ab486
cmp eax, 0x81
je 0x100ab7ce
mov edx, eax
sub edx, 0x83
je 0x100ab7c3
sub edx, 0x3e
je 0x100ab7b4
sub edx, 0x10
je 0x100ab7b4
cmp eax, 0xd3
je 0x100ab75e
cmp eax, 0x3d
jne 0x100ab6ff
cmp edi, 7
jne 0x100ab486
mov eax, dword [esi + ebx - 4]
add esi, ebx
cmp eax, 0x27f
je 0x100ab648
cmp eax, 0x7f
jne 0x100ab488
mov eax, dword [ebp - 0xb0]
inc eax
mov dword [ebp - 0xb0], eax
cmp eax, 1
jbe 0x100ab488
inc dword [ebp - 0xc4]
mov ecx, dword [ebp - 0x8c]
mov edi, dword [ebp - 0x88]
mov ebx, dword [ebp - 0x98]
mov edx, dword [ebp - 0x90]
mov esi, dword [ebp - 0x94]
mov eax, dword [ebp - 0xd4]
inc edx
inc dword [ebp - 0xd0]
inc eax
inc dword [ebp - 0xd8]
inc esi
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x90], edx
cmp edx, dword [ebp - 0xe0]
jb 0x100aa920
push ecx
mov ecx, dword [edi]
call fcn.100010e0
mov edx, dword [ebp - 0xa8]
cmp edx, 0x46
ja 0x100ab934
mov eax, dword [ebp - 0xb4]
mov esi, edx
mov ebx, dword [ebp - 0xc8]
mov ecx, eax
mov edi, dword [ebp - 0xcc]
test eax, eax
mov eax, dword [ebp - 0xb8]
mov edx, eax
jne 0x100ab890
test eax, eax
je 0x100ab8a1
jmp 0x100ab894
cmp eax, 0xc6
jb 0x100ab486
cmp eax, 0xc7
ja 0x100ab486
cmp dword [ebp - 0x9c], 0
je 0x100ab486
cmp ecx, 0x40
jae 0x100ab486
mov eax, dword [ebp - 0xa4]
cmp eax, 4
je 0x100ab486
cmp eax, 5
je 0x100ab486
test edi, edi
jne 0x100ab486
cmp dword [ebp + eax*4 - 0x84], 1
je 0x100aac6c
jmp 0x100ab486
cmp dword [ebp - 0x9c], 0
je 0x100ab486
mov edx, dword [ebp - 0xa4]
cmp ecx, 0x40
jae 0x100ab78e
cmp edx, 4
je 0x100ab78e
cmp edx, 5
je 0x100ab78e
cmp dword [ebp + edx*4 - 0x84], 1
je 0x100aac6c
cmp eax, 0x81
je 0x100ab7d7
cmp eax, 0x83
jne 0x100ab486
and ecx, 0x38
add esi, ebx
cmp cl, 0x38
jne 0x100ab488
cmp byte [esi - 1], 0x7f
jmp 0x100ab7f3
cmp dword [ebp - 0x9c], 0
je 0x100ab486
jmp 0x100ab76b
cmp dword [ebp - 0x9c], 0
je 0x100ab7a0
jmp 0x100ab76b
cmp dword [ebp - 0x9c], 0
jne 0x100ab771
and ecx, 0x38
cmp cl, 0x38
jne 0x100ab486
mov eax, dword [esi + ebx - 4]
add esi, ebx
cmp eax, 0x27f
je 0x100ab7f9
cmp eax, 0x7f
jne 0x100ab488
mov eax, dword [ebp - 0xb0]
inc eax
mov dword [ebp - 0xb0], eax
cmp eax, 1
ja 0x100ab65e
jmp 0x100ab488
mov eax, dword [ebp - 0x88]
xor ebx, ebx
push esi
mov ecx, dword [eax]
call fcn.10009d90
movzx edi, ax
movzx eax, byte [edi + esi]
add edi, esi
cmp eax, 0xf2
je 0x100ab664
nop dword [eax + eax]
cmp eax, 0xf3
je 0x100ab664
cmp eax, 0xa9
jbe 0x100ab85d
cmp eax, 0xb0
jb 0x100ab664
inc ebx
cmp ebx, 5
jae 0x100ab885
mov eax, dword [ebp - 0x88]
push edi
mov ecx, dword [eax]
call fcn.10009d90
movzx eax, ax
add edi, eax
movzx eax, byte [edi]
cmp eax, 0xf2
jne 0x100ab840
jmp 0x100ab664
inc dword [ebp - 0xc8]
jmp 0x100ab664
test eax, eax
jne 0x100ab8a7
cmp ebx, 3
ja 0x100ab916
test ecx, ecx
jne 0x100ab8ca
test ebx, ebx
jne 0x100ab8ca
jmp 0x100ab8cf
mov ebx, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xb4]
mov esi, dword [ebp - 0xa8]
mov edi, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xb8]
cmp ebx, 2
ja 0x100ab916
cmp edx, 3
ja 0x100ab916
lea eax, [edx + ecx]
cmp eax, 2
jbe 0x100ab8e1
cmp esi, 2
jbe 0x100ab8e1
cmp edi, 2
ja 0x100ab916
test ecx, ecx
je 0x100ab8f7
test edx, edx
je 0x100ab8f7
test esi, esi
je 0x100ab8f7
lea eax, [edx + esi]
add eax, ecx
cmp eax, 4
ja 0x100ab916
lea eax, [edx + esi]
add eax, ecx
add eax, ebx
cmp eax, 3
jbe 0x100ab908
cmp edi, 5
jmp 0x100ab914
cmp edi, 5
jbe 0x100ab934
cmp dword [ebp - 0xc4], 5
jbe 0x100ab934
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 ecx, dword [edi]
push esi
call fcn.100010e0
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100ad43d
mov esp, ebp
pop ebp
ret