Function at 0x10012e40
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1005dd62
mov eax, dword fs:[0]
push eax
sub esp, 0xf4
mov eax, dword [0x1007a040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, 0x1007f3d8
mov dword [ebp - 0xc4], 0
call fcn.100101b0
cmp dword [0x1007f3d4], 0xf
mov eax, 0x1007f3c0
mov dword [0x1007f3d0], 0
cmova eax, dword [0x1007f3c0]
mov byte [0x1007f01e], 0
mov byte [eax], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount64]
mov dword [0x1007f100], eax
mov dword [0x1007f104], edx
mov dword [0x1007f108], eax
mov dword [0x1007f10c], edx
mov eax, 1
mov dword [ebp - 4], 0
xor ecx, ecx
lea edi, [ebp - 0x28]
push ebx
cpuid
mov esi, ebx
pop ebx
mov dword [edi], eax
lea eax, [ebp - 0xc0]
push 0x98
mov dword [edi + 4], esi
push 0
mov dword [edi + 8], ecx
push eax
mov dword [edi + 0xc], edx
call fcn.1003e0a0
add esp, 8
lea ecx, [ebp - 0xc0]
call fcn.10007ad0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xac]
mov eax, dword [ebp - 0xc0]
push 0
push 8
mov eax, dword [eax + 4]
or dword [ebp + eax - 0xac], 4
mov eax, dword [ebp - 0xc0]
add ecx, dword [eax + 4]
mov eax, dword [ecx]
and eax, 0xfffff9ff
or eax, 0x800
mov dword [ecx], eax
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov byte [ebp + eax - 0x80], 0x30
lea eax, [ebp - 0xf0]
push eax
call fcn.10037f90
add esp, 0xc
lea ecx, [ebp - 0xc0]
mov edx, eax
call fcn.10009dc0
push dword [ebp - 0x1c]
mov ecx, eax
call fcn.100161d0
push 0
mov esi, eax
lea eax, [ebp - 0x100]
push 8
push eax
call fcn.10037f90
add esp, 0xc
mov edx, eax
mov ecx, esi
call fcn.10009dc0
push dword [ebp - 0x28]
mov ecx, eax
call fcn.100161d0
lea eax, [ebp - 0xdc]
push eax
lea ecx, [ebp - 0xc0]
call fcn.100079e0
mov dword [ebp - 0xc4], 1
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xc4], eax
lea ecx, [ebp - 0xbc]
call fcn.10007660
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc0], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [ebp + ecx - 0xc4], eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 2
push eax
mov dword [ebp - 0x70], vtable.std::ios_base.0
call fcn.10037ed5
add esp, 4
lea eax, [ebp - 0xdc]
mov ecx, 0x1007bf18
push eax
call fcn.10009940
mov ecx, dword [ebp - 0xc8]
cmp ecx, 0xf
jbe 0x10013071
mov edx, dword [ebp - 0xdc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10013067
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10013216
push ecx
push edx
call fcn.1003bf86
add esp, 8
mov ecx, 0x6d12c0
call fcn.10012a00
cmp al, 0xe9
jne 0x10013087
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov esi, dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
push 4
push 0x6d12c0
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
test eax, eax
jne 0x100130cb
mov dword [0x1007f08c], 0x6d12c0
call fcn.1003ab60
call edi
push eax
call fcn.1003b040
push 0x10013250
push 0x1007f08c
call fcn.1003a3e0
call fcn.1003abc0
push 4
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x6d141e
push eax
call esi
test eax, eax
jne 0x1001310b
push 4
push 0x10013220
call esi
test eax, eax
jne 0x1001310b
call fcn.1003ab60
call edi
push eax
call fcn.1003b040
push 0x10013220
lea eax, [ebp - 0x14]
push eax
call fcn.1003a3e0
call fcn.1003abc0
mov edx, 0x10015210
mov ecx, 0xfbe200
call fcn.100129d0
mov edx, 0x10015bc0
mov ecx, 0xfbfea4
call fcn.100129d0
call fcn.1003ab60
call edi
push eax
call fcn.1003b040
push 0x10015d40
push 0x1007f088
call fcn.1003a870
call fcn.1003abc0
push 4
push 0x8365b0
call esi
test eax, eax
jne 0x10013182
mov dword [0x1007f088], 0x8365b0
call fcn.1003ab60
call edi
push eax
call fcn.1003b040
push 0x10015d20
push 0x1007f088
call fcn.1003a3e0
call fcn.1003abc0
push 4
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x8084c2
push eax
call esi
test eax, eax
jne 0x100131c2
push 4
push 0x10015d40
call esi
test eax, eax
jne 0x100131c2
call fcn.1003ab60
call edi
push eax
call fcn.1003b040
push 0x10015d40
lea eax, [ebp - 0x18]
push eax
call fcn.1003a3e0
call fcn.1003abc0
push 4
push 0x700150
call esi
test eax, eax
jne 0x100131fa
mov dword [0x1007f0fc], 0x700150
call fcn.1003ab60
call edi
push eax
call fcn.1003b040
push 0x10012b00
push 0x1007f0fc
call fcn.1003a3e0
call fcn.1003abc0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1003bf25
mov esp, ebp
pop ebp
ret
call fcn.10041254
int3