Function at 0x401130
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
movups xmm0, xmmword [0x4032ac]
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
push ebx
push esi
movups xmmword [0x4053f0], xmm0
mov dword [ebp - 0x4c], 0xffffffff
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
push edi
xor edi, edi
movlpd qword [0x4053d8], xmm0
movups xmm0, xmmword [str.ExploitIoctlKsEnableEvent]
sub ecx, 0x5c
mov dword [0x405400], edi
push 2
sbb eax, edi
mov dword [0x4053c0], 0x80
mov dword [0x4053d4], eax
mov ax, word [0x4031b4]
movups xmmword [ebp - 0x20], xmm0
mov dword [0x4053c4], edi
movq xmm0, qword [0x4031ac]
mov dword [0x4053c8], edi
mov dword [0x4053cc], edi
mov dword [0x4053d0], ecx
mov dword [0x4053e0], 0x1c9c380
mov dword [0x4053e4], edi
mov dword [0x4053e8], 0x1c9c380
mov dword [0x4053ec], edi
movq qword [ebp - 0x10], xmm0
mov word [ebp - 8], ax
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call dword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
test eax, eax
je 0x4013d1
push 1
lea eax, [ebp - 0x20]
push eax
push str.___Pinned___s__thread_to_cpu__zu_n
call fcn.00401010
add esp, 0xc
push edi
push edi
push edi
push 0x401050
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateThread]
cmp eax, 0xffffffff
je 0x4013ea
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, dword [sym.imp.KERNEL32.dll_DeviceIoControl]
lea eax, [ebp - 0x4c]
push eax
push 0xc0000000
push 0x40328c
call dword [sym.imp.ksproxy.ax_KsOpenDefaultDevice]
test eax, eax
js 0x4013ad
mov eax, dword [ebp - 0x4c]
cmp eax, 0xffffffff
je 0x4013ad
push 0
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x34], 0
push ecx
push 4
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], 3
push ecx
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0x34], 2
movups xmmword [ebp - 0x44], xmm0
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x38], 5
movups xmm0, xmmword [0x40329c]
push ecx
push 0x2f0003
push eax
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x24], 0
call esi
test eax, eax
jne 0x4012c0
call ebx
push eax
push str._ERROR__SetClockState._LastError:_0x_x_n
call fcn.00401010
add esp, 8
push 0xb54
call dword [sym.imp.KERNEL32.dll_Sleep]
nop dword [eax + eax]
push 0
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0
push eax
push 0x30
push 0x4053c0
push 0x118
push 0x4053f0
push 0x2f0007
push dword [ebp - 0x4c]
mov dword [0x405404], 0x400
call esi
test eax, eax
je 0x4012d0
push 0x5dc
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0x34], 0
push eax
push 4
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0
push eax
push 0x18
xorps xmm0, xmm0
mov dword [ebp - 0x34], 2
lea eax, [ebp - 0x48]
mov dword [ebp - 0x28], 0
movups xmmword [ebp - 0x44], xmm0
push eax
movups xmm0, xmmword [0x40329c]
push 0x2f0003
push dword [ebp - 0x4c]
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 5
call esi
test eax, eax
jne 0x401376
call ebx
push eax
push str._ERROR__SetClockState._LastError:_0x_x_n
call fcn.00401010
add esp, 8
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
inc edi
push edi
push str.race_success____d_3_n
call fcn.00401010
add esp, 8
cmp edi, 3
jb 0x401235
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004017c7
mov esp, ebp
pop ebp
ret
call ebx
push eax
push str._ERROR__KsOpenDefaultDevice_KSCATEGORY_CLOCK__..__LastError:_0x_x_n
call fcn.00401010
mov ecx, dword [ebp - 4]
add esp, 8
xor ecx, ebp
or eax, 0xffffffff
pop edi
pop esi
pop ebx
call fcn.004017c7
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetThreadAffinityMask_failed:__d_n
call fcn.00401010
add esp, 8
call fcn.00401590
push str.Failed_to_create_thread_n
call fcn.00401010
add esp, 4
call fcn.00401590
int3