Function at 0x6abe7c
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
mov ecx, 8
push 0
push 0
dec ecx
jne 0x6abe84
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x6ac361
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp byte [eax + 0xc2], 0
je 0x6abecd
lea edx, [ebp - 0x18]
mov eax, dword [0x893048]
call fcn.004075e4
mov ecx, dword [ebp - 0x18]
mov dl, 1
mov eax, dword [0x6a7d48]
call fcn.00630a4c
call fcn.00404c28
mov eax, dword [ebp - 4]
mov byte [eax + 0xc2], 1
mov eax, dword [ebp - 4]
cmp dword [eax + 0xa8], 0
je 0x6abf69
mov edx, 0x191
mov eax, dword [ebp - 4]
call fcn.006ab568
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xbc]
call fcn.0040554c
test eax, eax
jne 0x6abf69
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb8], 0
jne 0x6abf69
mov edx, 0x6ac378
mov eax, dword [ebp - 4]
call fcn.006a5be8
push 0x6ac39c
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb0]
call fcn.0040a78c
push dword [ebp - 0x1c]
push 0x6ac3b4
mov eax, dword [ebp - 4]
push dword [eax + 0xc4]
push 0x6ac3c0
mov eax, dword [ebp - 4]
add eax, 0xbc
mov edx, 5
call fcn.0040560c
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [ebp - 4]
call fcn.006a5bb0
mov eax, dword [ebp - 4]
cmp dword [eax + 0x4c], 0
jne 0x6abfc6
mov eax, dword [ebp - 4]
cmp dword [eax + 0xbc], 0
jne 0x6abf8a
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb8], 0
je 0x6abfc6
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x10]
call fcn.00405324
cmp dword [ebp - 0x10], 0
jne 0x6abfab
lea eax, [ebp - 0x10]
mov edx, 0x6ac3dc
call fcn.00405324
lea eax, [ebp - 0x20]
mov ecx, dword [ebp - 0x10]
mov edx, 0x6ac3f0
call fcn.00405598
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
call fcn.006a5be8
mov eax, dword [ebp - 4]
cmp dword [eax + 0x2c], 0xffffffff
jne 0x6ac158
cmp dword [eax + 0x28], 0xffffffff
jne 0x6ac158
mov eax, dword [ebp - 4]
cmp dword [eax + 0x80], 0
je 0x6ac004
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x80]
mov edx, 0x6ac40c
call fcn.00636f04
test al, al
je 0x6ac158
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xd0]
cmp byte [eax + 0x110], 1
je 0x6ac14c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb0]
mov ecx, 0x64
cdq
idiv ecx
dec eax
je 0x6ac14c
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb0], 0xcc
je 0x6ac14c
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb0], 0x130
je 0x6ac14c
mov eax, dword [ebp - 4]
cmp dword [eax + 0xbc], 0
je 0x6ac0a0
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.00676384
mov eax, dword [ebp - 0x24]
push eax
lea eax, [ebp - 0x28]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xbc]
call fcn.00405b40
mov edx, dword [ebp - 0x28]
pop eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
call fcn.006a5bb0
jmp 0x6ac158
mov eax, dword [ebp - 4]
cmp dword [eax + 0xb8], 0
je 0x6ac0c8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb8]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov eax, dword [ebp - 4]
call fcn.006a5bb0
jmp 0x6ac158
mov edx, 0x6ac378
mov eax, dword [ebp - 4]
call fcn.006a5be8
push 0x6ac39c
lea edx, [ebp - 0x2c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb0]
call fcn.0040a78c
push dword [ebp - 0x2c]
push 0x6ac3b4
mov eax, dword [ebp - 4]
push dword [eax + 0xc4]
push 0x6ac3c0
mov eax, dword [ebp - 4]
add eax, 0xbc
mov edx, 5
call fcn.0040560c
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.00676384
mov eax, dword [ebp - 0x30]
push eax
lea eax, [ebp - 0x34]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xbc]
call fcn.00405b40
mov edx, dword [ebp - 0x34]
pop eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
cdq
push edx
push eax
mov eax, dword [ebp - 4]
call fcn.006a5bb0
jmp 0x6ac158
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.006a5bb0
mov eax, dword [ebp - 4]
fld qword [eax + 0x58]
fcomp dword [0x6ac418]
fnstsw ax
sahf
ja 0x6ac175
call fcn.0040d398
mov eax, dword [ebp - 4]
fstp qword [eax + 0x58]
wait
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xac]
mov eax, dword [eax + 0x90]
call fcn.00658de8
xor al, 1
mov byte [ebp - 9], al
cmp byte [ebp - 9], 0
je 0x6ac1b0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xac]
mov eax, dword [eax + 0x90]
call fcn.00658f1c
xor eax, eax
push ebp
push 0x6ac2dd
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
push 0x6ac424
lea edx, [ebp - 0x3c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb0]
call fcn.0040a78c
push dword [ebp - 0x3c]
push 0x6ac3b4
mov eax, dword [ebp - 4]
push dword [eax + 0xc4]
lea eax, [ebp - 0x38]
mov edx, 4
call fcn.0040560c
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xac]
mov eax, dword [eax + 0x90]
xor ecx, ecx
mov ebx, dword [eax]
call dword [ebx + 0x94]
push 0
push 0
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xac]
mov eax, dword [eax + 0x90]
xor ecx, ecx
mov ebx, dword [eax]
call dword [ebx + 0x9c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb4]
call fcn.0041f6ac
dec eax
test eax, eax
jl 0x6ac2a0
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 8], 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb4]
mov edx, dword [ebp - 8]
call fcn.006a3330
lea edx, [ebp - 0x44]
mov ecx, dword [eax]
call dword [ecx + 0x20]
mov ecx, dword [ebp - 0x44]
lea eax, [ebp - 0x40]
mov edx, 0x6ac438
call fcn.00405598
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xac]
mov eax, dword [eax + 0x90]
xor ecx, ecx
mov ebx, dword [eax]
call dword [ebx + 0x94]
inc dword [ebp - 8]
dec dword [ebp - 0x14]
jne 0x6ac251
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xac]
mov eax, dword [eax + 0x90]
xor edx, edx
call fcn.00657b44
cmp byte [ebp - 9], 0
je 0x6ac2d3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xac]
mov eax, dword [eax + 0x90]
mov edx, dword [eax]
call dword [edx + 0xc8]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x6ac309
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x6ac368
lea eax, [ebp - 0x44]
mov edx, 4
call fcn.004052b0
lea eax, [ebp - 0x34]
call fcn.004059c0
lea eax, [ebp - 0x30]
call fcn.004070f4
lea eax, [ebp - 0x2c]
call fcn.0040528c
lea eax, [ebp - 0x28]
call fcn.004059c0
lea eax, [ebp - 0x24]
call fcn.004070f4
lea eax, [ebp - 0x20]
mov edx, 3
call fcn.004052b0
lea eax, [ebp - 0x10]
call fcn.0040528c
ret