Function at 0x14002adf0
Capabilities:
Hash data using fnv
Hide graphical window

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x100
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1400cd038]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov r14, rcx
mov rdi, qword [rcx + 0x30]
mov rdx, rdi
shr rdx, 0x38
mov r8, rdi
shr r8, 0x30
mov r9, rdi
shr r9, 0x28
mov r10, rdi
shr r10, 0x20
mov r11, rdi
shr r11, 0x18
mov rbx, rdi
shr rbx, 0x10
mov rax, rdi
shr rax, 8
cmp rdi, qword [rcx + 0x178]
je 0x14002aec2
xor r15d, r15d
mov dword [rcx + 0x170], r15d
mov qword [rcx + 0x178], rdi
mov rbx, qword [rcx + 0x58]
mov rcx, qword [rbx + 8]
cmp byte [rcx + 0x19], r15b
je 0x14002b403
mov byte [rcx + 0x19], r15b
xor edx, edx
mov rcx, qword [rcx]
call qword [sym.imp.USER32.dll_ShowWindow]
call fcn.14003a5e0
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 1
lea r9d, [r15 + 2]
lea r8d, [r15 + 0x2f]
mov rdx, rbx
mov rcx, rax
call fcn.14003b230
jmp 0x14002b403
test rdi, rdi
je 0x14002b403
movzx ecx, dil
movabs rsi, 0xcbf29ce484222325
xor rcx, rsi
movabs rsi, 0x100000001b3
imul rcx, rsi
movzx eax, al
xor rcx, rax
imul rcx, rsi
movzx eax, bl
xor rcx, rax
imul rcx, rsi
movzx eax, r11b
xor rcx, rax
imul rcx, rsi
movzx eax, r10b
xor rcx, rax
imul rcx, rsi
movzx eax, r9b
xor rcx, rax
imul rcx, rsi
movzx eax, r8b
xor rcx, rax
imul rcx, rsi
xor rcx, rdx
imul rcx, rsi
mov rax, qword [r14 + 0x90]
and rax, rcx
add rax, rax
mov rdx, qword [r14 + 0x78]
mov rbx, qword [rdx + rax*8 + 8]
mov rcx, qword [r14 + 0x68]
cmp rbx, rcx
je 0x14002b403
mov rax, qword [rdx + rax*8]
cmp rdi, qword [rbx + 0x10]
je 0x14002af73
nop
cmp rbx, rax
je 0x14002b403
mov rbx, qword [rbx + 8]
cmp rdi, qword [rbx + 0x10]
jne 0x14002af60
test rbx, rbx
cmove rbx, rcx
cmp rbx, rcx
je 0x14002b403
lea rcx, [rbp - 0x59]
call fcn.140025160
xor r15d, r15d
mov qword [rbp - 0x49], r15
mov qword [rbp - 0x39], r15
mov qword [rbp - 0x31], 0xf
mov byte [rbp - 0x49], r15b
mov qword [rbp - 0x29], r15
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x11], 0xf
mov byte [rbp - 0x29], r15b
lea rcx, [rbp - 0x69]
call fcn.140025160
mov rsi, qword [rbx + 0x18]
mov r12, qword [rbx + 0x20]
cmp rsi, r12
je 0x14002b324
lea rbx, [rsi + 0x28]
nop word [rax + rax]
movups xmm1, xmmword [rsi]
movaps xmmword [rbp - 0x59], xmm1
lea rdx, [rbx - 0x18]
lea rax, [rbp - 0x49]
cmp rax, rdx
je 0x14002b00e
cmp qword [rbx], 0x10
jb 0x14002affd
mov rdx, qword [rdx]
mov r8, qword [rbx - 8]
lea rcx, [rbp - 0x49]
call fcn.14001b720
movaps xmm1, xmmword [rbp - 0x59]
lea rdx, [rbx + 8]
lea rax, [rbp - 0x29]
cmp rax, rdx
je 0x14002b036
cmp qword [rbx + 0x20], 0x10
jb 0x14002b025
mov rdx, qword [rdx]
mov r8, qword [rbx + 0x18]
lea rcx, [rbp - 0x29]
call fcn.14001b720
movaps xmm1, xmmword [rbp - 0x59]
movd eax, xmm1
test eax, eax
jne 0x14002b092
movdqa xmm0, xmm1
psrldq xmm0, 4
movd eax, xmm0
test eax, eax
jne 0x14002b092
movdqa xmm0, xmm1
psrldq xmm0, 8
movd eax, xmm0
test eax, eax
jne 0x14002b092
movdqa xmm0, xmm1
psrldq xmm0, 0xc
movd eax, xmm0
test eax, eax
jne 0x14002b092
mov eax, dword [rdi + 0x13c]
mov dword [rsp + 0x20], eax
mov r9d, dword [rdi + 0x138]
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x79]
call fcn.140008330
jmp 0x14002b09b
movdqa xmmword [rbp - 0x69], xmm1
lea rax, [rbp - 0x69]
movups xmm6, xmmword [rax]
mov rdx, qword [r14 + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140042070
mov r8d, dword [rax]
movd edx, xmm6
cmp r8d, edx
jl 0x14002b0fc
movdqa xmm0, xmm6
psrldq xmm0, 8
movd r10d, xmm0
lea ecx, [r10 + rdx]
cmp r8d, ecx
jg 0x14002b0fc
mov r8d, dword [rax + 4]
movdqa xmm0, xmm6
psrldq xmm0, 4
movd ecx, xmm0
cmp r8d, ecx
jl 0x14002b0fc
movdqa xmm0, xmm6
psrldq xmm0, 0xc
movd r9d, xmm0
lea eax, [r9 + rcx]
cmp r8d, eax
jle 0x14002b112
add rsi, 0x50
add rbx, 0x50
cmp rsi, r12
je 0x14002b328
jmp 0x14002afe0
cmp dword [r14 + 0x180], edx
jne 0x14002b328
cmp dword [r14 + 0x184], ecx
jne 0x14002b328
cmp dword [r14 + 0x188], r10d
jne 0x14002b328
cmp dword [r14 + 0x18c], r9d
jne 0x14002b328
movss xmm0, dword [r14 + 0x170]
movss xmm1, dword [0x1400bf3fc]
comiss xmm0, dword [0x1400bf38c]
jbe 0x14002b302
comiss xmm0, xmm1
jae 0x14002b307
mov rax, qword [r14 + 0x58]
mov rcx, qword [rax + 8]
cmp byte [rcx + 0x19], 0
jne 0x14002b381
cmp byte [r14 + 0x1cc], 0
jne 0x14002b381
xor edx, edx
lea rcx, [rbp - 0x79]
call fcn.140042070
xor r9d, r9d
mov r8, rax
lea rdx, [rsp + 0x40]
mov rcx, qword [r14 + 8]
call fcn.140046fb0
mov r9, qword [r14 + 0x30]
lea rax, [rbp - 0x29]
cmp qword [rbp - 0x11], 0x10
cmovae rax, qword [rbp - 0x29]
mov qword [rbp - 0x79], rax
mov rax, qword [rbp - 0x19]
mov qword [rbp - 0x71], rax
lea rax, [rbp - 0x49]
cmp qword [rbp - 0x31], 0x10
cmovae rax, qword [rbp - 0x49]
mov qword [rbp - 0x69], rax
mov rax, qword [rbp - 0x39]
mov qword [rbp - 0x61], rax
mov eax, dword [rsp + 0x44]
add eax, 0x14
mov edx, dword [rsp + 0x40]
add edx, 5
shl rax, 0x20
or rdx, rax
mov qword [rsp + 0x20], r9
lea r9, [rbp - 0x79]
lea r8, [rbp - 0x69]
mov rcx, qword [r14 + 0x58]
call fcn.14004a540
mov rax, qword [r14 + 0x58]
mov rsi, qword [rax + 8]
lea rdx, [rbp - 0x79]
mov rcx, qword [rsi]
call qword [sym.imp.USER32.dll_GetWindowRect]
mov edi, dword [rbp - 0x6d]
sub edi, dword [rbp - 0x75]
mov ebx, dword [rbp - 0x71]
sub ebx, dword [rbp - 0x79]
mov edx, 2
lea rcx, [rbp - 0x79]
call qword [sym.imp.USER32.dll_MonitorFromRect]
mov dword [rbp - 9], 0x28
lea rdx, [rbp - 9]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetMonitorInfoW]
movups xmm1, xmmword [rbp + 0xb]
movups xmmword [rbp - 0x69], xmm1
movdqa xmm0, xmm1
psrldq xmm0, 8
movd eax, xmm0
sub eax, ebx
mov dword [rsp + 0x40], eax
lea rcx, [rbp - 0x79]
lea rdx, [rsp + 0x40]
cmp dword [rbp - 0x79], eax
cmovl rdx, rcx
lea rcx, [rbp - 0x69]
movd eax, xmm1
cmp eax, dword [rdx]
cmovl rcx, rdx
mov r8d, dword [rcx]
mov dword [rbp - 0x79], r8d
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
shr rax, 0x20
sub eax, edi
mov dword [rsp + 0x40], eax
lea rcx, [rbp - 0x75]
lea rdx, [rsp + 0x40]
cmp dword [rbp - 0x75], eax
cmovge rcx, rdx
movq rax, xmm1
shr rax, 0x20
lea rdx, [rbp - 0x65]
cmp eax, dword [rcx]
cmovl rdx, rcx
mov r9d, dword [rdx]
mov dword [rbp - 0x75], r9d
lea eax, [r8 + rbx]
mov dword [rbp - 0x71], eax
lea eax, [r9 + rdi]
mov dword [rbp - 0x6d], eax
mov dword [rsp + 0x30], 0x15
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
xor edx, edx
mov rcx, qword [rsi]
call qword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x14002b381
comiss xmm0, xmm1
jb 0x14002b381
cmp dword [r14 + 0x184], ecx
jne 0x14002b337
cmp dword [r14 + 0x188], r10d
jne 0x14002b337
cmp dword [r14 + 0x18c], r9d
je 0x14002b381
jmp 0x14002b337
movaps xmm6, xmmword [rbp - 0x69]
mov dword [r14 + 0x170], r15d
movups xmmword [r14 + 0x180], xmm6
mov rbx, qword [r14 + 0x58]
mov rcx, qword [rbx + 8]
cmp byte [rcx + 0x19], 0
je 0x14002b381
mov byte [rcx + 0x19], 0
xor edx, edx
mov rcx, qword [rcx]
call qword [sym.imp.USER32.dll_ShowWindow]
call fcn.14003a5e0
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 1
mov r9d, 2
lea r8d, [r9 + 0x2d]
mov rdx, rbx
mov rcx, rax
call fcn.14003b230
nop
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x14002b3bc
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002b3b7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b44a
call fcn.14004f3ac
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x11], 0xf
mov byte [rbp - 0x29], 0
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x14002b403
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002b3fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002b44a
call fcn.14004f3ac
movss xmm0, dword [r14 + 0x170]
addss xmm0, dword [0x1400bf224]
movss dword [r14 + 0x170], xmm0
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14004f100
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.140055d18
int3