Function at 0x180002100
Capabilities:
Get system information on windows
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push rbx
push r12
push r13
push r14
push r15
sub rsp, 0x50
xor ebx, ebx
xor r12d, r12d
mov r13, r9
mov r14, r8
mov r15, rcx
cmp rdx, 0x40
jae 0x180002132
xor eax, eax
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rbx
ret
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x180002122
mov qword [rsp + 0x80], rbp
movsxd rbp, dword [rcx + 0x3c]
add rbp, rcx
cmp dword [rbp], 0x4550
je 0x18000215b
xor eax, eax
jmp 0x18000242d
movzx eax, word [rbp + 6]
movzx ecx, word [rbp + 0x14]
mov r9d, dword [rbp + 0x38]
mov qword [rsp + 0x88], rsi
test eax, eax
je 0x1800021a2
lea rdx, [rcx + rbp + 0x24]
mov r8d, eax
nop dword [rax + rax]
mov ecx, dword [rdx + 4]
test ecx, ecx
jne 0x18000218e
mov eax, dword [rdx]
add rax, r9
jmp 0x180002192
mov eax, dword [rdx]
add eax, ecx
cmp rax, rbx
cmova rbx, rax
add rdx, 0x28
dec r8
jne 0x180002180
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetNativeSystemInfo]
mov r11d, dword [rsp + 0x24]
mov eax, dword [rbp + 0x50]
lea rsi, [rax + r11 - 1]
lea rax, [r11 - 1]
lea rcx, [r11 + rbx - 1]
not rax
and rsi, rax
lea rax, [r11 - 1]
not rax
and rcx, rax
cmp rsi, rcx
je 0x1800021df
xor eax, eax
jmp 0x180002425
mov rcx, qword [rbp + 0x30]
mov r9d, 4
mov r8d, 0x3000
mov rdx, rsi
mov qword [rsp + 0x90], rdi
call r14
mov rdi, rax
test rax, rax
jne 0x180002223
lea r9d, [rax + 4]
mov r8d, 0x3000
mov rdx, rsi
xor ecx, ecx
call r14
mov rdi, rax
test rax, rax
je 0x18000241b
movabs rdx, 0xffffffff00000000
lea rcx, [rdi + rsi]
mov rax, rdi
and rcx, rdx
and rax, rdx
cmp rax, rcx
jae 0x180002295
nop
mov ecx, 0x10
call fcn.180003998
mov rbx, rax
test rax, rax
je 0x1800022e0
mov qword [rax], r12
mov r9d, 4
mov r8d, 0x3000
mov rdx, rsi
xor ecx, ecx
mov qword [rax + 8], rdi
mov r12, rax
call r14
mov rdi, rax
test rax, rax
je 0x1800022c5
lea rcx, [rax + rsi]
movabs rdx, 0xffffffff00000000
and rcx, rdx
and rax, rdx
cmp rax, rcx
jb 0x180002240
mov ecx, 0x58
call fcn.180003858
mov rcx, rdi
mov rsi, rax
test rax, rax
jne 0x1800022f3
xor edx, edx
mov r8d, 0x8000
call r13
mov rdx, r13
mov rcx, r12
call fcn.180001b30
jmp 0x18000241b
mov rcx, rbx
mov rdx, r13
call fcn.180001b30
mov ecx, 0xe
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x18000241b
xor edx, edx
mov r8d, 0x8000
mov rcx, rdi
call r13
mov rcx, r12
jmp 0x1800022c8
mov qword [rax + 0x10], 0
mov qword [rax + 8], rdi
mov qword [rax + 0x20], r14
mov qword [rax + 0x28], r13
mov rax, qword [rsp + 0xa0]
mov r9d, 4
mov qword [rsi + 0x30], rax
mov rax, qword [rsp + 0xa8]
mov r8d, 0x1000
mov qword [rsi + 0x38], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsi + 0x40], rax
mov eax, dword [rsp + 0x24]
mov qword [rsi + 0x50], r12
mov dword [rsi + 0x48], eax
mov edx, dword [rbp + 0x54]
call r14
mov r8d, dword [rbp + 0x54]
mov rdx, r15
mov rcx, rax
mov rbx, rax
call fcn.180006100
movsxd rax, dword [r15 + 0x3c]
mov r8, rsi
add rax, rbx
mov rdx, rbp
mov rcx, r15
mov qword [rsi], rax
mov qword [rax + 0x30], rdi
call fcn.180001b90
test eax, eax
je 0x180002413
mov rax, qword [rsi]
mov rdx, qword [rax + 0x30]
sub rdx, qword [rbp + 0x30]
je 0x180002393
mov rcx, rsi
call fcn.180001ee0
mov rcx, rsi
call fcn.180001f90
test eax, eax
je 0x180002413
mov rcx, rsi
call fcn.180001c80
test eax, eax
je 0x180002413
mov rax, qword [rsi]
mov rbp, qword [rsi + 8]
mov ecx, dword [rax + 0xd0]
test ecx, ecx
je 0x1800023e9
mov rbx, qword [rcx + rbp + 0x18]
test rbx, rbx
je 0x1800023e9
mov rax, qword [rbx]
test rax, rax
je 0x1800023e9
nop
xor r8d, r8d
mov rcx, rbp
lea edx, [r8 + 1]
call rax
mov rax, qword [rbx + 8]
add rbx, 8
test rax, rax
jne 0x1800023d0
mov rax, qword [rsi]
mov ecx, dword [rax + 0x28]
test ecx, ecx
je 0x18000240e
xor r8d, r8d
lea rax, [rdi + rcx]
mov rcx, rdi
lea edx, [r8 + 1]
call rax
test eax, eax
je 0x180002413
mov dword [rsi + 0x18], 1
mov rax, rsi
jmp 0x18000241d
mov rcx, rsi
call fcn.180002520
xor eax, eax
mov rdi, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x80]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rbx
ret