Function at 0x1800634f0
Capabilities:
Access peb ldr_data
Encode data using xor
Get number of processors
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push rbp
push r13
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0xe0
mov rax, qword [0x180295fe0]
xor rax, rsp
mov qword [rbp + 0xf], rax
xor ecx, ecx
mov r15, rdx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
mov ecx, 1
sub eax, edx
sar eax, 1
mov r13d, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
cdq
sub eax, edx
sar eax, 1
mov dword [rbp - 0x79], eax
test r15, r15
je 0x180062fb1
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x118], rdi
call fcn.18000fb60
mov ebx, dword [rax + 0x1c]
call fcn.18000fb60
mov rcx, qword [rax + 0xa8]
mov rdi, qword [rbx + rcx]
test rdi, rdi
je 0x180062fa1
movsd xmm0, qword [rdi + 0x3d0]
movsd qword [rbp - 0x49], xmm0
mov eax, dword [rdi + 0x3d8]
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0xd8], r12
mov dword [rbp - 0x41], eax
mov r12d, dword [rdi + 0x68]
mov rbx, qword [rdi + 0x10]
mov qword [rsp + 0xd0], r14
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm7
movsd xmm7, qword [rdi + 0x60]
call fcn.180062b90
mov rcx, rax
call fcn.180061d60
movss xmm6, dword [0x180185eec]
xor esi, esi
test al, al
je 0x180062d25
movss xmm0, dword [rbx + 0x2ac]
ucomiss xmm0, dword [0x18018d238]
jp 0x180062d6e
jne 0x180062d6e
mov dword [rbx + 0x2ac], esi
mov dword [rbx + 0x2c0], 0x42de0000
mov dword [rbx + 0x2c4], 0x42de0000
jmp 0x180062d6e
movss xmm0, dword [rbx + 0x130]
ucomiss xmm0, dword [0x180188278]
jp 0x180062d6e
jne 0x180062d6e
movss xmm0, dword [rbx + 0x49c]
ucomiss xmm0, xmm6
mov dword [rbx + 0x130], 0x42de0000
mov dword [rbx + 0x134], 0x42de0000
mov dword [rbx + 0x4cc], esi
jp 0x180062d67
jne 0x180062d67
mov dword [rbx + 0x49c], esi
mov qword [rbx + 0x2ac], rsi
call fcn.180004650
lea rdx, [rbp - 0x49]
mov rcx, rax
call fcn.18000fd10
test al, al
je 0x180062d93
movsd xmm0, qword [rdi + 0x40]
movsd qword [rbp - 0x49], xmm0
mov eax, dword [rdi + 0x48]
mov dword [rbp - 0x41], eax
mov rcx, qword [0x180297d60]
mov edx, dword [rcx + 0x80]
sub edx, 1
je 0x180062daf
cmp edx, 1
jne 0x180062db4
lea esi, [rdx + 7]
jmp 0x180062db4
mov esi, 7
call fcn.180004650
mov r9d, esi
lea rdx, [rbp - 9]
mov r8, r15
mov rcx, rax
call fcn.18000fa60
call fcn.180004650
mov ecx, dword [rbp - 1]
lea r9, [rbp - 0x59]
movsd xmm0, qword [rbp - 9]
lea r8, [rbp - 0x69]
mov dword [rbp - 0x51], ecx
lea rdx, [rbp - 0x19]
mov rcx, rax
movsd qword [rbp - 0x59], xmm0
movsd qword [rbp - 0x69], xmm7
mov dword [rbp - 0x61], r12d
call fcn.18000f9a0
call fcn.180004650
lea rdx, [rbp - 0x19]
mov rcx, rax
call fcn.18000fc80
movss xmm0, dword [rbp - 0x19]
subss xmm0, dword [rbp - 0x49]
movss xmm1, dword [rbp - 0x15]
subss xmm1, dword [rbp - 0x45]
movss dword [rbp - 0x29], xmm0
movss xmm0, dword [rbp - 0x11]
subss xmm0, dword [rbp - 0x41]
movss dword [rbp - 0x25], xmm1
movss dword [rbp - 0x21], xmm0
call fcn.180004650
lea rdx, [rbp - 0x29]
mov rcx, rax
call fcn.18000fc80
mov rax, qword [0x180297d60]
movss xmm0, dword [rbp - 0x29]
movss xmm1, dword [rbp - 0x25]
movd xmm2, dword [rax + 0x14]
mov ecx, dword [rax + 0x18]
cvtdq2ps xmm2, xmm2
maxss xmm2, xmm6
divss xmm0, xmm2
addss xmm0, dword [rbp - 0x49]
movss dword [rbp - 0x39], xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
maxss xmm0, xmm6
divss xmm1, xmm0
movss xmm0, dword [rbp - 0x21]
addss xmm1, dword [rbp - 0x45]
divss xmm0, xmm2
movss dword [rbp - 0x35], xmm1
addss xmm0, dword [rbp - 0x41]
movss dword [rbp - 0x31], xmm0
call fcn.180004650
lea rdx, [rbp - 0x39]
mov rcx, rax
call fcn.18000fc80
call fcn.180004650
mov ecx, dword [rbp - 1]
lea r8, [rbp - 0x69]
movsd xmm0, qword [rbp - 9]
lea rdx, [rbp + 7]
mov dword [rbp - 0x61], ecx
mov rcx, rax
movsd qword [rbp - 0x69], xmm0
call fcn.18000fd40
movss xmm1, dword [rbp + 0xb]
movd xmm0, dword [rbp - 0x79]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvtps2pd xmm0, xmm1
movsd xmm1, qword [0x1801864e8]
call fcn.1800f9af0
movss xmm3, dword [rbp + 7]
movaps xmm7, xmm0
movd xmm2, r13d
cvtdq2ps xmm2, xmm2
subss xmm3, xmm2
cvtps2pd xmm0, xmm3
movsd xmm1, qword [0x1801864e8]
call fcn.1800f9af0
movaps xmm6, xmmword [rsp + 0xc0]
addsd xmm7, xmm0
mov r12, qword [rsp + 0xd8]
xorps xmm0, xmm0
mov rsi, qword [rsp + 0x110]
xorps xmm1, xmm1
cvtsd2ss xmm0, xmm7
movaps xmm7, xmmword [rsp + 0xb0]
ucomiss xmm1, xmm0
ja 0x180062f5a
sqrtss xmm0, xmm0
jmp 0x180062f5f
call fcn.1800fb184
mov rax, qword [0x180297d60]
movd xmm1, dword [rax + 0xc]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x180062f99
movsd xmm0, qword [rbp - 0x39]
movsd qword [rdi + 0x3d0], xmm0
mov eax, dword [rbp - 0x31]
mov dword [rdi + 0x3d8], eax
movsd xmm0, qword [rbp - 0x39]
movsd qword [rdi + 0x40], xmm0
mov eax, dword [rbp - 0x31]
mov dword [rdi + 0x48], eax
mov r14, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0x100]
mov rdi, qword [rsp + 0x118]
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.1800f2280
add rsp, 0xe0
pop r15
pop r13
pop rbp
ret
push rbp
sub rsp, 0x20
mov rax, qword [0x180297d60]
mov rbp, rcx
cmp byte [rax], 0
je 0x180063654
cmp byte [rax + 2], 0
je 0x180063641
mov rax, qword [0x180298320]
test rax, rax
jne 0x1800635f2
mov rax, qword gs:[0x60]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rdi
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx + 0x10]
mov rsi, qword [rax]
mov r11, rsi
nop dword [rax]
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x1800635c4
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x1800635c4
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [rdi + r8*4]
mov eax, dword [rax + r9]
add rax, r9
movzx ecx, byte [rax]
inc rax
test cl, cl
je 0x1800635bf
nop dword [rax]
movsx ecx, cl
lea rax, [rax + 1]
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [rax - 1]
test cl, cl
jne 0x1800635a0
cmp edx, 0x95466b05
je 0x180063628
test r8d, r8d
jne 0x180063580
mov rax, qword [r11]
mov r11, rax
cmp rax, rsi
je 0x1800635da
cmp qword [rax + 0x30], 0
jne 0x180063550
xor eax, eax
mov rdi, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov qword [0x180298320], rax
mov ecx, 2
call rax
bt ax, 0xf
mov rax, qword [0x180297d60]
jae 0x180063641
cmp byte [rax + 0x160], 0
jne 0x180063641
mov rcx, rbp
call fcn.180062fd0
mov rdx, rax
mov rcx, rbp
add rsp, 0x20
pop rbp
jmp 0x180062c10
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x1800635dc
cmp byte [rax + 1], 0
je 0x180063654
mov rcx, rbp
add rsp, 0x20
pop rbp
jmp fcn.180062fd0
add rsp, 0x20
pop rbp
ret