Function at 0x1306f4
Capabilities:
Acquire debug privileges

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff74
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x8c], ecx
mov ebx, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00123cf0
xor eax, eax
push ebp
push 0x130dae
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 8], eax
test ebx, ebx
je 0x130d8d
mov eax, 4
call fcn.00122910
mov dword [ebp - 0x2c], eax
mov eax, 8
call fcn.00122910
mov dword [ebp - 0x30], eax
call fcn.0012f9c4
mov eax, dword [ebp - 4]
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.0012faec
mov edx, dword [ebp - 0x8c]
lea eax, [ebp - 4]
call fcn.00123914
mov dl, 1
mov eax, 0x130dc8
call fcn.0012fee8
mov dl, 1
mov eax, 0x130de4
call fcn.0012fee8
mov eax, ebx
call fcn.0012fe98
mov esi, eax
mov eax, ebx
call fcn.0012ffac
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x3c]
add eax, dword [ebp - 0x28]
mov dword [ebp - 0x24], eax
xor eax, eax
push ebp
push 0x130d5e
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x78]
mov edx, 0x48
call fcn.00129984
mov dword [ebp - 0x78], 0x48
mov dword [ebp - 0x4c], 1
mov word [ebp - 0x48], 0
lea eax, [ebp - 0x88]
mov edx, 0x10
call fcn.00129984
mov ebx, 4
xor eax, eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
push 0
push 1
push 0
call fcn.0012fba8
mov eax, dword [ebp - 0x10]
push eax
push 0
call fcn.00125108
push eax
call fcn.00125128
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x10]
push eax
push 0
push 1
mov eax, dword [ebp - 0x20]
push eax
call fcn.0012fba8
mov eax, 0x130e00
call fcn.001305b0
push eax
push 0
push 0x1f0fff
call fcn.00125170
mov dword [ebp - 0x14], eax
push 0
push 0
push 4
lea eax, [ebp - 0x14]
push eax
push 0x20000
push 0
mov eax, dword [ebp - 0x20]
push eax
call fcn.0012fc20
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x14], 0
jbe 0x130866
mov ebx, 0x80004
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x78]
push eax
push 0
push 0
push ebx
push 0
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.00123d00
push eax
push 0
call fcn.00125078
test eax, eax
je 0x130d30
push 0x130e10
push 0x130e24
call fcn.001250f0
push eax
call fcn.00125100
mov edi, eax
push 0x130e34
push 0x130e24
call fcn.001250f0
push eax
call fcn.00125100
mov ebx, eax
mov eax, dword [ebp - 0x88]
call fcn.0012fdcc
test eax, eax
je 0x13090d
call fcn.001250b0
call fcn.0012fdcc
test eax, eax
je 0x13090d
push 0x130e10
push 0x130e24
call fcn.001250f0
push eax
call fcn.00125100
mov edi, eax
push 0x130e34
push 0x130e24
call fcn.001250f0
push eax
call fcn.00125100
mov ebx, eax
mov eax, dword [ebp - 0x88]
call fcn.0012fdcc
test eax, eax
je 0x130958
call fcn.001250b0
call fcn.0012fdcc
test eax, eax
jne 0x130958
push 0x130e48
push 0x130e24
call fcn.001250f0
push eax
call fcn.00125100
mov edi, eax
push 0x130e60
push 0x130e24
call fcn.001250f0
push eax
call fcn.00125100
mov ebx, eax
mov eax, dword [ebp - 0x88]
call fcn.0012fdcc
test eax, eax
jne 0x1309a3
call fcn.001250b0
call fcn.0012fdcc
test eax, eax
jne 0x1309a3
push 0x130e10
push 0x130e24
call fcn.001250f0
push eax
call fcn.00125100
mov edi, eax
push 0x130e34
push 0x130e24
call fcn.001250f0
push eax
call fcn.00125100
mov ebx, eax
lea eax, [ebp - 0x1c]
call fcn.001306b8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x88]
call fcn.0012fdcc
test eax, eax
je 0x1309c8
mov eax, dword [ebp - 0x18]
mov dword [eax], 0x10007
jmp 0x1309d2
mov eax, dword [ebp - 0x18]
mov dword [eax + 0x30], 0x10007
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x84]
push eax
call edi
test eax, eax
je 0x130d22
mov eax, dword [ebp - 0x88]
call fcn.0012fdcc
test eax, eax
je 0x130add
call fcn.001250b0
call fcn.0012fdcc
test eax, eax
je 0x130add
push 0x40
push 0x3000
push esi
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x34]
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251c0
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x130a86
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x88]
call fcn.0013008c
test al, al
je 0x130a6e
push 0x40
push 0x3000
push esi
push 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251c0
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x88]
call fcn.001300d8
jmp 0x130a86
push 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251b0
call fcn.00123324
jmp 0x130d8d
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x34], edx
lea eax, [ebp - 0xc]
push eax
push 4
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0xa4]
add eax, 8
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251e0
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x28]
add eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x18]
mov dword [edx + 0xb0], eax
lea eax, [ebp - 0xc]
push eax
push esi
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251e0
mov eax, dword [ebp - 0x88]
call fcn.0012fdcc
test eax, eax
je 0x130bd3
call fcn.001250b0
call fcn.0012fdcc
test eax, eax
jne 0x130bd3
push 0x40
push 0x3000
push esi
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x34]
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251c0
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x130b7c
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x88]
call fcn.0013008c
test al, al
je 0x130b64
push 0x40
push 0x3000
push esi
push 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251c0
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x88]
call fcn.001300d8
jmp 0x130b7c
push 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251b0
call fcn.00123324
jmp 0x130d8d
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x34], edx
lea eax, [ebp - 0xc]
push eax
push 4
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0xa4]
add eax, 8
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251e0
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x28]
add eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x18]
mov dword [edx + 0xb0], eax
lea eax, [ebp - 0xc]
push eax
push esi
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251e0
mov eax, dword [ebp - 0x88]
call fcn.0012fdcc
test eax, eax
jne 0x130ced
call fcn.001250b0
call fcn.0012fdcc
test eax, eax
jne 0x130ced
push 0x40
push 0x3000
push esi
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x30]
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251c0
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x130c72
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x88]
call fcn.0013008c
test al, al
je 0x130c5a
push 0x40
push 0x3000
push esi
push 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251c0
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x88]
call fcn.001300d8
jmp 0x130c72
push 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251b0
call fcn.00123324
jmp 0x130d8d
mov eax, dword [ebp - 0x30]
xor edx, edx
mov ecx, dword [ebp - 0x24]
mov dword [ecx + 0x30], eax
mov dword [ecx + 0x34], edx
lea eax, [ebp - 0xc]
push eax
push 8
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax + 0x8c]
mov eax, dword [eax + 0x88]
add eax, 0x10
adc edx, 0
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251e0
mov eax, dword [ebp - 0x30]
xor edx, edx
push edx
push eax
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x28]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0x80], eax
mov dword [ecx + 0x84], edx
lea eax, [ebp - 0xc]
push eax
push esi
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251e0
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x84]
push eax
call ebx
test eax, eax
je 0x130d12
mov eax, dword [ebp - 0x84]
push eax
call fcn.00125188
mov eax, dword [ebp - 0x80]
mov dword [ebp - 8], eax
jmp 0x130d30
push 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251b0
jmp 0x130d30
push 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.001251b0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x130d65
push 0x8000
push 0
mov eax, dword [ebp - 0x1c]
push eax
call fcn.001251c8
push 0x8000
push 0
mov eax, dword [ebp - 0x28]
push eax
call fcn.001251c8
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x130db5
lea eax, [ebp - 0x8c]
call fcn.0012387c
lea eax, [ebp - 4]
call fcn.0012387c
ret