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

Disassembly:
mov r11, rsp
sub rsp, 0xe8
mov rax, qword [0x18022ff38]
mov rcx, qword [rax]
test rcx, rcx
je 0x180045f94
mov qword [r11 + 0x18], rbp
mov rbp, qword [rcx + 8]
test rbp, rbp
je 0x180045f8c
mov qword [r11 - 0x10], r14
mov r14, qword [rbp + 0x30]
test r14, r14
je 0x180045f84
mov rax, qword [0x18022ff08]
mov rcx, qword [rax]
test rcx, rcx
je 0x180045f84
cmp qword [rcx + 0x10], 0
je 0x180045f84
cmp byte [0x18022fd6c], 0
movsd xmm0, qword [rbp + 0x90]
mov eax, dword [rbp + 0x98]
movsd qword [rsp + 0x30], xmm0
mov dword [rsp + 0x38], eax
je 0x18004572e
cmp byte [0x18022fef9], 0
mov eax, dword [0x18022ff28]
movd xmm0, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm0, xmm0
mov rcx, qword [rax + rbp]
je 0x180045726
movss dword [rcx + 0xd40], xmm0
jmp 0x18004572e
movss dword [rcx + 0xcf0], xmm0
mov eax, dword [0x18022ff2c]
cmp byte [rax + rbp], 0x40
je 0x180045f84
movss xmm0, dword [0x180116668]
comiss xmm0, dword [rbp + 0x280]
ja 0x180045f84
mov rax, qword [0x18022fdf0]
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0xe0], rdi
test rax, rax
jne 0x180045837
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180045818
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180045818
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [rdi + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x180045813
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x1800457f0
cmp edx, 0x95466b05
je 0x18004589d
test r8d, r8d
jne 0x1800457d0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x18004582e
cmp qword [rax + 0x30], 0
jne 0x1800457a0
xor eax, eax
mov qword [0x18022fdf0], rax
mov ecx, 0xa0
call rax
cmp byte [0x18022fd61], 0
mov byte [0x18022fd6f], 1
je 0x180045f10
mov rcx, qword [0x18022ff10]
mov qword [rsp + 0xd0], r15
movaps xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0xa0], xmm8
movaps xmmword [rsp + 0x80], xmm10
movaps xmmword [rsp + 0x70], xmm11
movaps xmmword [rsp + 0x60], xmm12
movaps xmmword [rsp + 0x50], xmm13
movaps xmmword [rsp + 0x40], xmm14
test rcx, rcx
je 0x1800458bb
mov rcx, qword [rcx]
jmp 0x1800458c3
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x180045830
mov rcx, qword [rsp + 0xf0]
mov rax, qword [rbp + 0x30]
xorps xmm0, xmm0
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0x90], xmm9
mov dword [rax + 0x30], 0x3f800000
movsd xmm7, qword [rcx + 0x3d0]
ucomiss xmm7, xmm0
mov eax, dword [rcx + 0x3d8]
mov dword [rsp + 0x28], eax
movsd qword [rsp + 0x20], xmm7
movss xmm6, dword [rsp + 0x24]
jp 0x18004593f
jne 0x18004593f
ucomiss xmm6, xmm0
jp 0x18004593f
jne 0x18004593f
movss xmm9, dword [rsp + 0x28]
ucomiss xmm9, xmm0
jp 0x180045946
jne 0x180045946
movsd xmm1, qword [rcx + 0x40]
mov eax, dword [rcx + 0x48]
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movsd qword [rsp + 0x20], xmm1
movaps xmm6, xmm0
movss xmm7, dword [rsp + 0x20]
mov dword [rsp + 0x28], eax
movss xmm9, dword [rsp + 0x28]
mov rax, qword [0x18022fdf0]
movss xmm12, dword [rsp + 0x30]
movss xmm13, dword [rsp + 0x34]
movaps xmm10, xmm12
movss xmm14, dword [rsp + 0x38]
movaps xmm11, xmm13
movaps xmm8, xmm14
test rax, rax
jne 0x180045a27
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180045a08
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180045a08
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [rbx + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x180045a03
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x1800459e0
cmp edx, 0x95466b05
je 0x180045e7a
test r8d, r8d
jne 0x1800459c0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x180045a1e
cmp qword [rax + 0x30], 0
jne 0x180045990
xor eax, eax
mov qword [0x18022fdf0], rax
mov ecx, 0x57
call rax
bt ax, 0xf
jae 0x180045a50
movaps xmm10, xmm12
movaps xmm11, xmm13
movaps xmm8, xmm14
addss xmm10, xmm7
addss xmm11, xmm6
addss xmm8, xmm9
mov rax, qword [0x18022fdf0]
test rax, rax
jne 0x180045b17
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop word [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180045af8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180045af8
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [rbx + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x180045af3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x180045ad0
cmp edx, 0x95466b05
je 0x180045e98
test r8d, r8d
jne 0x180045ab0
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x180045b0e
cmp qword [rax + 0x30], 0
jne 0x180045a80
xor eax, eax
mov qword [0x18022fdf0], rax
mov ecx, 0x53
call rax
bt ax, 0xf
jae 0x180045b34
subss xmm10, xmm7
subss xmm11, xmm6
subss xmm8, xmm9
mov rax, qword [0x18022fdf0]
test rax, rax
jne 0x180045bf7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180045bd8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180045bd8
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [rbx + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x180045bd3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x180045bb0
cmp edx, 0x95466b05
je 0x180045eb6
test r8d, r8d
jne 0x180045b90
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x180045bee
cmp qword [rax + 0x30], 0
jne 0x180045b60
xor eax, eax
mov qword [0x18022fdf0], rax
mov ecx, 0x41
call rax
bt ax, 0xf
jae 0x180045c14
subss xmm10, xmm6
addss xmm11, xmm7
addss xmm8, xmm9
mov rax, qword [0x18022fdf0]
test rax, rax
jne 0x180045cd7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rdi, rsi
nop dword [rax + rax]
mov r9, qword [rdi + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180045cb8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180045cb8
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [rbx + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x180045cb3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x180045c90
cmp edx, 0x95466b05
je 0x180045ed4
test r8d, r8d
jne 0x180045c70
mov rax, qword [rdi]
mov rdi, rax
cmp rax, rsi
je 0x180045cce
cmp qword [rax + 0x30], 0
jne 0x180045c40
xor eax, eax
mov qword [0x18022fdf0], rax
mov ecx, 0x44
call rax
bt ax, 0xf
jae 0x180045cf4
addss xmm10, xmm6
subss xmm11, xmm7
subss xmm8, xmm9
mov rax, qword [0x18022fdf0]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm6, xmmword [rsp + 0xc0]
test rax, rax
jne 0x180045dc7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
nop dword [rax + rax]
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180045da8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180045da8
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [rdi + r8*4]
mov ecx, dword [rax + r9]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x180045da3
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, edx
imul edx, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x180045d80
cmp edx, 0x95466b05
je 0x180045ef2
test r8d, r8d
jne 0x180045d60
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x180045dbe
cmp qword [rax + 0x30], 0
jne 0x180045d30
xor eax, eax
mov qword [0x18022fdf0], rax
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call rax
bt ax, 0xf
mov r15, qword [rsp + 0xd0]
jae 0x180045de2
addss xmm8, xmm9
movss xmm0, dword [0x1801164a8]
subss xmm10, xmm12
movaps xmm9, xmmword [rsp + 0x90]
subss xmm11, xmm13
subss xmm8, xmm14
mulss xmm10, xmm0
mulss xmm11, xmm0
addss xmm10, xmm12
mulss xmm8, xmm0
movaps xmm12, xmmword [rsp + 0x60]
addss xmm11, xmm13
movaps xmm13, xmmword [rsp + 0x50]
addss xmm8, xmm14
movaps xmm14, xmmword [rsp + 0x40]
movaps xmm1, xmm10
movaps xmm10, xmmword [rsp + 0x80]
unpcklps xmm1, xmm11
movaps xmm11, xmmword [rsp + 0x70]
movsd qword [rbp + 0x90], xmm1
movss dword [rsp + 0x38], xmm8
mov eax, dword [rsp + 0x38]
movaps xmm8, xmmword [rsp + 0xa0]
mov dword [rbp + 0x98], eax
movsd qword [r14 + 0x50], xmm1
mov dword [r14 + 0x58], eax
jmp 0x180045f6c
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x180045a20
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x180045b10
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x180045bf0
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x180045cd0
mov ecx, dword [r11 + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x180045dc0
xorps xmm1, xmm1
mov dword [rsp + 0x38], 0
mov eax, dword [rsp + 0x38]
xorps xmm0, xmm0
unpcklps xmm0, xmm1
movsd qword [rbp + 0x320], xmm0
mov dword [rbp + 0x328], eax
cmp byte [0x18022fd6c], 0
je 0x180045f6c
cmp byte [0x18022fef9], 0
mov eax, dword [0x18022ff28]
movd xmm0, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm0, xmm0
mov rcx, qword [rax + rbp]
je 0x180045f64
movss dword [rcx + 0xd40], xmm0
jmp 0x180045f6c
movss dword [rcx + 0xcf0], xmm0
mov rdi, qword [rsp + 0xe0]
mov rsi, qword [rsp + 0x108]
mov rbx, qword [rsp + 0xf8]
mov r14, qword [rsp + 0xd8]
mov rbp, qword [rsp + 0x100]
add rsp, 0xe8
ret