Function at 0x1008b2d0
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1012b7a5
mov eax, dword fs:[0]
push eax
sub esp, 0x808
mov eax, dword [0x101def00]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x7c0], ecx
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0x24]
mov dword [ebp - 0x80c], eax
mov dword [ebp - 0x7c4], 1
mov dword [ebp - 0x7cc], eax
mov dword [ebp - 0x7d0], esi
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov ecx, dword [ebp + 0x1c]
sub ecx, dword [ebp + 0x14]
mov edi, dword [ebp + 0x20]
sbb edi, dword [ebp + 0x18]
mov dword [ebp - 4], 0
mov dword [ebp - 0x7c4], 1
mov dword [ebp - 0x7fc], ecx
test edi, edi
ja 0x1008b36e
jb 0x1008be72
test ecx, ecx
je 0x1008be72
push ecx
call fcn.100bc9d5
mov ecx, dword [esi]
add esp, 4
mov dword [ebp - 0x7c8], eax
cdq
mov esi, dword [ecx + 4]
mov ecx, dword [ebp - 0x7d0]
push edi
mov edi, dword [ebp - 0x7fc]
push edi
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push edx
push eax
call esi
mov esi, dword [ebp - 0x7c0]
lea eax, [ebp - 0x7b8]
push eax
push edi
push dword [ebp - 0x7c8]
xorps xmm0, xmm0
mov byte [ebp - 0x7dc], 0
push dword [esi + 4]
movlpd qword [ebp - 0x7d8], xmm0
call fcn.10091140
add esp, 0x10
test eax, eax
js 0x1008be5e
mov ecx, dword [ebp - 0x7d4]
xorps xmm0, xmm0
mov edi, dword [ebp - 0x7d8]
movlpd qword [ebp - 0x814], xmm0
mov dword [ebp - 0x7e4], ecx
mov dword [ebp - 0x7e0], edi
nop word [eax + eax]
mov eax, edi
mov dword [ebp - 0x148], 0
add eax, dword [ebp + 0x14]
xorps xmm0, xmm0
movups xmmword [ebp - 0x158], xmm0
adc ecx, dword [ebp + 0x18]
mov dword [ebp - 0x7f8], eax
mov dword [ebp - 0x7d0], ecx
mov dword [ebp - 0x144], 0xf
mov byte [ebp - 0x158], 0
push ecx
push eax
push 0x100
lea eax, [ebp - 0x110]
mov dword [ebp - 4], 1
push eax
lea eax, [ebp - 0x7b8]
push eax
push dword [esi + 8]
call fcn.10092f60
add esp, 0x18
test eax, eax
js 0x1008be5e
xorps xmm0, xmm0
mov dword [ebp - 0x130], 0
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x12c], 0
movups xmmword [ebp - 0x140], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1008b490
sub ecx, edx
lea eax, [ebp - 0x110]
push ecx
push eax
lea ecx, [ebp - 0x140]
call fcn.10005380
cmp dword [ebp - 0x12c], 0xf
lea esi, [ebp - 0x140]
mov edi, dword [ebp - 0x130]
cmova esi, dword [ebp - 0x140]
seta byte [ebp - 0x7b9]
mov byte [ebp - 4], 2
test edi, edi
je 0x1008b4e9
push edi
push 0x20
push esi
call fcn.100bfb40
add esp, 0xc
test eax, eax
je 0x1008b4e9
sub eax, esi
jmp 0x1008b4ec
or eax, 0xffffffff
lea edx, [eax + 1]
cmp edi, edx
lea ecx, [ebp - 0x140]
cmovb edx, edi
cmp byte [ebp - 0x7b9], 0
cmovne ecx, dword [ebp - 0x140]
sub edi, edx
lea eax, [edi + 1]
push eax
lea eax, [ecx + edx]
push eax
push ecx
call fcn.100bfbf0
add esp, 0xc
mov dword [ebp - 0x130], edi
cmp dword [ebp - 0x12c], 0xf
lea eax, [ebp - 0x140]
cmova eax, dword [ebp - 0x140]
mov dword [ebp - 0x7d4], eax
cmp edi, 0xf
ja 0x1008b561
push edi
push eax
lea eax, [ebp - 0x158]
mov dword [ebp - 0x148], edi
push eax
call fcn.100bfbf0
add esp, 0xc
mov byte [ebp + edi - 0x158], 0
jmp 0x1008b5d2
cmp edi, 0x7fffffff
ja 0x1008be8f
mov eax, edi
or eax, 0xf
cmp eax, 0x7fffffff
jbe 0x1008b580
mov eax, Ordinal_2
jmp 0x1008b58b
cmp eax, 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x7f4], eax
lea eax, [ebp - 0x7f4]
push eax
lea eax, [ebp - 0x158]
push eax
call fcn.10005190
mov ecx, dword [ebp - 0x7f4]
mov esi, eax
push edi
push dword [ebp - 0x7d4]
mov dword [ebp - 0x148], edi
push esi
mov dword [ebp - 0x144], ecx
call fcn.100bf410
add esp, 0x14
mov byte [esi + edi], 0
mov dword [ebp - 0x158], esi
mov ecx, dword [ebp - 0x12c]
mov byte [ebp - 4], 1
cmp ecx, 0xf
jbe 0x1008b610
mov edx, dword [ebp - 0x140]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008b606
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edx
call fcn.100bc9c7
add esp, 8
mov eax, dword [ebp - 0x7c0]
push dword [ebp - 0x7b4]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x7d4], eax
call fcn.1008edc0
mov edx, eax
mov dword [ebp - 0x118], 0
mov ecx, edx
mov dword [ebp - 0x114], 0
xorps xmm0, xmm0
add esp, 4
movups xmmword [ebp - 0x128], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1008b652
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x128]
call fcn.10005380
mov esi, dword [ebp - 0x7e0]
movzx edi, byte [ebp - 0x7b0]
add esi, dword [ebp - 0x7c8]
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 0
xorps xmm0, xmm0
mov dword [ebp - 0x184], 0
movups xmmword [ebp - 0x194], xmm0
mov dword [ebp - 0x180], 0xf
mov byte [ebp - 0x194], 0
movups xmmword [ebp - 0x17c], xmm0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 0xf
mov byte [ebp - 0x17c], 0
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 7
call fcn.10089fa0
mov dword [ebp - 0x7f0], 0
mov dword [ebp - 0x7ec], 0
mov dword [ebp - 0x7e8], 0
test edi, edi
je 0x1008b755
push edi
lea ecx, [ebp - 0x7f0]
call fcn.10088630
push edi
push esi
mov esi, dword [ebp - 0x7f0]
push esi
call fcn.100bfbf0
lea eax, [edi + esi]
add esp, 0xc
mov dword [ebp - 0x7ec], eax
push dword [ebp - 0x7d4]
lea eax, [ebp - 0x158]
mov byte [ebp - 4], 8
push 0
push 0
push eax
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0x7f0]
push eax
push 0
push 0
push 0
lea eax, [ebp - 0x814]
push eax
push dword [ebp - 0x7d0]
lea ecx, [ebp - 0x1d8]
push dword [ebp - 0x7f8]
call fcn.1008ae10
mov edx, dword [ebp - 0x7f0]
mov byte [ebp - 4], 7
test edx, edx
je 0x1008b7f8
mov ecx, dword [ebp - 0x7e8]
mov eax, edx
sub ecx, edx
cmp ecx, 0x1000
jb 0x1008b7d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edx
call fcn.100bc9c7
add esp, 8
mov dword [ebp - 0x7f0], 0
mov dword [ebp - 0x7ec], 0
mov dword [ebp - 0x7e8], 0
mov ecx, dword [ebp - 0x114]
mov byte [ebp - 4], 0xa
cmp ecx, 0xf
jbe 0x1008b836
mov edx, dword [ebp - 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008b82c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edx
call fcn.100bc9c7
add esp, 8
mov ecx, dword [ebp - 0x7c0]
lea eax, [ebp - 0x7b8]
push eax
lea eax, [ebp - 0x1d8]
push eax
call fcn.1008c040
cmp byte [ebp - 0x7dc], 0
je 0x1008b8d3
lea eax, [ebp - 0x194]
push eax
lea ecx, [ebp - 0x128]
call fcn.10008280
or dword [ebp - 0x7c4], 4
lea eax, [ebp - 0x128]
push 0x1013c4e0
push eax
call fcn.1008a090
mov ecx, dword [ebp - 0x114]
add esp, 8
mov byte [ebp - 0x7b9], al
cmp ecx, 0xf
jbe 0x1008b8cb
mov edx, dword [ebp - 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008b8bb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edx
call fcn.100bc9c7
mov al, byte [ebp - 0x7b9]
add esp, 8
test al, al
je 0x1008be1d
mov esi, dword [ebp - 0x7cc]
lea ecx, [ebp - 0x1d8]
push ecx
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1008b8f5
mov ecx, eax
call fcn.10087330
sub dword [esi + 4], 0xffffff80
jmp 0x1008b8fd
push eax
mov ecx, esi
call fcn.1008a310
mov al, byte [ebp - 0x1d2]
mov edi, dword [esi + 4]
test al, al
je 0x1008b9da
mov cl, byte [ebp - 0x1d1]
test cl, cl
je 0x1008b935
cmp byte [ebp - 0x1d0], 0
jne 0x1008b935
call fcn.10089f70
mov edi, dword [esi + 4]
mov al, byte [ebp - 0x1d2]
mov cl, byte [ebp - 0x1d1]
test al, al
je 0x1008b9da
mov esi, dword [esi]
cmp esi, edi
je 0x1008b9d4
mov eax, dword [ebp - 0x1c4]
nop dword [eax]
test cl, cl
je 0x1008b978
mov ecx, dword [ebp - 0x1a8]
xor edx, edx
sub ecx, dword [ebp - 0x1ac]
add ecx, dword [ebp - 0x1c0]
adc edx, dword [ebp - 0x1bc]
add ecx, dword [ebp - 0x1c8]
adc edx, eax
jmp 0x1008b980
mov ecx, dword [ebp - 0x1c8]
mov edx, eax
cmp byte [ebp - 0x1d4], 0
je 0x1008b9a1
cmp dword [ebp - 0x164], 1
jne 0x1008b99d
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x1c4]
jmp 0x1008b99f
xor edx, edx
mov ecx, dword [ecx]
cmp dword [esi + 0x18], ecx
jne 0x1008b9ab
cmp dword [esi + 0x1c], edx
je 0x1008b9b8
mov cl, byte [ebp - 0x1d1]
sub esi, 0xffffff80
cmp esi, edi
jne 0x1008b950
cmp esi, edi
je 0x1008b9d4
mov ecx, dword [ebp - 0x7c0]
lea eax, [ebp - 0x1d8]
push eax
push dword [esi + 0x1c]
push dword [esi + 0x18]
call fcn.1008c350
mov esi, dword [ebp - 0x7cc]
mov eax, dword [esi + 4]
mov esi, dword [esi]
mov dword [ebp - 0x7d4], eax
cmp esi, eax
je 0x1008ba7b
nop dword [eax]
cmp byte [esi + 6], 0
je 0x1008ba6c
cmp byte [esi + 7], 0
je 0x1008ba07
cmp byte [esi + 8], 0
jne 0x1008ba07
call fcn.10089f70
cmp byte [esi + 6], 0
je 0x1008ba6c
cmp byte [esi + 8], 0
je 0x1008ba6c
cmp byte [esi + 7], 0
je 0x1008ba2f
mov ecx, dword [esi + 0x30]
xor edx, edx
sub ecx, dword [esi + 0x2c]
add ecx, dword [esi + 0x18]
adc edx, dword [esi + 0x1c]
add ecx, dword [esi + 0x10]
adc edx, dword [esi + 0x14]
jmp 0x1008ba35
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
cmp byte [esi + 4], 0
je 0x1008ba4a
cmp dword [esi + 0x74], 1
jne 0x1008ba46
mov edx, dword [ecx + 4]
jmp 0x1008ba48
xor edx, edx
mov ecx, dword [ecx]
mov edi, dword [ebp - 0x1c0]
cmp ecx, edi
jne 0x1008ba6c
mov eax, dword [ebp - 0x1bc]
cmp edx, eax
jne 0x1008ba6c
mov ecx, dword [ebp - 0x7c0]
push esi
push eax
push edi
call fcn.1008c350
sub esi, 0xffffff80
cmp esi, dword [ebp - 0x7d4]
jne 0x1008b9f0
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 0x7f8]
jne 0x1008ba98
mov eax, dword [ebp + 0x18]
mov byte [ebp - 0x7b9], 1
cmp eax, dword [ebp - 0x7d0]
je 0x1008ba9f
mov byte [ebp - 0x7b9], 0
lea eax, [ebp - 0x194]
push eax
lea ecx, [ebp - 0x128]
call fcn.10008280
or dword [ebp - 0x7c4], 2
lea eax, [ebp - 0x1ac]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x808]
call fcn.1008a9d0
mov eax, dword [ebp - 0x1a8]
sub eax, dword [ebp - 0x1ac]
mov edi, dword [ebp - 0x128]
mov esi, dword [ebp - 0x808]
cmp eax, 1
jne 0x1008baf0
cmp byte [esi], 0xcc
jmp 0x1008bafe
cmp eax, 2
jb 0x1008bb00
cmp byte [esi], 0xf3
jne 0x1008bb00
cmp byte [esi + 1], 0xc3
je 0x1008bb6c
lea eax, [ebp - 0x128]
push 0x1013c2c0
push eax
call fcn.1008a090
add esp, 8
test al, al
je 0x1008bb21
cmp byte [ebp - 0x7b9], 0
je 0x1008bb6c
lea eax, [ebp - 0x128]
push 0x1013c4cc
push eax
call fcn.1008a090
add esp, 8
test al, al
jne 0x1008bb6c
cmp dword [ebp - 0x114], 0xf
lea eax, [ebp - 0x128]
push 4
push str.iret
push 0
push dword [ebp - 0x118]
cmova eax, edi
push eax
call fcn.10006e00
add esp, 0x14
mov byte [ebp - 0x7b9], 0
test eax, eax
jne 0x1008bb73
mov byte [ebp - 0x7b9], 1
test esi, esi
je 0x1008bbcb
mov ecx, dword [ebp - 0x800]
mov eax, esi
sub ecx, esi
cmp ecx, 0x1000
jb 0x1008bb9d
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push esi
call fcn.100bc9c7
mov edi, dword [ebp - 0x128]
add esp, 8
mov dword [ebp - 0x808], 0
mov dword [ebp - 0x804], 0
mov dword [ebp - 0x800], 0
mov eax, dword [ebp - 0x114]
mov byte [ebp - 4], 0xa
cmp eax, 0xf
jbe 0x1008bc05
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x1008bbfb
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edi
call fcn.100bc9c7
add esp, 8
mov eax, dword [ebp - 0x7dc]
mov ecx, 1
cmp byte [ebp - 0x7b9], 0
mov edi, dword [ebp - 0x7e0]
movzx eax, al
cmovne eax, ecx
mov byte [ebp - 4], cl
mov ecx, dword [ebp - 0x168]
mov dword [ebp - 0x7dc], eax
movzx eax, byte [ebp - 0x7b0]
cdq
add edi, eax
mov dword [ebp - 0x7e0], edi
adc dword [ebp - 0x7e4], edx
cmp ecx, 0xf
jbe 0x1008bc7c
mov edx, dword [ebp - 0x17c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008bc72
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edx
call fcn.100bc9c7
add esp, 8
mov ecx, dword [ebp - 0x180]
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 0xf
mov byte [ebp - 0x17c], 0
cmp ecx, 0xf
jbe 0x1008bcd1
mov edx, dword [ebp - 0x194]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008bcc7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edx
call fcn.100bc9c7
add esp, 8
mov ecx, dword [ebp - 0x1a0]
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x180], 0xf
mov byte [ebp - 0x194], 0
test ecx, ecx
je 0x1008bd4e
mov eax, dword [ebp - 0x198]
sub eax, ecx
sar eax, 2
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x1008bd26
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push edx
push ecx
call fcn.100bc9c7
add esp, 8
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 0
mov ecx, dword [ebp - 0x1ac]
test ecx, ecx
je 0x1008bda6
mov edx, dword [ebp - 0x1a4]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x1008bd7e
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push edx
push ecx
call fcn.100bc9c7
add esp, 8
mov dword [ebp - 0x1ac], 0
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0
mov ecx, dword [ebp - 0x144]
mov byte [ebp - 4], 0
cmp ecx, 0xf
jbe 0x1008bde4
mov edx, dword [ebp - 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008bdda
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edx
call fcn.100bc9c7
add esp, 8
mov esi, dword [ebp - 0x7c0]
lea eax, [ebp - 0x7b8]
push eax
mov eax, dword [ebp - 0x7fc]
sub eax, edi
push eax
mov eax, dword [ebp - 0x7c8]
add eax, edi
push eax
push dword [esi + 4]
call fcn.10091140
add esp, 0x10
test eax, eax
js 0x1008be5e
mov ecx, dword [ebp - 0x7e4]
jmp 0x1008b400
lea ecx, [ebp - 0x1d8]
call fcn.10087760
mov ecx, dword [ebp - 0x144]
cmp ecx, 0xf
jbe 0x1008be5e
mov edx, dword [ebp - 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008be54
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008be94
push ecx
push edx
call fcn.100bc9c7
add esp, 8
push dword [ebp - 0x7c8]
call fcn.100bc9de
mov eax, dword [ebp - 0x7cc]
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100bcd6c
mov esp, ebp
pop ebp
ret 0x20
call fcn.1000dae0
call fcn.100cc658
int3