Function at 0x140001000
Capabilities:
Access peb ldr_data
Get number of processors
Hash data using djb2
Resolve function by parsing pe exports

Disassembly:
push rsi
push r12
push r15
sub rsp, 0x10
mov rax, qword gs:[0x60]
mov r12, rdx
mov esi, ecx
xor r15d, r15d
mov r8, qword [rax + 0x18]
mov r10, qword [r8 + 0x20]
mov r9, r10
nop word [rax + rax]
mov rdx, qword [r9 + 0x50]
test rdx, rdx
je 0x14000130b
movzx eax, word [rdx]
mov r8, rdx
test ax, ax
je 0x14000106d
nop dword [rax + rax]
lea ecx, [rax - 0x41]
cmp cx, 0x19
ja 0x140001060
add ax, 0x20
mov word [rdx], ax
movzx eax, word [rdx + 2]
add rdx, 2
test ax, ax
jne 0x140001050
movzx eax, word [r8]
mov ecx, 0x1505
test ax, ax
je 0x14000109d
nop dword [rax + rax]
imul ecx, ecx, 0x21
lea r8, [r8 + 2]
movzx eax, ax
add ecx, eax
movzx eax, word [r8]
test ax, ax
jne 0x140001080
cmp ecx, 0x22d3b5ed
je 0x1400010b2
mov r9, qword [r9]
cmp r9, r10
jne 0x140001030
mov eax, r15d
add rsp, 0x10
pop r15
pop r12
pop rsi
ret
mov qword [rsp + 0x40], rdi
mov rdi, qword [r9 + 0x20]
test rdi, rdi
je 0x140001306
movsxd rax, dword [rdi + 0x3c]
movzx r8d, r15w
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rbp
mov qword [rsp], r14
mov ebx, dword [rax + rdi + 0x88]
add rbx, rdi
mov ebp, dword [rbx + 0x1c]
mov r10d, dword [rbx + 0x20]
add rbp, rdi
mov r14d, dword [rbx + 0x24]
add r10, rdi
mov r9d, dword [rbx + 0x18]
add r14, rdi
test r9d, r9d
je 0x1400012f8
xor esi, 0x41424344
nop dword [rax + rax]
movzx ecx, r8w
movzx eax, word [r14 + rcx*2]
mov edx, dword [r10 + rcx*4]
add rdx, rdi
mov r11d, dword [rbp + rax*4]
mov eax, 0x1505
add r11, rdi
movzx ecx, byte [rdx]
test ecx, ecx
je 0x140001150
nop dword [rax]
nop dword [rax + rax]
imul eax, eax, 0x21
lea rdx, [rdx + 1]
add eax, ecx
movzx ecx, byte [rdx]
test ecx, ecx
jne 0x140001140
cmp eax, esi
je 0x140001161
inc r8w
movzx eax, r8w
cmp eax, r9d
jb 0x140001110
test r11, r11
je 0x1400012f8
mov qword [rsp + 8], r13
movzx edx, r15w
nop dword [rax]
nop word [rax + rax]
movzx ecx, dx
mov r13d, 1
add rcx, r11
movzx eax, byte [rcx]
cmp al, 0xe9
je 0x1400011dd
cmp al, 0xc3
je 0x1400012f3
cmp al, 0x4c
jne 0x1400011bd
cmp byte [rcx + 1], 0x8b
jne 0x1400011bd
cmp byte [rcx + 2], 0xd1
jne 0x1400011bd
cmp byte [rcx + 3], 0xb8
jne 0x1400011bd
cmp byte [rcx + 6], r15b
jne 0x1400011bd
cmp byte [rcx + 7], r15b
je 0x1400011cb
inc dx
cmp dx, 0x20
jb 0x140001180
jmp 0x1400012f3
movzx r8d, byte [rcx + 5]
movzx eax, byte [rcx + 4]
shl r8d, 8
jmp 0x1400012aa
mov ebx, dword [rbx + 0x14]
movzx r10d, r13w
cmp ebx, r13d
jb 0x1400012f3
lea eax, [rbx - 1]
mov r9d, r13d
movzx eax, word [r14 + rax*2]
mov r8d, r15d
mov esi, dword [rbp + rax*4]
add rsi, rdi
mov ecx, r9d
shl ecx, 5
add rcx, r11
cmp rcx, rsi
jae 0x140001233
cmp byte [rcx], 0x4c
jne 0x140001233
cmp byte [rcx + 1], 0x8b
jne 0x140001233
cmp byte [rcx + 2], 0xd1
jne 0x140001233
cmp byte [rcx + 3], 0xb8
jne 0x140001233
cmp byte [rcx + 6], r8b
jne 0x140001233
cmp byte [rcx + 7], r8b
je 0x140001283
mov eax, r9d
neg eax
shl eax, 5
movsxd rdx, eax
movzx eax, word [r14]
add rdx, r11
mov ecx, dword [rbp + rax*4]
add rcx, rdi
cmp rdx, rcx
jbe 0x140001274
cmp byte [rdx], 0x4c
jne 0x140001274
cmp byte [rdx + 1], 0x8b
jne 0x140001274
cmp byte [rdx + 2], 0xd1
jne 0x140001274
cmp byte [rdx + 3], 0xb8
jne 0x140001274
cmp byte [rdx + 6], r8b
jne 0x140001274
cmp byte [rdx + 7], r8b
je 0x140001298
inc r10w
movzx r9d, r10w
cmp r9d, ebx
jbe 0x140001202
jmp 0x1400012ad
movzx r8d, byte [rcx + 5]
mov r11, rcx
movzx eax, byte [rcx + 4]
shl r8d, 8
sub eax, r9d
jmp 0x1400012aa
movzx r8d, byte [rdx + 4]
mov r11, rdx
movzx eax, byte [rdx + 5]
add r8d, r9d
shl eax, 8
or r8d, eax
test r8d, r8d
je 0x1400012f3
movzx edx, r15w
nop word [rax + rax]
movzx ecx, dx
add rcx, r11
cmp byte [rcx], 0xf
jne 0x1400012d7
cmp byte [rcx + 1], 5
jne 0x1400012d7
cmp byte [rcx + 2], 0xc3
je 0x1400012e2
inc dx
cmp dx, 0x20
jb 0x1400012c0
jmp 0x1400012f3
test rcx, rcx
je 0x1400012f3
mov qword [r12 + 8], rcx
mov r15d, r13d
mov dword [r12], r8d
mov r13, qword [rsp + 8]
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov r14, qword [rsp]
mov rdi, qword [rsp + 0x40]
mov eax, r15d
add rsp, 0x10
pop r15
pop r12
pop rsi
ret