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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x60
movdqa xmm0, xmmword [0x14031e190]
lea rsi, [rbp - 0x35]
xor edi, edi
mov dword [rbp - 0x2f], 0x594fd1
movdqu xmmword [rbp - 0x40], xmm0
neg rsi
mov word [rbp - 0x2b], 0x305
mov byte [rbp - 0x29], Ordinal_50
lea r8, [rbp - 0x34]
mov byte [rbp - 0x30], 0
nop
movzx eax, dil
lea ebx, [rdi + rdi*2]
movzx ecx, byte [rbp + rbx - 0x40]
add al, al
mov byte [r8], cl
lea r11d, [rax + rdi]
movzx r10d, r11b
lea eax, [rbx + 1]
add r10b, byte [rbp - 0x2d]
xor r10b, cl
mov byte [r8], r10b
xor dl, dl
movzx r9d, byte [rbp + rax - 0x40]
nop
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021ae76
inc dl
cmp dl, 4
jne 0x14021ae60
jmp 0x14021ae84
movzx eax, byte [rbp - 0x2a]
movsx ecx, r10b
btc ecx, eax
mov byte [r8], cl
lea eax, [rbx + 2]
mov cl, 5
movzx edx, byte [rbp + rax - 0x40]
mov r9d, eax
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021aea3
inc cl
cmp cl, 8
jne 0x14021ae91
jmp 0x14021aeb1
movsx ecx, byte [r8]
movzx eax, byte [rbp - 0x2b]
btc ecx, eax
mov byte [r8], cl
movzx edx, byte [rbp + r9 - 0x40]
xor cl, cl
nop dword [rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021aed2
inc cl
cmp cl, 5
jne 0x14021aec0
jmp 0x14021aee0
movsx ecx, byte [r8]
movzx eax, byte [rbp - 0x2c]
btc ecx, eax
mov byte [r8], cl
movzx eax, r11b
lea r10d, [r11 + 3]
add al, byte [rbp - 0x2e]
xor byte [r8], al
lea eax, [rbx + 3]
movzx eax, byte [rbp + rax - 0x40]
mov byte [r8 + 1], al
add r10b, byte [rbp - 0x2d]
xor r10b, al
lea eax, [rbx + 4]
mov byte [r8 + 1], r10b
xor dl, dl
movzx r9d, byte [rbp + rax - 0x40]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021af2a
inc dl
cmp dl, 4
jne 0x14021af10
lea rdx, [rsi + r8]
jmp 0x14021af3d
movzx eax, byte [rbp - 0x2a]
lea rdx, [rsi + r8]
movsx ecx, r10b
btc ecx, eax
mov byte [rbp + rdx - 0x34], cl
lea eax, [rbx + 5]
mov cl, 5
movzx r9d, byte [rbp + rax - 0x40]
mov r10d, eax
nop dword [rax + rax]
movzx eax, r9b
sar al, cl
test al, 1
jne 0x14021af63
inc cl
cmp cl, 8
jne 0x14021af50
jmp 0x14021af73
movsx ecx, byte [rbp + rdx - 0x34]
movzx eax, byte [rbp - 0x2b]
btc ecx, eax
mov byte [rbp + rdx - 0x34], cl
movzx r9d, byte [rbp + r10 - 0x40]
xor cl, cl
nop dword [rax + rax]
movzx eax, r9b
sar al, cl
test al, 1
jne 0x14021af93
inc cl
cmp cl, 5
jne 0x14021af80
jmp 0x14021afa3
movsx ecx, byte [rbp + rdx - 0x34]
movzx eax, byte [rbp - 0x2c]
btc ecx, eax
mov byte [rbp + rdx - 0x34], cl
add r11b, 3
add edi, 2
add r11b, byte [rbp - 0x2e]
add r8, 2
xor byte [rbp + rdx - 0x34], r11b
cmp edi, 4
jne 0x14021ae30
xorps xmm0, xmm0
lea rax, [rbp - 0x34]
xorps xmm1, xmm1
mov r8, 0xffffffffffffffff
movups xmmword [rbp - 0x28], xmm0
movdqu xmmword [rbp - 0x18], xmm1
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14021afe0
lea rdx, [rbp - 0x34]
lea rcx, [rbp - 0x28]
call fcn.14008b360
cmp qword [rbp - 0x10], 0xf
lea rbx, [rbp - 0x28]
mov dil, 0xd0
cmova rbx, qword [rbp - 0x28]
xor cl, cl
nop word [rax + rax]
mov eax, 8
sar al, cl
test al, 1
jne 0x14021b024
inc cl
cmp cl, 4
jne 0x14021b010
jmp 0x14021b027
mov dil, Ordinal_217
mov cl, 5
nop dword [rax]
mov eax, 0x40
sar al, cl
test al, 1
jne 0x14021b044
inc cl
cmp cl, 8
jne 0x14021b030
jmp 0x14021b04c
movsx edi, dil
btc edi, 5
xor cl, cl
nop
mov eax, 0x40
sar al, cl
test al, 1
jne 0x14021b064
inc cl
cmp cl, 5
jne 0x14021b050
jmp 0x14021b06c
movsx edi, dil
btc edi, 0
movzx ebx, byte [rbx + 1]
lea rcx, [rbp - 0x28]
xor dil, 0xd1
call fcn.14008b2f0
cmp dil, bl
jne 0x14021b950
mov rax, qword gs:[0x60]
mov qword [rsp + 0x88], r14
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov esi, dword [rcx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x14021b12a
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14021b12a
mov r14d, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r11d
mov r10d, 0x78be3196
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021b125
movsx ecx, r8b
lea r9, [r9 + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [r9 - 1]
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
test r8b, r8b
jne 0x14021b0f0
cmp r10d, 0x3826b0c0
je 0x14021b132
test r11d, r11d
jne 0x14021b0d0
mov rax, qword [rax]
jmp 0x14021b0a0
mov ecx, dword [rsi + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
add rax, rbx
call rax
mov r10d, eax
mov dl, 0x82
xor cl, cl
mov dword [rbp - 0x40], 0x808002cd
mov word [rbp - 0x3c], 0x8002
mov dword [rbp - 0x37], 0x4fd14f
mov word [rbp - 0x33], 0x305
mov byte [rbp - 0x31], Ordinal_211
mov byte [rbp - 0x38], 0
mov eax, 2
sar al, cl
test al, 1
jne 0x14021b188
inc cl
cmp cl, 4
jne 0x14021b174
jmp 0x14021b18a
mov dl, 0x8a
mov cl, 5
nop dword [rax]
mov eax, 0xffffff80
sar al, cl
test al, 1
jne 0x14021b1a4
inc cl
cmp cl, 8
jne 0x14021b190
jmp 0x14021b1ab
movsx edx, dl
btc edx, 5
xor cl, cl
nop dword [rax]
mov eax, 0xffffff80
sar al, cl
test al, 1
jne 0x14021b1c4
inc cl
cmp cl, 5
jne 0x14021b1b0
jmp 0x14021b1cb
movsx edx, dl
btc edx, 0
xor dl, 0xd1
mov byte [rbp - 0x3a], dl
xor cl, cl
mov dl, Ordinal_211
mov eax, 2
sar al, cl
test al, 1
jne 0x14021b1e9
inc cl
cmp cl, 4
jne 0x14021b1d5
jmp 0x14021b1eb
mov dl, 0xda
mov cl, 5
nop dword [rax]
mov eax, 0xffffff80
sar al, cl
test al, 1
jne 0x14021b204
inc cl
cmp cl, 8
jne 0x14021b1f0
jmp 0x14021b20b
movsx edx, dl
btc edx, 5
xor cl, cl
nop dword [rax]
mov eax, 0xffffff80
sar al, cl
test al, 1
jne 0x14021b224
inc cl
cmp cl, 5
jne 0x14021b210
jmp 0x14021b22b
movsx edx, dl
btc edx, 0
xor dl, 0xd4
mov ecx, r10d
mov byte [rbp - 0x39], dl
mov eax, 0xaaaaaaab
mul r10d
shr edx, 1
lea eax, [rdx + rdx*2]
sub ecx, eax
mov r8d, ecx
cmp byte [rbp + rcx - 0x3a], 0x5d
je 0x14021b948
xor r11b, r11b
mov word [rbp - 0x40], 0x87
mov r9b, 5
mov byte [rbp - 0x3c], r11b
movzx ecx, r9b
mov byte [rbp - 0x3e], 0x50
mov dword [rbp - 0x3b], 0xd15931
mov dl, 0x56
mov word [rbp - 0x37], 0x305
mov byte [rbp - 0x35], reloc.WLDAP32.dll_Ordinal_79
nop dword [rax]
mov al, 0x50
sar al, cl
test al, 1
jne 0x14021b291
inc cl
cmp cl, 8
jne 0x14021b280
jmp 0x14021b29b
movsx edx, dl
movzx eax, r9b
btc edx, eax
xor cl, cl
nop dword [rax]
mov al, 0x50
sar al, cl
test al, 1
jne 0x14021b2b1
inc cl
cmp cl, r9b
jne 0x14021b2a0
jmp 0x14021b2bb
movsx edx, dl
movzx eax, r11b
btc edx, eax
mov rax, r10
xor dl, 0x59
and eax, 1
mov byte [rbp - 0x3d], dl
mov r9, r10
cmp byte [rbp + rax - 0x3d], 0x20
je 0x14021b948
mov dword [rbp - 0x40], 0xc610029d
mov dl, Ordinal_211
mov word [rbp - 0x3c], 0
xor cl, cl
mov dword [rbp - 0x37], 0x4fd14f
mov word [rbp - 0x33], 0x305
mov byte [rbp - 0x31], Ordinal_211
mov byte [rbp - 0x38], r11b
nop dword [rax + rax]
mov eax, 2
sar al, cl
test al, 1
jne 0x14021b314
inc cl
cmp cl, 4
jne 0x14021b300
jmp 0x14021b316
mov dl, 0xda
mov cl, 5
nop dword [rax + rax]
mov eax, reloc.WS2_32.dll_recv
sar al, cl
test al, 1
jne 0x14021b334
inc cl
cmp cl, 8
jne 0x14021b320
jmp 0x14021b33b
movsx edx, dl
btc edx, 5
xor cl, cl
nop dword [rax]
mov eax, reloc.WS2_32.dll_recv
sar al, cl
test al, 1
jne 0x14021b354
inc cl
cmp cl, 5
jne 0x14021b340
jmp 0x14021b35b
movsx edx, dl
btc edx, 0
xor dl, 0xd1
mov al, 0x94
xor al, 0xd4
mov byte [rbp - 0x3a], dl
mov byte [rbp - 0x39], al
cmp byte [rbp + r8 - 0x3a], 0xa
je 0x14021b948
mov dword [rbp - 0x40], 0x1a500249
mov dl, reloc.WS2_32.dll_recv
mov dword [rbp - 0x3c], 0x25b4002
xor cl, cl
mov byte [rbp - 0x38], 0x40
mov dword [rbp - 0x33], 0x595931
mov word [rbp - 0x2f], 0x305
mov byte [rbp - 0x2d], Ordinal_50
mov byte [rbp - 0x34], r11b
nop
mov eax, 2
sar al, cl
test al, 1
jne 0x14021b3b4
inc cl
cmp cl, 4
jne 0x14021b3a0
jmp 0x14021b3b6
mov dl, 0x18
mov cl, 5
nop dword [rax + rax]
mov eax, 0x50
sar al, cl
test al, 1
jne 0x14021b3d4
inc cl
cmp cl, 8
jne 0x14021b3c0
jmp 0x14021b3db
movsx edx, dl
btc edx, 5
xor cl, cl
nop dword [rax]
mov eax, 0x50
sar al, cl
test al, 1
jne 0x14021b3f4
inc cl
cmp cl, 5
jne 0x14021b3e0
jmp 0x14021b3fb
movsx edx, dl
btc edx, 0
xor dl, 0x59
mov byte [rbp - 0x37], dl
xor cl, cl
mov dl, 0x46
mov eax, 2
sar al, cl
test al, 1
jne 0x14021b419
inc cl
cmp cl, 4
jne 0x14021b405
jmp 0x14021b41b
mov dl, Ordinal_79
mov cl, 5
nop dword [rax]
mov eax, 0x40
sar al, cl
test al, 1
jne 0x14021b434
inc cl
cmp cl, 8
jne 0x14021b420
jmp 0x14021b43b
movsx edx, dl
btc edx, 5
xor cl, cl
nop dword [rax]
mov eax, 0x40
sar al, cl
test al, 1
jne 0x14021b454
inc cl
cmp cl, 5
jne 0x14021b440
jmp 0x14021b45b
movsx edx, dl
btc edx, 0
xor dl, 0x5c
mov byte [rbp - 0x36], dl
xor cl, cl
mov dl, 4
mov eax, 2
sar al, cl
test al, 1
jne 0x14021b478
inc cl
cmp cl, dl
jne 0x14021b465
jmp 0x14021b47a
mov dl, listen
mov cl, 5
nop dword [rax]
mov eax, 0x40
sar al, cl
test al, 1
jne 0x14021b494
inc cl
cmp cl, 8
jne 0x14021b480
jmp 0x14021b49b
movsx edx, dl
btc edx, 5
xor cl, cl
nop dword [rax]
mov eax, 0x40
sar al, cl
test al, 1
jne 0x14021b4b4
inc cl
cmp cl, 5
jne 0x14021b4a0
jmp 0x14021b4bb
movsx edx, dl
btc edx, 0
xor dl, 0x5f
and r9d, 3
mov byte [rbp - 0x35], dl
cmp byte [rbp + r9 - 0x37], 0x2e
je 0x14021b948
cmp r10d, 0x4d192b3f
ja 0x14021b948
inc r10d
xor r10d, 0x4d192b3f
cmp r10d, 0x1b83f49c
jne 0x14021b948
mov dl, 0x44
mov cl, 5
nop dword [rax]
mov eax, 0xffffff80
sar al, cl
test al, 1
jne 0x14021b514
inc cl
cmp cl, 8
jne 0x14021b500
jmp 0x14021b51b
movsx edx, dl
btc edx, 5
xor cl, cl
nop dword [rax]
mov eax, 0xffffff80
sar al, cl
test al, 1
jne 0x14021b534
inc cl
cmp cl, 5
jne 0x14021b520
jmp 0x14021b53b
movsx edx, dl
btc edx, 0
xor dl, 0x4f
cmp dl, 3
jne 0x14021b620
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov esi, dword [rcx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x14021b5ea
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14021b5ea
mov r14d, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r11d
mov r10d, 0x5625a4b1
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r14]
add r9, rbx
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021b5e5
movsx ecx, r8b
lea r9, [r9 + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [r9 - 1]
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
test r8b, r8b
jne 0x14021b5b0
cmp r10d, 0xb830309
je 0x14021b5f2
test r11d, r11d
jne 0x14021b590
mov rax, qword [rax]
jmp 0x14021b560
mov ecx, dword [rsi + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
mov edx, 0xd2ca04ac
add rax, rbx
mov ecx, 0x27aa2539
call rax
jmp 0x14021b948
mov dl, 4
mov cl, 5
mov eax, reloc.WS2_32.dll_recv
sar al, cl
test al, 1
jne 0x14021b638
inc cl
cmp cl, 8
jne 0x14021b624
jmp 0x14021b63f
movsx edx, dl
btc edx, 5
xor cl, cl
mov eax, reloc.WS2_32.dll_recv
sar al, cl
test al, 1
jne 0x14021b655
inc cl
cmp cl, 5
jne 0x14021b641
jmp 0x14021b65c
movsx edx, dl
btc edx, 0
xor dl, 0x37
cmp dl, 4
jne 0x14021b948
movss xmm0, dword [0x14033ccd4]
mov edx, 0x613faee1
movss xmm2, dword [0x14033ccd0]
movaps xmm1, xmm0
divss xmm1, xmm2
mov cl, Ordinal_30
mov eax, edx
shr eax, cl
mulss xmm1, xmm0
addss xmm1, xmm0
movss dword [0x14033ccd4], xmm1
test al, 1
je 0x14021b6aa
mov cl, 2
mov eax, edx
inc cl
shr eax, cl
test al, 1
jne 0x14021b6da
mov cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021b6da
add cl, cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021b6da
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021b6da
mov cl, reloc.WS2_32.dll_recvfrom
shr edx, cl
test dl, 1
jne 0x14021b6da
comiss xmm2, xmm1
jbe 0x14021b948
mov rax, qword gs:[0x60]
mov qword [rsp + 0x90], r15
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov esi, dword [rcx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x14021b78a
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14021b78a
mov r14d, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r11d
mov r10d, 0xf96bc382
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r14]
add r9, rbx
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021b785
movsx ecx, r8b
lea r9, [r9 + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [r9 - 1]
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
test r8b, r8b
jne 0x14021b750
cmp r10d, 0xf3608614
je 0x14021b792
test r11d, r11d
jne 0x14021b730
mov rax, qword [rax]
jmp 0x14021b700
mov ecx, dword [rsi + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
add rax, rbx
call rax
mov r15, rax
test rax, rax
je 0x14021b940
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
nop dword [rax + rax]
mov rbx, qword [rcx + 0x30]
movsxd rdx, dword [rbx + 0x3c]
mov esi, dword [rdx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x14021b85a
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14021b85a
mov r14d, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r11d
mov r10d, 0xb572e1
lea rax, [r14 + r11*4]
mov r9d, dword [rax + rbx]
add r9, rbx
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021b855
movsx eax, r8b
lea r9, [r9 + 1]
sub r8b, 0x41
mov edx, eax
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [r9 - 1]
cmova edx, eax
xor edx, r10d
imul r10d, edx, 0x1000193
test r8b, r8b
jne 0x14021b820
cmp r10d, 0xa1771e81
je 0x14021b862
test r11d, r11d
jne 0x14021b800
mov rcx, qword [rcx]
jmp 0x14021b7d0
mov ecx, dword [rsi + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
mov rcx, r15
add rax, rbx
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov rbx, qword [rax + 0x30]
movsxd rcx, dword [rbx + 0x3c]
mov esi, dword [rcx + rbx + 0x88]
add rsi, rbx
cmp rsi, rbx
je 0x14021b91a
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14021b91a
mov r14d, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r11d
mov r10d, 0xf7a46571
lea rcx, [r14 + r11*4]
mov r9d, dword [rcx + rbx]
add r9, rbx
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021b915
movsx ecx, r8b
lea r9, [r9 + 1]
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
movzx r8d, byte [r9 - 1]
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
test r8b, r8b
jne 0x14021b8e0
cmp r10d, 0xe1cd13b7
je 0x14021b922
test r11d, r11d
jne 0x14021b8c0
mov rax, qword [rax]
jmp 0x14021b890
mov ecx, dword [rsi + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rcx + rdx*4]
mov ecx, 0x95ecb6f6
add rax, rbx
call rax
mov r15, qword [rsp + 0x90]
mov r14, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x98]
add rsp, 0x60
pop rdi
pop rsi
pop rbp
ret