Function at 0x309795580
Capabilities:
Access peb ldr_data
Get number of processors

Disassembly:
lea r12, [rsp - 0x40]
cmp r12, qword [r14 + 0x10]
jbe 0x3097958e6
push rbp
mov rbp, rsp
sub rsp, 0xb8
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xc8], rax
nop
lea rax, [0x3097d9240]
call fcn.3096ce980
mov qword [rsp + 0x90], rax
mov qword [rax + 8], 0xc
lea rcx, [0x3097e8869]
mov qword [rax], rcx
mov byte [rax + 0x10], 1
nop
lea rax, [0x3097d9240]
nop dword [rax]
call fcn.3096ce980
mov qword [rsp + 0x88], rax
mov qword [rax + 8], 9
lea rcx, [0x3097e7eab]
mov qword [rax], rcx
mov byte [rax + 0x10], 1
nop
lea rax, [0x3097d9180]
call fcn.3096ce980
cmp dword [0x3099b5590], 0
jne 0x309795623
mov rcx, qword [rsp + 0x88]
jmp 0x309795633
call fcn.309727420
mov rcx, qword [rsp + 0x88]
mov qword [r11], rcx
mov qword [rsp + 0x80], rax
mov qword [rax + 0x18], rcx
mov qword [rax + 8], 0xd
lea rdx, [0x3097e8d4a]
mov qword [rax], rdx
nop
lea rax, [0x3097d9180]
call fcn.3096ce980
cmp dword [0x3099b5590], 0
jne 0x309795671
mov rcx, qword [rsp + 0x88]
jmp 0x309795681
call fcn.309727420
mov rcx, qword [rsp + 0x88]
mov qword [r11], rcx
mov qword [rsp + 0x78], rax
mov qword [rax + 0x18], rcx
mov qword [rax + 8], 0x12
lea rcx, [0x3097ea412]
mov qword [rax], rcx
nop
lea rax, [0x3097d9180]
call fcn.3096ce980
cmp dword [0x3099b5590], 0
jne 0x3097956c0
mov rcx, qword [rsp + 0x90]
jmp 0x3097956d0
call fcn.309727420
mov rcx, qword [rsp + 0x90]
mov qword [r11], rcx
mov qword [rsp + 0x70], rax
mov qword [rax + 0x18], rcx
mov qword [rax + 8], 0x10
lea rcx, [0x3097e9a90]
mov qword [rax], rcx
mov qword [rsp + 0x50], 0
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0x58], rcx
movzx edx, word [0x3099b5300]
mov word [rsp], dx
mov qword [rsp + 8], 0xffffffffffffffff
movups xmmword [rsp + 0x10], xmm15
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], 0x3000
mov qword [rsp + 0x30], 0x40
mov qword [rsp + 0x38], 0
nop dword [rax + rax]
call fcn.3097853e0
xorps xmm15, xmm15
mov r14, qword [0x3099b5528]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0xd0]
test rax, rax
jbe 0x3097958da
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xb0], rcx
lea rax, [0x3097c55a0]
call fcn.3096ce980
mov rcx, qword [rsp + 0x68]
mov qword [rax], rcx
mov rcx, qword [rsp + 0xb0]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0xd0]
mov qword [rax + 0x10], rcx
mov rbx, rax
mov ecx, 3
mov rdi, rcx
mov rax, qword [rsp + 0x80]
call fcn.30978f200
movzx ecx, word [0x3099b5302]
mov word [rsp + 0x4e], cx
lea rdx, [rsp + 0x68]
mov qword [rsp + 0xa8], rdx
lea rdx, [rsp + 0x58]
mov qword [rsp + 0xa0], rdx
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x98], rdx
lea rax, [0x3097c5600]
call fcn.3096ce980
mov qword [rax], 0xffffffffffffffff
mov rcx, qword [rsp + 0xa8]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], 0x20
mov rcx, qword [rsp + 0x98]
mov qword [rax + 0x20], rcx
movzx ecx, word [rsp + 0x4e]
mov word [rsp], cx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], 5
mov qword [rsp + 0x18], 5
call fcn.309785420
xorps xmm15, xmm15
mov r14, qword [0x3099b5528]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x70]
xor ebx, ebx
xor ecx, ecx
mov rdi, rcx
nop dword [rax + rax]
call fcn.30978f200
mov qword [rsp + 0x60], rax
lea rax, [0x3097c5660]
call fcn.3096ce980
mov rcx, qword [rsp + 0x60]
mov qword [rax], rcx
mov qword [rax + 8], 1
mov rcx, qword [rsp + 0x68]
mov qword [rax + 0x10], rcx
movups xmmword [rax + 0x18], xmm15
mov qword [rax + 0x28], 0
mov rbx, rax
mov ecx, 6
mov rdi, rcx
mov rax, qword [rsp + 0x78]
call fcn.30978f200
add rsp, 0xb8
pop rbp
ret
xor eax, eax
mov rcx, rax
nop
call fcn.3097277e0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.3097254e0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.309795580