Function at 0x1800779b4
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 0x180078093
mov eax, r9d
cdq
sub eax, edx
sar eax, 1
mov ebp, eax
test eax, eax
jle 0x180078093
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 0x180077ab9
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077ab9
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xe56ad093
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077ab4
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 0x180077a85
cmp edi, 0x8b0d3f64
je 0x180077abe
test r11d, r11d
jne 0x180077a67
mov rax, qword [rax]
jmp 0x180077a42
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 0x180077b71
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077b71
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x2db6be91
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077b6c
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 0x180077b3d
cmp edi, 0x3dadfe62
je 0x180077b76
test r11d, r11d
jne 0x180077b1f
mov rax, qword [rax]
jmp 0x180077afa
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 0x180077c29
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077c29
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x54e284bb
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077c24
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 0x180077bf5
cmp edi, 0x7f06637c
je 0x180077c2e
test r11d, r11d
jne 0x180077bd7
mov rax, qword [rax]
jmp 0x180077bb2
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 0x180077ce6
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077ce6
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xd74b2023
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077ce1
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 0x180077cb2
cmp edi, 0x2e2eb414
je 0x180077ceb
test r11d, r11d
jne 0x180077c94
mov rax, qword [rax]
jmp 0x180077c6f
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 0x180077da0
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077da0
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x64863bc7
lea rcx, [r14 + r11*4]
mov r8d, dword [rcx + r9]
add r8, r9
mov r10b, byte [r8]
inc r8
test r10b, r10b
je 0x180077d9b
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 0x180077d6c
cmp edi, 0xac2bfe18
je 0x180077da5
test r11d, r11d
jne 0x180077d4e
mov rax, qword [rax]
jmp 0x180077d29
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.18004a228
movaps xmm6, xmm0
movaps xmm0, xmm11
mulss xmm6, xmm9
call fcn.180049f34
movaps xmm9, xmm0
movaps xmm0, xmm10
mulss xmm9, xmm6
call fcn.18004a228
movaps xmm6, xmm0
movaps xmm0, xmm11
mulss xmm6, xmm7
call fcn.18004a228
movaps xmm7, xmm0
movaps xmm0, xmm10
mulss xmm7, xmm6
call fcn.180049f34
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.1800a08b8
mov rcx, qword [0x1800bc198]
cmp rcx, qword [0x1800bc1a0]
je 0x180077e68
mov rdx, rax
call fcn.1800a0868
add qword [0x1800bc198], 0xc
jmp 0x180077e7a
mov rdx, rcx
mov r8, rax
lea rcx, [0x1800bc190]
call fcn.180054d80
sub r15, 1
jne 0x180077a31
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 0x180077f0c
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077f0c
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xb6300935
lea rcx, [r8 + r11*4]
mov r9d, dword [rcx + r14]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077f07
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 0x180077ed8
cmp edi, 0x7825e1a6
je 0x180077f11
test r11d, r11d
jne 0x180077eba
mov rax, qword [rax]
jmp 0x180077e95
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 0x180077fc1
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077fc1
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x25c757c3
lea rcx, [r14 + r11*4]
mov r8d, dword [rcx + r9]
add r8, r9
mov r10b, byte [r8]
inc r8
test r10b, r10b
je 0x180077fbc
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 0x180077f8d
cmp edi, 0x44c2b4
je 0x180077fc6
test r11d, r11d
jne 0x180077f6f
mov rax, qword [rax]
jmp 0x180077f4a
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.18004a228
movaps xmm6, xmm0
movaps xmm0, xmm7
mulss xmm6, xmm14
call fcn.180049f34
movaps xmm8, xmm0
movaps xmm0, xmm9
mulss xmm8, xmm6
call fcn.18004a228
movaps xmm6, xmm0
movaps xmm0, xmm7
mulss xmm6, xmm15
call fcn.18004a228
movaps xmm7, xmm0
movaps xmm0, xmm9
mulss xmm7, xmm6
call fcn.180049f34
mulss xmm0, xmm10
lea rcx, [rsp + 0x2c]
movaps xmm2, xmm7
movaps xmm1, xmm8
movaps xmm3, xmm0
call fcn.1800a08b8
mov rcx, qword [0x1800bc198]
cmp rcx, qword [0x1800bc1a0]
je 0x180078077
mov rdx, rax
call fcn.1800a0868
add qword [0x1800bc198], 0xc
jmp 0x180078089
mov rdx, rcx
mov r8, rax
lea rcx, [0x1800bc190]
call fcn.180054d80
sub rbp, 1
jne 0x180077e84
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