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

Disassembly:
sub rsp, 0x58
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x180020017
mov rax, qword [0x1801cd7c0]
mov rcx, qword [rax]
test rcx, rcx
je 0x180020017
mov rax, qword [rcx + 8]
test rax, rax
je 0x180020017
cmp qword [rax + 0xd30], 0
je 0x180020017
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x70], rsi
movabs rsi, 0xd80958fc74e988a6
mov rcx, rsi
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x50], r14
call fcn.18001a200
mov edx, eax
movabs rcx, 0x814fa8be5449445d
mov ebx, eax
call fcn.18001a2a0
mov rcx, rsi
mov edi, eax
call fcn.18001a200
mov r8d, 1
mov edx, eax
movabs rcx, 0x9a9112a0fe9a4713
call fcn.18001a370
cmp byte [0x1801cdd7f], 0
mov ebp, eax
je 0x18001fa10
mov r8d, 1
mov edx, edi
movabs rcx, 0xb664292eaecf7fa6
call fcn.18001a850
cmp byte [0x1801cdd80], 0
je 0x18001fa3b
mov r9d, 1
mov dword [rsp + 0x20], 0
mov r8d, r9d
mov edx, ebp
movabs rcx, 0x2497c4717c8b881e
call fcn.18001aa50
cmp byte [0x1801cdd81], 0
je 0x18001fa5e
mov r9d, 0xffffffff
mov r8d, edi
mov edx, ebx
movabs rcx, 0xf75b0d629e1c063d
call fcn.18001a940
cmp byte [0x1801cdd7d], 0
movabs r14, 0x3882114bde571ad4
je 0x18001fb32
mov r8d, 1
mov edx, ebp
mov rcx, r14
call fcn.18001a850
mov dword [rsp + 0x48], 1
mov r9d, 1
mov dword [rsp + 0x40], 1
mov r8d, r9d
mov dword [rsp + 0x38], 1
mov edx, ebp
mov dword [rsp + 0x30], 1
movabs rcx, 0xfaee099c6f890bb8
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
call fcn.18001acb0
movabs rdi, 0xeb9dc3c7d8596c46
xor r8d, r8d
mov rcx, rdi
mov edx, ebp
call fcn.18001a850
xor r8d, r8d
mov edx, ebp
movabs rcx, 0x29b18b4fd460ca8f
call fcn.18001a850
xor r8d, r8d
mov edx, ebp
movabs rcx, 0x4c7028f78ffd3681
call fcn.18001a850
xor r8d, r8d
mov edx, ebp
mov rcx, rdi
call fcn.18001a850
mov r8d, 1
mov edx, ebp
movabs rcx, 0x92f0cf722bc4202f
call fcn.18001a850
xor r8d, r8d
mov edx, ebx
movabs rcx, 0x997abd671d25ca0b
call fcn.18001a370
test eax, eax
je 0x18001fff7
cmp byte [0x1801cdd84], 0
movabs rbx, 0x6094ad011a2ea87d
mov byte [0x1801cdd89], 1
je 0x18001fb8a
mov rcx, rsi
call fcn.18001a200
mov edx, eax
mov rcx, rbx
call fcn.18001a2a0
mov r8d, 1
mov edx, eax
mov rcx, r14
call fcn.18001a850
cmp byte [0x1801cdd7e], 0
je 0x18001fbbc
mov rcx, rsi
call fcn.18001a200
mov edx, eax
mov rcx, rbx
call fcn.18001a2a0
xor r9d, r9d
xor r8d, r8d
mov edx, eax
movabs rcx, 0xea1c610a04db6bbb
call fcn.18001a940
cmp byte [0x1801cdd83], 0
je 0x18001fc38
movss xmm2, dword [0x180166ce8]
mov edx, ebp
movabs rcx, 0xb77d05ac8c78aadb
call fcn.18001ae70
mov r8d, 1
mov edx, ebp
movabs rcx, 0x91a0bd635321f145
call fcn.18001a850
xor r8d, r8d
mov edx, ebp
movabs rcx, 0x2970eaa18fd5e42f
call fcn.18001a850
mov edx, ebp
movabs rcx, 0x115722b1b9c14c1c
call fcn.18001a780
mov r8d, 1
mov edx, ebp
movabs rcx, 0x6e13fc662b882d1d
call fcn.18001a850
mov byte [0x1801cdd82], 0
cmp byte [0x1801cdd88], 0
je 0x18001fc6f
mov r9d, dword [0x1801cdd98]
mov edx, ebp
mov r8d, dword [0x1801cdd8c]
movabs rcx, 0x6af0636ddedcb6dd
mov dword [rsp + 0x20], 0
call fcn.18001aa50
mov byte [0x1801cdd88], 0
cmp byte [0x1801cdd87], 0
movabs r14, 0xab54a438726d25d5
je 0x18001fd68
mov rax, qword [0x1801ce128]
test rax, rax
jne 0x18001fd47
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 0x18001fd28
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x18001fd28
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r8d
mov edx, 0x811c9dc5
lea rax, [r9 + r8*4]
mov ecx, dword [rax + rdi]
add rcx, r9
movzx eax, byte [rcx]
inc rcx
test al, al
je 0x18001fd23
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 0x18001fd00
cmp edx, 0x95466b05
je 0x18001ff9d
test r8d, r8d
jne 0x18001fce0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x18001fd3e
cmp qword [rax + 0x30], 0
jne 0x18001fcb0
xor eax, eax
mov qword [0x1801ce128], rax
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call rax
test ax, ax
jns 0x18001fd68
movd xmm2, dword [reloc.WS2_32.dll_getpeername]
mov edx, ebp
cvtdq2ps xmm2, xmm2
mov rcx, r14
call fcn.18001ae70
cmp byte [0x1801cdd85], 0
je 0x18001fe55
mov rax, qword [0x1801ce128]
test rax, rax
jne 0x18001fe37
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 0x18001fe18
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x18001fe18
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 0x18001fe13
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 0x18001fdf0
cmp edx, 0x95466b05
je 0x18001ffbb
test r8d, r8d
jne 0x18001fdd0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x18001fe2e
cmp qword [rax + 0x30], 0
jne 0x18001fda0
xor eax, eax
mov qword [0x1801ce128], rax
mov ecx, 0x45
call rax
test ax, ax
jns 0x18001fe55
movss xmm2, dword [0x180166cb8]
mov edx, ebp
mov rcx, r14
call fcn.18001ae70
cmp byte [0x1801cdd86], 0
je 0x18001ff40
mov rax, qword [0x1801ce128]
test rax, rax
jne 0x18001ff27
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 0x18001ff08
mov r8d, dword [r11 + 0x18]
test r8d, r8d
je 0x18001ff08
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 0x18001ff03
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 0x18001fee0
cmp edx, 0x95466b05
je 0x18001ffd9
test r8d, r8d
jne 0x18001fec0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, rsi
je 0x18001ff1e
cmp qword [rax + 0x30], 0
jne 0x18001fe90
xor eax, eax
mov qword [0x1801ce128], rax
mov ecx, 0x53
call rax
test ax, ax
jns 0x18001ff40
xorps xmm2, xmm2
mov edx, ebp
mov rcx, r14
call fcn.18001ae70
cmp byte [0x1801cdda8], 0
je 0x18001ff6f
mov r9d, dword [0x1801cdd94]
mov edx, ebp
mov r8d, dword [0x1801cdd90]
movabs rcx, 0x4f1d4be3a7f24601
call fcn.18001a940
mov byte [0x1801cdda8], 0
cmp byte [0x1801cdda9], 0
je 0x18001fffe
lea r8, [0x1801cdda0]
mov edx, ebp
movabs rcx, 0x95a88f0b409cda47
call fcn.18001b0a0
mov byte [0x1801cdda9], 0
jmp 0x18001fffe
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 0x18001fd40
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 0x18001fe30
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 0x18001ff20
mov byte [0x1801cdd89], 0
mov rdi, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov r14, qword [rsp + 0x50]
add rsp, 0x58
ret