Function at 0x180046960
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 [0x180215428]
mov rcx, qword [rax]
test rcx, rcx
je 0x1800472d5
mov qword [r11 - 0x10], r14
mov r14, qword [rcx + 8]
test r14, r14
je 0x1800472cd
mov qword [r11 - 0x18], r15
mov r15, qword [r14 + 0x30]
test r15, r15
je 0x1800472c5
mov rax, qword [0x1802153f8]
mov rcx, qword [rax]
test rcx, rcx
je 0x1800472c5
cmp qword [rcx + 0x10], 0
je 0x1800472c5
cmp byte [0x180215274], 0
movsd xmm0, qword [r14 + 0x90]
mov qword [r11 + 0x18], rbp
mov ebp, dword [r14 + 0x98]
movsd qword [rsp + 0x30], xmm0
je 0x180046a10
cmp byte [0x1802153e8], 0
mov eax, dword [0x180215418]
movd xmm0, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm0, xmm0
mov rcx, qword [rax + r14]
je 0x180046a08
movss dword [rcx + 0xd40], xmm0
jmp 0x180046a10
movss dword [rcx + 0xcf0], xmm0
mov eax, dword [0x18021541c]
cmp byte [rax + r14], 0x40
je 0x1800472bd
movss xmm0, dword [0x1800f8cd0]
comiss xmm0, dword [r14 + 0x280]
ja 0x1800472bd
mov rax, qword [0x180215230]
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0xe0], rdi
test rax, rax
jne 0x180046b17
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
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 0x180046af8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180046af8
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 0x180046af3
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 0x180046ad0
cmp edx, 0x95466b05
je 0x180046b75
test r8d, r8d
jne 0x180046ab0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x180046b0e
cmp qword [rax + 0x30], 0
jne 0x180046a80
xor eax, eax
mov qword [0x180215230], rax
mov ecx, 0xa0
call rax
cmp byte [0x180215269], 0
mov byte [0x180215277], 1
je 0x180047251
mov rcx, qword [0x180215400]
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 0x180046b90
mov rcx, qword [rcx]
jmp 0x180046b98
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 0x180046b10
mov rcx, qword [rsp + 0xf0]
mov rax, qword [r14 + 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 0x180046c13
jne 0x180046c13
ucomiss xmm6, xmm0
jp 0x180046c13
jne 0x180046c13
movd xmm9, eax
ucomiss xmm9, xmm0
jp 0x180046c1a
jne 0x180046c1a
movsd xmm1, qword [rcx + 0x40]
movss xmm9, dword [rcx + 0x48]
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movsd qword [rsp + 0x20], xmm1
movaps xmm6, xmm0
movss xmm7, dword [rsp + 0x20]
jmp 0x180046c1a
movss xmm9, dword [rsp + 0x28]
mov rax, qword [0x180215230]
movss xmm12, dword [rsp + 0x30]
movss xmm13, dword [rsp + 0x34]
movaps xmm10, xmm12
movd xmm14, ebp
movaps xmm11, xmm13
movaps xmm8, xmm14
test rax, rax
jne 0x180046cf7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180046cd8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180046cd8
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 0x180046cd3
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 0x180046cb0
cmp edx, 0x95466b05
je 0x1800471bb
test r8d, r8d
jne 0x180046c90
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x180046cee
cmp qword [rax + 0x30], 0
jne 0x180046c60
xor eax, eax
mov qword [0x180215230], rax
mov ecx, 0x57
call rax
test ax, ax
jns 0x180046d36
movd xmm8, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm8, xmm8
movaps xmm10, xmm8
movaps xmm11, xmm8
mulss xmm10, xmm7
mulss xmm11, xmm6
mulss xmm8, xmm9
addss xmm10, xmm12
addss xmm11, xmm13
addss xmm8, xmm14
mov rax, qword [0x180215230]
test rax, rax
jne 0x180046df7
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]
mov r9, qword [rbx + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov r11d, dword [rax + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x180046dd8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180046dd8
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 0x180046dd3
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 0x180046db0
cmp edx, 0x95466b05
je 0x1800471d9
test r8d, r8d
jne 0x180046d90
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x180046dee
cmp qword [rax + 0x30], 0
jne 0x180046d60
xor eax, eax
mov qword [0x180215230], rax
mov ecx, 0x53
call rax
test ax, ax
jns 0x180046e30
movd xmm2, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
movaps xmm1, xmm2
mulss xmm0, xmm7
mulss xmm1, xmm6
mulss xmm2, xmm9
subss xmm10, xmm0
subss xmm11, xmm1
subss xmm8, xmm2
mov rax, qword [0x180215230]
test rax, rax
jne 0x180046ef7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
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 0x180046ed8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180046ed8
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 0x180046ed3
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 0x180046eb0
cmp edx, 0x95466b05
je 0x1800471f7
test r8d, r8d
jne 0x180046e90
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x180046eee
cmp qword [rax + 0x30], 0
jne 0x180046e60
xor eax, eax
mov qword [0x180215230], rax
mov ecx, 0x41
call rax
test ax, ax
jns 0x180046f30
movd xmm2, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
movaps xmm1, xmm2
mulss xmm0, xmm6
mulss xmm1, xmm7
mulss xmm2, xmm9
subss xmm10, xmm0
addss xmm11, xmm1
addss xmm8, xmm2
mov rax, qword [0x180215230]
test rax, rax
jne 0x180046ff7
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
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 0x180046fd8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x180046fd8
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 0x180046fd3
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 0x180046fb0
cmp edx, 0x95466b05
je 0x180047215
test r8d, r8d
jne 0x180046f90
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x180046fee
cmp qword [rax + 0x30], 0
jne 0x180046f60
xor eax, eax
mov qword [0x180215230], rax
mov ecx, 0x44
call rax
test ax, ax
jns 0x180047030
movd xmm2, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
movaps xmm1, xmm2
mulss xmm0, xmm6
mulss xmm1, xmm7
mulss xmm2, xmm9
addss xmm10, xmm0
subss xmm11, xmm1
subss xmm8, xmm2
mov rax, qword [0x180215230]
movaps xmm7, xmmword [rsp + 0xb0]
movaps xmm6, xmmword [rsp + 0xc0]
test rax, rax
jne 0x180047107
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov rbx, rsi
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 0x1800470e8
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x1800470e8
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 0x1800470e3
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 0x1800470c0
cmp edx, 0x95466b05
je 0x180047233
test r8d, r8d
jne 0x1800470a0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x1800470fe
cmp qword [rax + 0x30], 0
jne 0x180047070
xor eax, eax
mov qword [0x180215230], rax
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call rax
test ax, ax
jns 0x180047128
movd xmm0, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm9
addss xmm8, xmm0
movss xmm0, dword [0x1800f8b38]
subss xmm10, xmm12
movaps xmm9, xmmword [rsp + 0x90]
subss xmm11, xmm13
subss xmm8, xmm14
mulss xmm10, xmm0
mulss xmm11, xmm0
mulss xmm8, xmm0
addss xmm10, xmm12
movaps xmm12, xmmword [rsp + 0x60]
addss xmm11, xmm13
movaps xmm13, xmmword [rsp + 0x50]
addss xmm8, xmm14
movaps xmm14, xmmword [rsp + 0x40]
movaps xmm0, xmm10
movaps xmm10, xmmword [rsp + 0x80]
unpcklps xmm0, xmm11
movaps xmm11, xmmword [rsp + 0x70]
movsd qword [r14 + 0x90], xmm0
movss dword [r14 + 0x98], xmm8
movsd qword [r15 + 0x50], xmm0
movss dword [r15 + 0x58], xmm8
movaps xmm8, xmmword [rsp + 0xa0]
jmp 0x1800472a5
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 0x180046cf0
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 0x180046df0
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 0x180046ef0
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 0x180046ff0
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 0x180047100
xorps xmm2, xmm2
xorps xmm0, xmm0
unpcklps xmm0, xmm2
movsd qword [r14 + 0x320], xmm0
movss dword [r14 + 0x328], xmm2
cmp byte [0x180215274], 0
je 0x1800472a5
cmp byte [0x1802153e8], 0
mov eax, dword [0x180215418]
movd xmm0, dword [reloc.WS2_32.dll_accept]
cvtdq2ps xmm0, xmm0
mov rcx, qword [rax + r14]
je 0x18004729d
movss dword [rcx + 0xd40], xmm0
jmp 0x1800472a5
movss dword [rcx + 0xcf0], xmm0
mov rbx, qword [rsp + 0xf8]
mov rdi, qword [rsp + 0xe0]
mov rsi, qword [rsp + 0x108]
mov rbp, qword [rsp + 0x100]
mov r15, qword [rsp + 0xd0]
mov r14, qword [rsp + 0xd8]
add rsp, 0xe8
ret