Function at 0x180077780
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 [0x1800bb198]
cmp qword [0x1800bb190], rax
movaps xmmword [rsp + 0x60], xmm11
movaps xmmword [rsp + 0x50], xmm14
movaps xmm14, xmm0
movaps xmmword [rsp + 0x40], xmm15
movaps xmm15, xmm1
jne 0x180077e5f
mov eax, r9d
cdq
sub eax, edx
sar eax, 1
mov ebp, eax
test eax, eax
jle 0x180077e5f
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 0x180077885
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077885
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x892f107c
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077880
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 0x180077851
cmp edi, 0x581a040b
je 0x18007788a
test r11d, r11d
jne 0x180077833
mov rax, qword [rax]
jmp 0x18007780e
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 [0x1800b482c]
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 0x18007793d
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x18007793d
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x1dab4ff2
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077938
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 0x180077909
cmp edi, 0x78c22eb9
je 0x180077942
test r11d, r11d
jne 0x1800778eb
mov rax, qword [rax]
jmp 0x1800778c6
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 [0x1800b4828]
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 0x1800779f5
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x1800779f5
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x84672954
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x1800779f0
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 0x1800779c1
cmp edi, 0x123d8013
je 0x1800779fa
test r11d, r11d
jne 0x1800779a3
mov rax, qword [rax]
jmp 0x18007797e
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 [0x1800b52bc]
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 0x180077ab2
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077ab2
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xe1fe5b8c
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + r8]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077aad
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 0x180077a7e
cmp edi, 0x5b7542fb
je 0x180077ab7
test r11d, r11d
jne 0x180077a60
mov rax, qword [rax]
jmp 0x180077a3b
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 [0x1800b52bc]
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 0x180077b6c
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077b6c
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x9bfb4b20
lea rcx, [r14 + r11*4]
mov r8d, dword [rcx + r9]
add r8, r9
mov r10b, byte [r8]
inc r8
test r10b, r10b
je 0x180077b67
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 0x180077b38
cmp edi, 0x627a1e5f
je 0x180077b71
test r11d, r11d
jne 0x180077b1a
mov rax, qword [rax]
jmp 0x180077af5
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.18004a28c
movaps xmm6, xmm0
movaps xmm0, xmm11
mulss xmm6, xmm9
call fcn.180049f98
movaps xmm9, xmm0
movaps xmm0, xmm10
mulss xmm9, xmm6
call fcn.18004a28c
movaps xmm6, xmm0
movaps xmm0, xmm11
mulss xmm6, xmm7
call fcn.18004a28c
movaps xmm7, xmm0
movaps xmm0, xmm10
mulss xmm7, xmm6
call fcn.180049f98
movss xmm10, dword [rsp + 0x100]
lea rcx, [rsp + 0x20]
movaps xmm3, xmm0
movaps xmm2, xmm7
movaps xmm0, xmm10
mulss xmm3, xmm8
mulss xmm0, dword [0x1800b52bc]
movaps xmm1, xmm9
mulss xmm3, xmm0
call fcn.1800a05d4
mov rcx, qword [0x1800bb198]
cmp rcx, qword [0x1800bb1a0]
je 0x180077c34
mov rdx, rax
call fcn.1800a0584
add qword [0x1800bb198], 0xc
jmp 0x180077c46
mov rdx, rcx
mov r8, rax
lea rcx, [0x1800bb190]
call fcn.180054b48
sub r15, 1
jne 0x1800777fd
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 0x180077cd8
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077cd8
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0x257f3e9a
lea rcx, [r8 + r11*4]
mov r9d, dword [rcx + r14]
add r9, r8
mov r10b, byte [r9]
inc r9
test r10b, r10b
je 0x180077cd3
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 0x180077ca4
cmp edi, 0xb26a9711
je 0x180077cdd
test r11d, r11d
jne 0x180077c86
mov rax, qword [rax]
jmp 0x180077c61
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 [0x1800b482c]
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 0x180077d8d
mov r11d, dword [rbx + 0x18]
test r11d, r11d
je 0x180077d8d
mov r14d, dword [rbx + 0x20]
add r11d, r13d
mov edi, 0xa8aaa8a8
lea rcx, [r14 + r11*4]
mov r8d, dword [rcx + r9]
add r8, r9
mov r10b, byte [r8]
inc r8
test r10b, r10b
je 0x180077d88
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 0x180077d59
cmp edi, 0x1bafb7d7
je 0x180077d92
test r11d, r11d
jne 0x180077d3b
mov rax, qword [rax]
jmp 0x180077d16
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 [0x1800b4828]
movaps xmm0, xmm9
call fcn.18004a28c
movaps xmm6, xmm0
movaps xmm0, xmm7
mulss xmm6, xmm14
call fcn.180049f98
movaps xmm8, xmm0
movaps xmm0, xmm9
mulss xmm8, xmm6
call fcn.18004a28c
movaps xmm6, xmm0
movaps xmm0, xmm7
mulss xmm6, xmm15
call fcn.18004a28c
movaps xmm7, xmm0
movaps xmm0, xmm9
mulss xmm7, xmm6
call fcn.180049f98
mulss xmm0, xmm10
lea rcx, [rsp + 0x2c]
movaps xmm2, xmm7
movaps xmm1, xmm8
movaps xmm3, xmm0
call fcn.1800a05d4
mov rcx, qword [0x1800bb198]
cmp rcx, qword [0x1800bb1a0]
je 0x180077e43
mov rdx, rax
call fcn.1800a0584
add qword [0x1800bb198], 0xc
jmp 0x180077e55
mov rdx, rcx
mov r8, rax
lea rcx, [0x1800bb190]
call fcn.180054b48
sub rbp, 1
jne 0x180077c50
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