Function at 0x1800778d0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
movss dword [rax + 0x18], xmm2
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0xc0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
mov rax, qword [0x1800bc198]
cmp qword [0x1800bc190], rax
movaps xmmword [rsp + 0x60], xmm11
movaps xmmword [rsp + 0x50], xmm14
movaps xmm14, xmm0
movaps xmmword [rsp + 0x40], xmm15
movaps xmm15, xmm1
jne 0x180077faf
mov eax, r9d
cdq
sub eax, edx
sar eax, 1
mov ebp, eax
test eax, eax
jle 0x180077faf
mov r15d, ebp
or r13d, 0xffffffff
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov ebx, dword [rcx + r8 + 0x88]
add rbx, r8
cmp rbx, r8
je 0x1800779d5
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x1800779d5
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x3d427a6a
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x1800779d0
movsx ecx, r10b
sub r10b, 0x41
mov edx, ecx
or edx, 0x20
cmp r10b, 0x19
mov r10b, byte [r9]
cmova edx, ecx
inc r9
xor edx, edi
imul edi, edx, 0x1000193
test r10b, r10b
jne 0x1800779a1
cmp edi, 0x4484b901
je 0x1800779da
test r11d, r11d
jne 0x180077983
mov rax, qword [rax]
jmp 0x18007795e
mov ecx, dword [rbx + 0x24]
add rcx, r8
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
movd xmm11, eax
mov rax, qword gs:[0x60]
cvtdq2ps xmm11, xmm11
mov rax, qword [rax + 0x18]
mulss xmm11, dword [0x1800b57ec]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov ebx, dword [rcx + r8 + 0x88]
add rbx, r8
cmp rbx, r8
je 0x180077a8d
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077a8d
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x7408404c
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077a88
movsx ecx, r10b
sub r10b, 0x41
mov edx, ecx
or edx, 0x20
cmp r10b, 0x19
mov r10b, byte [r9]
cmova edx, ecx
inc r9
xor edx, edi
imul edi, edx, 0x1000193
test r10b, r10b
jne 0x180077a59
cmp edi, 0xacdf3bbb
je 0x180077a92
test r11d, r11d
jne 0x180077a3b
mov rax, qword [rax]
jmp 0x180077a16
mov ecx, dword [rbx + 0x24]
add rcx, r8
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
movd xmm10, eax
mov rax, qword gs:[0x60]
cvtdq2ps xmm10, xmm10
mov rax, qword [rax + 0x18]
mulss xmm10, dword [0x1800b57e8]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov ebx, dword [rcx + r8 + 0x88]
add rbx, r8
cmp rbx, r8
je 0x180077b45
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077b45
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xc62d324e
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077b40
movsx ecx, r10b
sub r10b, 0x41
mov edx, ecx
or edx, 0x20
cmp r10b, 0x19
mov r10b, byte [r9]
cmova edx, ecx
inc r9
xor edx, edi
imul edi, edx, 0x1000193
test r10b, r10b
jne 0x180077b11
cmp edi, 0xa3dbff75
je 0x180077b4a
test r11d, r11d
jne 0x180077af3
mov rax, qword [rax]
jmp 0x180077ace
mov ecx, dword [rbx + 0x24]
add rcx, r8
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
movd xmm9, eax
mov rax, qword gs:[0x60]
cvtdq2ps xmm9, xmm9
mov rax, qword [rax + 0x18]
mulss xmm9, dword [0x1800b627c]
mov rax, qword [rax + 0x10]
mulss xmm9, xmm14
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov ebx, dword [rcx + r8 + 0x88]
add rbx, r8
cmp rbx, r8
je 0x180077c02
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077c02
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xb3891d0e
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077bfd
movsx ecx, r10b
sub r10b, 0x41
mov edx, ecx
or edx, 0x20
cmp r10b, 0x19
mov r10b, byte [r9]
cmova edx, ecx
inc r9
xor edx, edi
imul edi, edx, 0x1000193
test r10b, r10b
jne 0x180077bce
cmp edi, 0x66f70635
je 0x180077c07
test r11d, r11d
jne 0x180077bb0
mov rax, qword [rax]
jmp 0x180077b8b
mov ecx, dword [rbx + 0x24]
add rcx, r8
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
movd xmm7, eax
mov rax, qword gs:[0x60]
cvtdq2ps xmm7, xmm7
mov rax, qword [rax + 0x18]
mulss xmm7, dword [0x1800b627c]
mov rax, qword [rax + 0x10]
mulss xmm7, xmm15
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov ebx, dword [rcx + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x180077cbc
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077cbc
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xd0cc142
lea rcx, [r14 + r11*4]
mov r8d, dword [rcx + r9]
add r8, r9
mov r10b, byte [r8]
inc r8
test r10b, r10b
je 0x180077cb7
movsx ecx, r10b
sub r10b, 0x41
mov edx, ecx
or edx, 0x20
cmp r10b, 0x19
mov r10b, byte [r8]
cmova edx, ecx
inc r8
xor edx, edi
imul edi, edx, 0x1000193
test r10b, r10b
jne 0x180077c88
cmp edi, 0xe237d6e9
je 0x180077cc1
test r11d, r11d
jne 0x180077c6a
mov rax, qword [rax]
jmp 0x180077c45
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
call rax
movaps xmm0, xmm10
movd xmm8, eax
cvtdq2ps xmm8, xmm8
call fcn.18004a218
movaps xmm6, xmm0
movaps xmm0, xmm11
mulss xmm6, xmm9
call fcn.180049f24
movaps xmm9, xmm0
movaps xmm0, xmm10
mulss xmm9, xmm6
call fcn.18004a218
movaps xmm6, xmm0
movaps xmm0, xmm11
mulss xmm6, xmm7
call fcn.18004a218
movaps xmm7, xmm0
movaps xmm0, xmm10
mulss xmm7, xmm6
call fcn.180049f24
movss xmm10, dword [rsp + 0x100]
lea rcx, [rsp + 0x20]
movaps xmm3, xmm0
movaps xmm2, xmm7
movaps xmm0, xmm10
mulss xmm3, xmm8
mulss xmm0, dword [0x1800b627c]
movaps xmm1, xmm9
mulss xmm3, xmm0
call fcn.1800a0964
mov rcx, qword [0x1800bc198]
cmp rcx, qword [0x1800bc1a0]
je 0x180077d84
mov rdx, rax
call fcn.1800a0914
add qword [0x1800bc198], 0xc
jmp 0x180077d96
mov rdx, rcx
mov r8, rax
lea rcx, [0x1800bc190]
call fcn.180054d78
sub r15, 1
jne 0x18007794d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov ebx, dword [rcx + r8 + 0x88]
add rbx, r8
cmp rbx, r8
je 0x180077e28
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077e28
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x3b622a54
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077e23
movsx ecx, r10b
sub r10b, 0x41
mov edx, ecx
or edx, 0x20
cmp r10b, 0x19
mov r10b, byte [r9]
cmova edx, ecx
inc r9
xor edx, edi
imul edi, edx, 0x1000193
test r10b, r10b
jne 0x180077df4
cmp edi, 0x2a279113
je 0x180077e2d
test r11d, r11d
jne 0x180077dd6
mov rax, qword [rax]
jmp 0x180077db1
mov ecx, dword [rbx + 0x24]
add rcx, r8
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
call rax
movd xmm7, eax
mov rax, qword gs:[0x60]
cvtdq2ps xmm7, xmm7
mov rax, qword [rax + 0x18]
mulss xmm7, dword [0x1800b57ec]
mov rax, qword [rax + 0x10]
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov ebx, dword [rcx + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x180077edd
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077edd
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xc3de56e6
lea rcx, [r14 + r11*4]
mov r8d, dword [rcx + r9]
add r8, r9
mov r10b, byte [r8]
inc r8
test r10b, r10b
je 0x180077ed8
movsx ecx, r10b
sub r10b, 0x41
mov edx, ecx
or edx, 0x20
cmp r10b, 0x19
mov r10b, byte [r8]
cmova edx, ecx
inc r8
xor edx, edi
imul edi, edx, 0x1000193
test r10b, r10b
jne 0x180077ea9
cmp edi, 0x3339541d
je 0x180077ee2
test r11d, r11d
jne 0x180077e8b
mov rax, qword [rax]
jmp 0x180077e66
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r11*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
call rax
movd xmm9, eax
cvtdq2ps xmm9, xmm9
mulss xmm9, dword [0x1800b57e8]
movaps xmm0, xmm9
call fcn.18004a218
movaps xmm6, xmm0
movaps xmm0, xmm7
mulss xmm6, xmm14
call fcn.180049f24
movaps xmm8, xmm0
movaps xmm0, xmm9
mulss xmm8, xmm6
call fcn.18004a218
movaps xmm6, xmm0
movaps xmm0, xmm7
mulss xmm6, xmm15
call fcn.18004a218
movaps xmm7, xmm0
movaps xmm0, xmm9
mulss xmm7, xmm6
call fcn.180049f24
mulss xmm0, xmm10
lea rcx, [rsp + 0x2c]
movaps xmm2, xmm7
movaps xmm1, xmm8
movaps xmm3, xmm0
call fcn.1800a0964
mov rcx, qword [0x1800bc198]
cmp rcx, qword [0x1800bc1a0]
je 0x180077f93
mov rdx, rax
call fcn.1800a0914
add qword [0x1800bc198], 0xc
jmp 0x180077fa5
mov rdx, rcx
mov r8, rax
lea rcx, [0x1800bc190]
call fcn.180054d78
sub rbp, 1
jne 0x180077da0
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm14, xmmword [r11 - 0x70]
movaps xmm15, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret