Function at 0x10073cc0
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Get ntdll base address
Get number of processors

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x50
mov esi, esp
mov dword [esi + 0x38], ebp
mov dword [esi + 0x3c], esp
mov dword [esi + 0x48], 0xffffffff
lea eax, [esi + 0x40]
mov dword [esi + 0x44], 0x1007aef0
mov ecx, dword fs:[0]
mov dword [esi + 0x40], ecx
mov dword fs:[0], eax
mov eax, dword [0x1026fd2c]
mov dword [esi + 0x24], eax
mov dword [esi + 0x28], eax
call sub.MSVCP140.dll__Query_perf_frequency
mov edi, eax
mov ebx, edx
call sub.MSVCP140.dll__Query_perf_counter
mov ecx, edi
xor ecx, 0x989680
or ecx, ebx
jne 0x10073e95
mov ecx, 0x64
mov edi, edx
mul ecx
imul ecx, edi, 0x64
add ecx, edx
movzx ebx, byte [ebp + 0x10]
movss xmm0, dword [ebp + 0xc]
mov dword [esi + 0x18], eax
mov dword [esi + 0x30], eax
mov dword [esi + 0xc], ecx
mov dword [esi + 0x34], ecx
mov eax, dword [0x1027506c]
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + eax*4]
mov edx, dword [ebp + 8]
cmp byte [eax + 2], 0
jne 0x10073d8d
lea edi, [eax + 2]
mov ebx, dword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentThread]
call ebx
push 0
push eax
call dword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_SetThreadPriorityBoost]
call ebx
movzx ebx, byte [ebp + 0x10]
push 2
push eax
call dword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_SetThreadPriority]
movss xmm0, dword [ebp + 0xc]
mov byte [edi], 1
mov edx, dword [ebp + 8]
mov ecx, dword [0x102700e0]
mov dword [esi + 0x48], 1
sub esp, 0xc
movzx eax, bl
mov dword [esp + 8], eax
movss dword [esp + 4], xmm0
mov dword [esp], edx
call dword [0x102701d4]
mov ecx, dword [0x102700e4]
mov eax, dword [ecx]
call dword [eax + 0x68]
test al, al
je 0x10073e2f
mov eax, dword [0x1026fc70]
mov ecx, dword [eax]
mov ecx, dword [ecx]
test ecx, ecx
je 0x10073e2f
mov edx, dword [eax + 0x184]
cmp byte [edx + ecx], 0
jne 0x10073e2f
mov eax, dword [eax + 0x1c]
cmp dword [eax + ecx], 0
jle 0x10073e2f
mov edi, dword [ebp + 0x14]
mov ecx, 0x1b4e81b5
mov ebx, dword [ebp + 8]
mov eax, ebx
mul ecx
shr edx, 4
imul eax, edx, 0x96
sub ebx, eax
mov eax, dword [0x1026fd10]
xor byte [eax + 0xc0], 1
mov eax, dword [0x10270108]
imul edx, ebx, 0x68
add edx, dword [eax + 0xf0]
imul ebx, ebx, 0x64
add ebx, dword [eax + 0xec]
mov ecx, dword [0x1026fc98]
push edx
push ebx
push edi
call fcn.1007b670
call sub.MSVCP140.dll__Query_perf_frequency
mov edi, eax
mov ebx, edx
call sub.MSVCP140.dll__Query_perf_counter
mov ecx, edi
xor ecx, 0x989680
or ecx, ebx
jne 0x10073f19
mov ecx, 0x64
mov edi, edx
mul ecx
mov ecx, edx
imul edx, edi, 0x64
add edx, ecx
sub eax, dword [esi + 0x18]
sbb edx, dword [esi + 0xc]
push 0
push 0x3e8
push edx
push eax
call fcn.100f1510
mov dword [esi + 0x48], 0
mov ecx, dword [esi + 0x24]
push edx
push eax
call fcn.10072dc0
mov eax, dword [esi + 0x40]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov ecx, edi
xor ecx, 0x16e3600
or ecx, ebx
mov dword [esi + 0x18], edx
jne 0x10073f9b
push 0
push 0x16e3600
push edx
push eax
mov edi, eax
call fcn.100f1510
mov ebx, eax
mov ecx, edx
mov edx, 0x3b9aca00
mul edx
mov dword [esi + 0xc], eax
mov dword [esi + 8], edx
mov edx, 0x16e3600
mov eax, ebx
mul edx
mov dword [esi + 4], eax
imul ebx, ecx, 0x3b9aca00
add ebx, dword [esi + 8]
imul eax, ecx, 0x16e3600
add eax, edx
sub edi, dword [esi + 4]
mov ecx, dword [esi + 0x18]
sbb ecx, eax
mov eax, edi
mov edx, 0x3b9aca00
mul edx
imul ecx, ecx, 0x3b9aca00
add edx, ecx
push 0
push 0x16e3600
push edx
push eax
call fcn.100f1510
mov ecx, edx
add eax, dword [esi + 0xc]
adc ecx, ebx
jmp 0x10073d2c
mov ecx, edi
xor ecx, 0x16e3600
or ecx, ebx
mov dword [esi + 8], edx
jne 0x10074009
push 0
push 0x16e3600
push edx
push eax
mov edi, eax
call fcn.100f1510
mov ebx, eax
mov ecx, edx
mov edx, 0x3b9aca00
mul edx
mov dword [esi + 4], eax
mov dword [esi + 0x14], edx
mov edx, 0x16e3600
mov eax, ebx
mul edx
mov dword [esi + 0x10], eax
imul ebx, ecx, 0x3b9aca00
add ebx, dword [esi + 0x14]
imul eax, ecx, 0x16e3600
add eax, edx
sub edi, dword [esi + 0x10]
mov ecx, dword [esi + 8]
sbb ecx, eax
mov eax, edi
mov edx, 0x3b9aca00
mul edx
imul ecx, ecx, 0x3b9aca00
add edx, ecx
push 0
push 0x16e3600
push edx
push eax
call fcn.100f1510
add eax, dword [esi + 4]
adc edx, ebx
jmp 0x10073e5d
push ebx
push edi
push edx
push eax
mov dword [esi + 0x14], eax
call fcn.100f1510
mov dword [esi + 0xc], eax
mov ecx, edx
mov eax, dword [esi + 0xc]
mov edx, 0x3b9aca00
mul edx
mov dword [esi + 8], eax
imul eax, ecx, 0x3b9aca00
add eax, edx
mov dword [esi + 4], eax
mov edx, ebx
mov eax, dword [esi + 0xc]
imul edx, eax
mov dword [esi + 0x10], edx
mul edi
add edx, dword [esi + 0x10]
imul ecx, edi
add ecx, edx
mov edx, dword [esi + 0x14]
sub edx, eax
sbb dword [esi + 0x18], ecx
mov eax, edx
mov ecx, 0x3b9aca00
mul ecx
imul ecx, dword [esi + 0x18], 0x3b9aca00
add edx, ecx
push ebx
push edi
push edx
push eax
call fcn.100f1510
mov ecx, edx
add eax, dword [esi + 8]
adc ecx, dword [esi + 4]
jmp 0x10073d2c
push ebx
push edi
push edx
push eax
mov dword [esi + 0x20], eax
call fcn.100f1510
mov dword [esi + 4], eax
mov ecx, edx
mov eax, dword [esi + 4]
mov edx, 0x3b9aca00
mul edx
mov dword [esi + 0x14], eax
imul eax, ecx, 0x3b9aca00
add eax, edx
mov dword [esi + 0x10], eax
mov edx, ebx
mov eax, dword [esi + 4]
imul edx, eax
mov dword [esi + 0x1c], edx
mul edi
add edx, dword [esi + 0x1c]
imul ecx, edi
add ecx, edx
mov edx, dword [esi + 0x20]
sub edx, eax
sbb dword [esi + 8], ecx
mov eax, edx
mov ecx, 0x3b9aca00
mul ecx
imul ecx, dword [esi + 8], 0x3b9aca00
add edx, ecx
push ebx
push edi
push edx
push eax
call fcn.100f1510
add eax, dword [esi + 0x14]
adc edx, dword [esi + 0x10]
jmp 0x10073e5d