Function at 0x140039310
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
mov rdi, rcx
mov r13, r8
xor ecx, ecx
mov r12, rdx
mov rbp, r9
mov qword [rsp + 0x50], rcx
mov r11d, ecx
mov qword [rsp + 0x48], rcx
mov r8d, dword [rdi]
mov edx, ecx
mov eax, dword [rdi + 0x14]
mov esi, r8d
mov ebx, dword [rdi + 4]
shr esi, 0xa
and esi, 0x7f
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0xc0], r8d
mov dword [rsp + 0xb0], ebx
test eax, 0x7f000000
jne 0x1400393cb
test r9, r9
jne 0x1400393f2
test esi, esi
je 0x1400393de
cmp esi, 0x12
ja 0x14003938e
mov ecx, 0x40017
bt ecx, esi
jb 0x1400393cb
xor ecx, ecx
cmp esi, 0x3f
jne 0x1400393de
cmp qword [r12 + 0x38], rcx
je 0x1400393cb
and r8d, 0xfffe03ff
shl esi, 0xa
or r8d, esi
mov rcx, rdi
mov dword [rdi], r8d
call qword [r12 + gethostname]
mov ecx, dword [rdi + 0x14]
test eax, eax
je 0x1400393cb
and ecx, 0x87ffffff
mov dword [rdi + 4], ebx
or ecx, 0x7000000
mov dword [rdi + 0x14], ecx
xor eax, eax
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
and eax, 0x8bffffff
or eax, 0xb000000
mov dword [rdi + 0x14], eax
mov eax, 1
jmp 0x1400393cd
cmp esi, 0x2d
mov r9, r13
mov r10, r13
cmovne r9, rcx
cmp esi, 0x32
cmovne r10, rcx
cmp esi, 0x10
je 0x14003941a
lea eax, [rsi - 0x15]
cmp eax, 0xa
ja 0x140039422
mov qword [rsp + 0x50], r13
jmp 0x140039422
mov rdx, r13
mov qword [rsp + 0x40], rdx
mov r15, rbp
mov r14, r13
add r15, r13
mov qword [rsp + 0x30], r15
cmp r13, r15
je 0x14003b540
mov qword [rsp + 0x38], r9
mov ebp, 1
mov qword [rsp + 0x28], r10
mov r15b, byte [r14]
mov eax, 0x30
cmp esi, 0x3a
jg 0x14003946a
add ebx, ebp
cmp ebx, dword [0x1401291f0]
mov dword [rsp + 0xb0], ebx
ja 0x14003aa61
mov r9, qword [rsp + 0xc8]
jmp 0x140039485
mov ebx, dword [rsp + 0xb0]
mov ebp, 1
mov eax, 0x30
mov ecx, esi
cmp esi, 0x1f
jg 0x14003958a
cmp ecx, 0x19
jge 0x14003a4d7
cmp ecx, 0xb
jg 0x1400394fd
je 0x140039ff6
cmp ecx, 6
jg 0x140039f78
je 0x140039f64
sub ecx, 1
je 0x140039f3c
sub ecx, 1
jne 0x140039e70
cmp r15b, 0xd
je 0x140039e94
cmp r15b, 0xa
je 0x140039e94
mov eax, dword [rdi]
or qword [rdi + 8], 0xffffffffffffffff
and eax, 0xfffffc03
mov dword [rdi], eax
cmp r15b, 0x48
je 0x140039e19
and eax, 0xfffffffc
lea esi, [rcx + 0x12]
mov dword [rdi], eax
mov ecx, esi
jmp 0x140039490
cmp ecx, 0x11
jg 0x14003a177
je 0x14003a163
sub ecx, 0xc
je 0x14003a14f
sub ecx, 1
je 0x14003a109
sub ecx, 1
je 0x14003955f
sub ecx, 1
jne 0x14003a022
xor ecx, ecx
test rdx, rdx
cmove rdx, r14
and dword [rdi], 0x80ffffff
mov qword [rsp + 0x40], rdx
lea esi, [rcx + 0x10]
lea eax, [rcx + 0x30]
cmp r15b, 0xd
je 0x140039485
cmp r15b, 0xa
jne 0x140039e96
jmp 0x140039485
lea eax, [r15 - 0x30]
mov ecx, 9
cmp al, cl
jbe 0x14003a0da
cmp r15b, 0xa
je 0x140039580
cmp r15b, 0xd
jne 0x14003a0ca
mov esi, reloc.WS2_32.dll_ntohs
jmp 0x140039480
cmp esi, eax
jg 0x1400396bb
je 0x1400395dd
cmp esi, 0x28
jle 0x14003aba6
sub ecx, 0x29
je 0x14003ab7e
sub ecx, 1
je 0x14003ab50
sub ecx, 1
je 0x14003ab32
sub ecx, 1
jne 0x14003a64f
cmp r15b, 0xd
je 0x14003a645
cmp r15b, 0xa
jne 0x14003a5aa
lea esi, [rcx + 0x39]
jmp 0x140039480
cmp r15b, 0x20
je 0x14003acc3
mov eax, 9
cmp r15b, al
je 0x14003acc3
mov eax, dword [rdi]
mov ecx, eax
shr ecx, 0x11
and ecx, 0x7f
sub ecx, 0xa
je 0x140039871
sub ecx, 0xb
je 0x14003962b
sub ecx, 1
je 0x140039626
sub ecx, 1
je 0x140039621
cmp ecx, 1
jne 0x140039630
or eax, 0x20
jmp 0x14003962e
or eax, 0x10
jmp 0x14003962e
or eax, 8
jmp 0x14003962e
or eax, 4
mov dword [rdi], eax
xor ecx, ecx
test r10, r10
cmove r10, r14
mov qword [rsp + 0x28], r10
lea esi, [rcx + 0x2c]
test r10, r10
je 0x140039480
cmp qword [r12 + 0x20], rcx
je 0x1400396a4
and eax, 0xfffeb3ff
mov r8, r14
or eax, 0xb000
sub r8, r10
mov rdx, r10
mov dword [rdi], eax
mov rcx, rdi
call qword [r12 + 0x20]
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x140039684
and eax, 0x84ffffff
mov dword [rdi + 4], ebx
bts eax, 0x1a
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b474
mov r11, qword [rsp + 0x48]
mov r8d, dword [rsp + 0xc0]
xor eax, eax
mov qword [rsp + 0x28], rax
mov r10, rax
mov r9, qword [rsp + 0xc8]
jmp 0x140039e0f
cmp esi, 0x39
jg 0x140039d26
je 0x140039c02
sub ecx, 0x31
je 0x14003af25
sub ecx, 1
je 0x140039753
sub ecx, 1
jne 0x14003accd
cmp r15b, 0x20
je 0x14003972b
lea eax, [rcx + 9]
cmp r15b, al
je 0x14003972b
mov ecx, dword [rdi]
mov eax, ecx
shr eax, 0x11
and eax, 0x7f
sub eax, 0x15
je 0x14003971c
sub eax, 1
je 0x140039717
sub eax, 1
je 0x140039712
cmp eax, 1
jne 0x140039721
or ecx, 0x20
jmp 0x14003971f
or ecx, 0x10
jmp 0x14003971f
or ecx, 8
jmp 0x14003971f
or ecx, 4
mov dword [rdi], ecx
mov esi, 0x2c
jmp 0x140039480
mov ecx, dword [rdi]
mov eax, ecx
and eax, 0xfe0000
cmp eax, 0x160000
jne 0x140039749
and ecx, 0xff19ffff
or ecx, 0x180000
mov dword [rdi], ecx
mov esi, 0x31
jmp 0x140039480
mov ebp, dword [rdi]
mov r12, r14
shr ebp, 0x11
and ebp, 0x7f
mov rbx, r14
lea rdx, [r9 + r13]
cmp rbx, rdx
je 0x14003aebf
mov r15b, byte [r14]
cmp r15b, 0xd
je 0x14003ae2e
cmp r15b, 0xa
je 0x140039b2f
xor r10d, r10d
lea ebx, [r10 + 9]
test r8d, r8d
js 0x1400397aa
cmp r15b, bl
je 0x1400397aa
cmp r15b, 0x1f
jbe 0x14003b3bd
cmp r15b, 0x7f
je 0x14003b3bd
mov r11d, 0x20
mov dl, r15b
or dl, r11b
lea ecx, [r11 - 0x10]
cmp ebp, ecx
jg 0x14003999d
je 0x140039954
mov ecx, ebp
test ebp, ebp
je 0x1400398e5
sub ecx, ebx
je 0x1400399fb
sub ecx, 1
je 0x140039885
sub ecx, 1
je 0x140039893
sub ecx, 1
je 0x14003985c
sub ecx, 1
je 0x1400399fb
cmp ecx, 2
jne 0x140039a0b
mov eax, dword [rdi]
mov r9d, 0x7f000000
lea ecx, [rax + 0x1000000]
xor ecx, eax
and ecx, r9d
xor ecx, eax
mov eax, ecx
mov dword [rdi], ecx
and ecx, r9d
cmp ecx, 0x7000000
ja 0x140039a10
shr rax, 0x18
lea r9, [0x140000000]
and eax, 0x7f
cmp dl, byte [rax + r9 + 0xffc28]
jne 0x140039a10
cmp ecx, 0x6000000
jne 0x1400399fb
lea ebp, [r11 - 0xb]
jmp 0x1400399fb
cmp r15b, r11b
je 0x1400399fb
and dword [rdi], 0xff19ffff
or dword [rdi], 0x180000
mov ecx, dword [rdi + 0x14]
and ecx, 0x99ffffff
or ecx, 0x19000000
jmp 0x14003b50c
cmp r15b, r11b
je 0x1400399fb
mov ebp, ntohs
cmp r15b, r11b
jne 0x1400398a2
mov ebp, ntohs
jmp 0x1400399fb
mov al, r15b
mov ecx, 0x30
sub al, cl
cmp al, bl
ja 0x14003b419
mov rdx, qword [rdi + 8]
movabs rax, 0x1999999999999998
cmp rdx, rax
ja 0x14003b419
movsx eax, r15b
sub eax, ecx
movsxd rcx, eax
lea rax, [rdx + rdx*4]
lea rcx, [rcx + rax*2]
mov qword [rdi + 8], rcx
jmp 0x1400399fb
mov ebx, dword [0x1401291f0]
mov rax, r13
sub rax, r14
mov edx, reloc.WS2_32.dll_listen
add rax, r9
mov rcx, r14
cmp rax, rbx
cmovb rbx, rax
mov r8, rbx
call sub.VCRUNTIME140.dll_memchr
mov r8, rbx
mov edx, 0xa
mov rcx, r14
mov r15, rax
call sub.VCRUNTIME140.dll_memchr
mov r14, rax
test r15, r15
je 0x140039935
test rax, rax
je 0x140039930
cmp r15, rax
jae 0x140039944
mov r14, r15
jmp 0x140039944
mov rax, qword [rsp + 0x30]
test r14, r14
cmovne rax, r14
mov r14, rax
mov r8d, dword [rsp + 0xc0]
dec r14
jmp 0x1400399fb
cmp dl, 0x6b
jne 0x140039963
mov ebp, select
jmp 0x1400399fb
cmp dl, 0x63
jne 0x140039972
mov ebp, reloc.WS2_32.dll_select
jmp 0x1400399fb
cmp dl, 0x75
jne 0x14003997e
mov ebp, shutdown
jmp 0x1400399fb
cmp dl, r11b
je 0x1400399fb
movzx eax, dl
lea rcx, [0x140000000]
mov cl, byte [rax + rcx + 0xff9b0]
neg cl
sbb ebp, ebp
and ebp, 0x14
jmp 0x1400399fb
cmp ebp, 0x11
je 0x140039ad5
cmp ebp, 0x12
je 0x140039a7b
cmp ebp, 0x13
je 0x140039a30
cmp ebp, 0x14
je 0x140039a20
mov eax, reloc.WS2_32.dll_setsockopt
cmp ebp, eax
je 0x140039a15
lea eax, [rbp - 0x16]
cmp eax, 2
ja 0x140039a0b
cmp r15b, 0x2c
jne 0x1400399f1
cmp ebp, 0x16
jne 0x1400399da
or dword [rdi], 8
jmp 0x140039a26
cmp ebp, 0x17
jne 0x1400399e3
or dword [rdi], ecx
jmp 0x140039a26
mov eax, 0x18
cmp ebp, eax
jne 0x140039a26
or dword [rdi], r11d
jmp 0x140039a26
cmp r15b, r11b
je 0x1400399fb
mov ebp, shutdown
mov r9, qword [rsp + 0xc8]
inc r14
jmp 0x14003975e
mov esi, 0x32
mov ebp, r10d
jmp 0x1400399fb
cmp r15b, r11b
mov ebp, r10d
cmove ebp, eax
jmp 0x1400399fb
cmp r15b, 0x2c
jne 0x1400399fb
and dword [rdi], 0x80ffffff
mov ebp, ecx
jmp 0x1400399fb
mov eax, dword [rdi]
mov r9d, 0x7f000000
lea ecx, [rax + 0x1000000]
xor ecx, eax
and ecx, r9d
xor ecx, eax
mov eax, ecx
mov dword [rdi], ecx
and ecx, r9d
cmp ecx, 0x7000000
ja 0x1400399f6
shr rax, 0x18
lea r9, [0x140000000]
and eax, 0x7f
cmp dl, byte [rax + r9 + 0xffc20]
jne 0x1400399f6
cmp ecx, 0x6000000
jne 0x1400399fb
mov ebp, 0x18
jmp 0x1400399fb
mov eax, dword [rdi]
mov r9d, 0x7f000000
lea ecx, [rax + 0x1000000]
xor ecx, eax
and ecx, r9d
xor ecx, eax
mov eax, ecx
mov dword [rdi], ecx
and ecx, r9d
cmp ecx, 0x5000000
ja 0x1400399f6
shr rax, 0x18
lea r9, [0x140000000]
and eax, 0x7f
cmp dl, byte [rax + r9 + 0xffc3c]
jne 0x1400399f6
cmp ecx, 0x4000000
jne 0x1400399fb
mov ebp, reloc.WS2_32.dll_socket
jmp 0x1400399fb
mov eax, dword [rdi]
mov r9d, 0x7f000000
lea ecx, [rax + 0x1000000]
xor ecx, eax
and ecx, r9d
xor ecx, eax
mov eax, ecx
mov dword [rdi], ecx
and ecx, r9d
cmp ecx, 0xa000000
ja 0x1400399f6
shr rax, 0x18
lea r9, [0x140000000]
and eax, 0x7f
cmp dl, byte [rax + r9 + 0xffc30]
jne 0x1400399f6
cmp ecx, 0x9000000
jne 0x1400399fb
mov ebp, reloc.WS2_32.dll_shutdown
jmp 0x1400399fb
mov edx, dword [rsp + 0xb0]
mov eax, r14d
sub eax, r12d
mov esi, 0x34
add edx, eax
cmp edx, dword [0x1401291f0]
mov dword [rsp + 0xb0], edx
ja 0x14003b3f1
mov r10, qword [rsp + 0x28]
xor eax, eax
mov r12, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
shl ebp, 0x11
xor ebp, dword [rdi]
and ebp, 0xfe0000
xor ebp, dword [rdi]
mov dword [rdi], ebp
test r10, r10
je 0x140039474
cmp qword [r12 + 0x20], rax
je 0x140039bec
and ebp, 0xfffed3ff
mov r8, rbx
or ebp, 0xd000
sub r8, r10
mov rdx, r10
mov dword [rdi], ebp
mov rcx, rdi
call qword [r12 + 0x20]
test eax, eax
je 0x140039bcc
mov eax, dword [rsp + 0xb0]
mov dword [rdi + 4], eax
mov eax, dword [rdi + 0x14]
and eax, 0x84ffffff
bts eax, 0x1a
mov dword [rdi + 0x14], eax
jmp 0x140039bcf
mov eax, dword [rdi + 0x14]
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b42c
mov r8d, dword [rsp + 0xc0]
xor eax, eax
mov ebx, dword [rsp + 0xb0]
mov ebp, 1
mov r11, qword [rsp + 0x48]
jmp 0x1400396a6
cmp r15b, 0xa
jne 0x14003b4fd
mov ecx, dword [rdi]
mov eax, ecx
shr eax, 2
test al, 0x10
je 0x140039c81
xor eax, eax
mov esi, 0x40
cmp qword [r12 + 0x48], rax
lea eax, [rsi - 0x10]
je 0x140039485
and ecx, 0xffff03ff
bts ecx, 0x10
mov dword [rdi], ecx
mov rcx, rdi
call qword [r12 + 0x48]
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x140039c57
and eax, 0x8affffff
mov dword [rdi + 4], ebx
or eax, 0xa000000
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b474
mov r10, qword [rsp + 0x28]
mov r11, qword [rsp + 0x48]
mov r8d, dword [rsp + 0xc0]
jmp 0x1400396ae
test bpl, al
je 0x140039c8e
test al, al
js 0x14003b443
and eax, 0x28
mov esi, 0x3a
cmp al, 0x28
jne 0x140039cb9
test cl, 3
mov ecx, dword [rdi + 0x14]
je 0x140039cae
cmp cx, 0x65
je 0x140039cae
xor edx, edx
mov eax, edx
jmp 0x140039cb3
mov eax, 0x80000000
btr ecx, 0x1f
jmp 0x140039cd0
xor edx, edx
mov eax, 0x80000000
cmp byte [rdi + 0x16], 5
mov ecx, edx
cmove ecx, eax
mov eax, dword [rdi + 0x14]
btr eax, 0x1f
or ecx, eax
mov dword [rdi + 0x14], ecx
mov rax, qword [r12 + 0x28]
test rax, rax
je 0x140039d14
mov rcx, rdi
call rax
test eax, eax
je 0x140039d02
sub eax, 1
je 0x140039cfe
cmp eax, 1
jne 0x14003b457
mov eax, 0x80000000
or dword [rdi + 0x14], eax
bts dword [rdi], 8
mov r8d, dword [rsp + 0xc0]
mov r11, qword [rsp + 0x48]
mov r10, qword [rsp + 0x28]
test dword [rdi + 0x14], 0x7f000000
jne 0x14003b465
jmp 0x1400396ae
sub ecx, 0x3a
je 0x14003b24f
sub ecx, 1
je 0x14003b1f9
sub ecx, 1
je 0x14003b182
sub ecx, 1
je 0x14003b129
sub ecx, 1
jne 0x14003b06f
mov rdx, qword [rdi + 8]
mov rcx, r13
sub rcx, r14
mov rax, rdx
add rcx, r9
cmp rdx, rcx
cmovae rax, rcx
xor ecx, ecx
test r11, r11
cmove r11, r14
sub rdx, rax
lea r14, [r14 - 1]
mov qword [rdi + 8], rdx
mov rdx, qword [rsp + 0x40]
lea r14, [r14 + rax]
mov qword [rsp + 0x48], r11
jne 0x140039e96
lea esi, [rcx + 0x40]
lea eax, [rcx + 0x30]
test r11, r11
je 0x140039485
cmp qword [r12 + 0x30], rcx
je 0x140039e07
and dword [rdi], 0xffff03ff
mov r8, r14
bts dword [rdi], 0x10
sub r8, r11
add r8, rbp
mov rdx, r11
mov rcx, rdi
call qword [r12 + 0x30]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x140039ddf
and eax, 0x86ffffff
mov dword [rdi + 4], ebx
or eax, 0x6000000
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b474
mov r10, qword [rsp + 0x28]
mov r8d, dword [rsp + 0xc0]
mov r9, qword [rsp + 0xc8]
mov r11, rcx
mov qword [rsp + 0x48], rcx
mov rdx, qword [rsp + 0x40]
jmp 0x140039480
xor ecx, ecx
mov esi, 3
cmp qword [r12], rcx
je 0x140039e96
and eax, 0xfffe0fff
or eax, 0xc00
mov dword [rdi], eax
mov rcx, rdi
call qword [r12]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x140039e51
and eax, 0x81ffffff
mov dword [rdi + 4], ebx
bts eax, 0x18
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b4d3
mov rdx, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
jmp 0x140039e96
sub ecx, 1
je 0x140039f03
sub ecx, 1
je 0x140039ec3
cmp ecx, 1
jne 0x14003b47f
cmp r15b, 0x54
jne 0x14003b4fd
lea esi, [rcx + 5]
xor ecx, ecx
mov r9, qword [rsp + 0x38]
mov r15, qword [rsp + 0x28]
mov rax, qword [rsp + 0x30]
add r14, rbp
cmp r14, rax
je 0x14003b4f3
mov r10, qword [rsp + 0x28]
mov r8d, dword [rsp + 0xc0]
jmp 0x140039448
cmp r15b, 0xd
je 0x140039e94
cmp r15b, 0xa
je 0x140039e94
mov eax, dword [rdi]
or qword [rdi + 8], 0xffffffffffffffff
and eax, 0xfffffc03
mov dword [rdi], eax
cmp r15b, 0x48
jne 0x14003b383
xor ecx, ecx
mov esi, 5
cmp qword [r12], rcx
je 0x140039e96
and eax, 0xfffe17ff
or eax, 0x1400
jmp 0x140039e30
cmp r15b, 0x54
jne 0x140039f17
mov eax, dword [rdi]
mov esi, 6
and eax, 0xfffffffd
or eax, ebp
jmp 0x140039f35
cmp r15b, 0x45
jne 0x14003b383
mov eax, dword [rdi]
mov esi, shutdown
and eax, 0x82fffffc
mov byte [rdi + 0x16], 2
bts eax, 0x19
mov dword [rdi], eax
jmp 0x140039e94
cmp r15b, 0xd
je 0x140039e94
cmp r15b, 0xa
je 0x140039e94
mov ecx, dword [rdi + 0x14]
and ecx, 0x8dffffff
or ecx, 0xd000000
jmp 0x14003b50c
cmp r15b, 0x54
jne 0x14003b4fd
mov esi, 7
jmp 0x140039e94
sub ecx, 7
je 0x140039fe2
sub ecx, 1
je 0x140039fce
sub ecx, 1
je 0x140039fa2
cmp ecx, 1
jne 0x14003b47f
cmp r15b, 0x2e
jne 0x14003ab6a
lea esi, [rcx + 0xa]
jmp 0x140039e94
mov r8d, 0x30
mov al, r15b
sub al, r8b
lea ecx, [r8 - 0x27]
cmp al, cl
ja 0x14003ab6a
movsx eax, r15b
lea esi, [rcx + 1]
sub ax, r8w
mov word [rdi + 0x10], ax
jmp 0x140039e94
cmp r15b, 0x2f
jne 0x14003b4fd
mov esi, 9
jmp 0x140039e94
cmp r15b, 0x50
jne 0x14003b4fd
mov esi, 8
jmp 0x140039e94
mov r8d, 0x30
mov al, r15b
sub al, r8b
lea ecx, [r8 - 0x27]
cmp al, cl
ja 0x14003ab6a
movsx eax, r15b
lea esi, [rcx + 3]
sub ax, r8w
mov word [rdi + 0x12], ax
jmp 0x140039e94
cmp ecx, 1
jne 0x14003b47f
xor ecx, ecx
cmp r15b, 0xd
jne 0x14003a09d
lea esi, [rcx + 0x11]
test rdx, rdx
je 0x140039e96
cmp qword [r12 + 0x10], rcx
je 0x14003a090
and dword [rdi], 0xfffe47ff
or dword [rdi], 0x4400
mov r8, r14
mov rcx, rdi
sub r8, rdx
call qword [r12 + select]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003a078
and eax, 0x88ffffff
mov dword [rdi + 4], ebx
bts eax, 0x1b
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b4d3
mov r11, qword [rsp + 0x48]
mov rdx, rcx
mov qword [rsp + 0x40], rcx
jmp 0x140039e96
cmp r15b, 0xa
jne 0x140039e96
mov esi, 0x2c
test rdx, rdx
je 0x140039e96
cmp qword [r12 + 0x10], rcx
je 0x14003a090
and dword [rdi], 0xfffeb3ff
or dword [rdi], 0xb000
jmp 0x14003a052
cmp r15b, 0x20
jne 0x14003a13b
mov esi, reloc.WS2_32.dll_ntohs
jmp 0x140039e94
movzx ecx, word [rdi + 0x14]
movzx eax, cx
shl ax, 2
add cx, ax
movsx eax, r15b
add cx, cx
sub cx, 0x30
add cx, ax
mov word [rdi + 0x14], cx
mov ecx, dword [rdi + 0x14]
cmp cx, 0x3e7
ja 0x14003a13e
jmp 0x140039e94
mov r8d, 0x30
mov al, r15b
sub al, r8b
lea ecx, [r8 - 0x27]
cmp al, cl
ja 0x14003a131
movsx eax, r15b
lea esi, [rcx + 5]
sub ax, r8w
mov word [rdi + 0x14], ax
jmp 0x140039e94
cmp r15b, 0x20
je 0x140039e94
mov ecx, dword [rdi + 0x14]
and ecx, 0x8fffffff
or ecx, 0xf000000
jmp 0x14003b50c
cmp r15b, 0x20
jne 0x14003ab6a
mov esi, reloc.WS2_32.dll_listen
jmp 0x140039e94
cmp r15b, 0xa
jne 0x14003b4fd
mov esi, 0x2c
jmp 0x140039e94
cmp ecx, 0x12
je 0x14003a3bf
cmp ecx, 0x13
je 0x14003a1f7
cmp ecx, 0x14
je 0x14003a1ce
lea eax, [rcx - 0x15]
cmp eax, 3
ja 0x14003b47f
cmp r15b, 0x20
ja 0x14003a1b0
movabs rcx, 0x100002400
bt rcx, r15
jb 0x14003b397
mov dl, r15b
mov ecx, esi
call fcn.14003bb2c
mov esi, eax
cmp eax, ebp
je 0x14003b397
mov rdx, qword [rsp + 0x40]
jmp 0x140039e94
cmp r15b, 0x20
je 0x140039e94
mov r8, qword [rsp + 0x50]
mov eax, 0x18
test r8, r8
cmove r8, r14
cmp byte [rdi + 0x16], 5
mov qword [rsp + 0x50], r8
cmove esi, eax
jmp 0x14003a1b0
xor r9d, r9d
test r15b, r15b
je 0x14003b3ab
movzx edx, byte [rdi + 0x16]
lea rax, [0x140000000]
mov rcx, qword [rax + rdx*8 + 0x129200]
cmp r15b, 0x20
jne 0x14003a238
mov r8d, dword [rdi]
mov eax, r8d
shr rax, 0x18
and eax, 0x7f
cmp byte [rax + rcx], r9b
jne 0x14003a238
lea esi, [r9 + 0x14]
jmp 0x14003a3a6
mov r8d, dword [rdi]
mov eax, r8d
shr rax, 0x18
and eax, 0x7f
cmp r15b, byte [rax + rcx]
je 0x14003a3a6
lea eax, [r15 - 0x41]
cmp al, 0x19
jbe 0x14003a261
cmp r15b, 0x2d
jne 0x14003b3ab
movzx ecx, word [rdi + 2]
mov eax, edx
shl eax, 0x10
and ecx, 0x7f00
or ecx, eax
movsx eax, r15b
or ecx, eax
mov eax, 0xa014f
cmp ecx, eax
ja 0x14003a328
je 0x14003a322
sub ecx, 0x30141
je 0x14003a319
sub ecx, 0x11
je 0x14003a310
sub ecx, 3
je 0x14003a307
sub ecx, 0x100fd
je 0x14003a2fe
sub ecx, 0xfef6
je 0x14003a2f5
sub ecx, 0x108
je 0x14003a2ec
sub ecx, 0x3fef9
je 0x14003a2e3
mov eax, 0x18
sub ecx, 0xffe4
je 0x14003a3a3
cmp ecx, eax
jne 0x14003b3ab
mov byte [rdi + 0x16], reloc.WS2_32.dll_socket
jmp 0x14003a3a6
mov byte [rdi + 0x16], 0x1f
jmp 0x14003a3a6
mov byte [rdi + 0x16], 8
jmp 0x14003a3a6
mov byte [rdi + reloc.WS2_32.dll_shutdown], 0x16
jmp 0x14003a3a6
mov byte [rdi + 0x16], 0x1d
jmp 0x14003a3a6
mov byte [rdi + 0x16], 4
jmp 0x14003a3a6
mov byte [rdi + 0x16], ntohs
jmp 0x14003a3a6
mov byte [rdi + 0x16], 0x1c
jmp 0x14003a3a6
mov byte [rdi + 0x16], listen
jmp 0x14003a3a6
sub ecx, 0xa0241
je 0x14003a39e
sub ecx, 0x100
je 0x14003a398
sub ecx, 0x2010f
je 0x14003a392
sub ecx, 0x2fdf2
je 0x14003a38c
sub ecx, 0x11
je 0x14003a386
sub ecx, 0xf6
je 0x14003a380
sub ecx, 0x4fef9
je 0x14003a37a
sub ecx, 0x5ff03
je 0x14003a374
cmp ecx, 0xa
jne 0x14003b3ab
mov byte [rdi + 0x16], 0x21
jmp 0x14003a3a6
mov byte [rdi + 0x16], ntohs
jmp 0x14003a3a6
mov byte [rdi + 0x16], select
jmp 0x14003a3a6
mov byte [rdi + 0x16], 0x20
jmp 0x14003a3a6
mov byte [rdi + 0x16], 0x1b
jmp 0x14003a3a6
mov byte [rdi + 0x16], reloc.WS2_32.dll_select
jmp 0x14003a3a6
mov byte [rdi + 0x16], reloc.WS2_32.dll_listen
jmp 0x14003a3a6
mov byte [rdi + 0x16], 0x1e
jmp 0x14003a3a6
mov eax, reloc.WS2_32.dll_setsockopt
mov byte [rdi + 0x16], al
lea eax, [r8 + 0x1000000]
xor eax, r8d
and eax, 0x7f000000
xor eax, r8d
mov dword [rdi], eax
jmp 0x14003a1c4
cmp r15b, 0xd
je 0x140039e94
cmp r15b, 0xa
je 0x140039e94
mov edx, dword [rdi]
mov al, r15b
or qword [rdi + 8], 0xffffffffffffffff
or al, 0x20
and edx, 0xfffffc03
sub al, 0x61
mov dword [rdi], edx
cmp al, 0x19
ja 0x14003b3ab
and edx, 0x81ffffff
movsx ecx, r15b
bts edx, 0x18
xor eax, eax
mov byte [rdi + 0x16], al
mov dword [rdi], edx
cmp ecx, 0x4d
jg 0x14003a464
je 0x14003a45e
sub ecx, 0x41
je 0x14003a458
sub ecx, 1
je 0x14003a452
sub ecx, 1
je 0x14003a44c
sub ecx, 1
je 0x14003a4b3
sub ecx, 3
je 0x14003a446
sub ecx, 1
je 0x14003a440
cmp ecx, 4
jne 0x14003b3ab
lea eax, [rcx + 5]
mov byte [rdi + 0x16], al
jmp 0x14003a4b3
mov byte [rdi + 0x16], 2
jmp 0x14003a4b3
mov byte [rdi + 0x16], bpl
jmp 0x14003a4b3
mov byte [rdi + 0x16], 5
jmp 0x14003a4b3
mov byte [rdi + 0x16], select
jmp 0x14003a4b3
mov byte [rdi + 0x16], shutdown
jmp 0x14003a4b3
mov byte [rdi + 0x16], 0xa
jmp 0x14003a4b3
sub ecx, 0x4e
je 0x14003a4af
sub ecx, 1
je 0x14003a4a9
sub ecx, 1
je 0x14003a4a3
sub ecx, 2
je 0x14003a49d
sub ecx, 1
je 0x14003a497
sub ecx, 1
je 0x14003a491
cmp ecx, 1
jne 0x14003b3ab
mov byte [rdi + 0x16], reloc.WS2_32.dll_ntohs
jmp 0x14003a4b3
mov byte [rdi + 0x16], 7
jmp 0x14003a4b3
mov byte [rdi + 0x16], 0x1a
jmp 0x14003a4b3
mov byte [rdi + 0x16], shutdown
jmp 0x14003a4b3
mov byte [rdi + 0x16], 3
jmp 0x14003a4b3
mov byte [rdi + 0x16], 6
jmp 0x14003a4b3
mov byte [rdi + 0x16], 0x19
xor ecx, ecx
mov esi, shutdown
cmp qword [r12], rcx
je 0x14003a565
and edx, 0xfffe4fff
or edx, 0x4c00
mov dword [rdi], edx
jmp 0x140039e32
cmp r15b, 0xa
je 0x14003a56f
cmp r15b, 0xd
je 0x14003a56f
cmp r15b, 0x20
jne 0x14003a1b0
mov rcx, qword [rsp + 0x50]
xor eax, eax
mov esi, 0x20
test rcx, rcx
je 0x140039e94
cmp qword [r12 + 8], rax
je 0x14003a55e
and dword [rdi], 0xfffe83ff
bts dword [rdi], 0xf
mov rdx, rcx
mov r8, r14
sub r8, rcx
mov rcx, rdi
call qword [r12 + reloc.WS2_32.dll_htonl]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003a544
and eax, 0x82ffffff
mov dword [rdi + 4], ebx
bts eax, 0x19
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b4d3
mov r11, qword [rsp + 0x48]
jmp 0x14003a560
xor ecx, ecx
mov qword [rsp + 0x50], rcx
mov rdx, qword [rsp + 0x40]
jmp 0x140039e96
mov rcx, qword [rsp + 0x50]
xor eax, eax
cmp r15b, 0xd
mov dword [rdi + 0x10], 0x90000
mov esi, eax
setne sil
add esi, 0x2b
test rcx, rcx
je 0x140039e94
cmp qword [r12 + 8], rax
je 0x14003a55e
and dword [rdi], 0xfffe03ff
shl esi, 0xa
or dword [rdi], esi
jmp 0x14003a51b
cmp r15b, 0x20
je 0x14003b3bd
movzx eax, r15b
lea rcx, [0x140000000]
mov dl, byte [rax + rcx + 0xff9b0]
test dl, dl
je 0x14003b3bd
mov r9, qword [rsp + 0x38]
mov esi, 0x2d
mov ecx, dword [rdi]
test r9, r9
movsx edx, dl
cmove r9, r14
mov qword [rsp + 0x38], r9
sub edx, 0x63
je 0x14003a62d
sub edx, 0xd
je 0x14003a61f
sub edx, 4
je 0x14003a611
cmp edx, 1
je 0x14003a605
and ecx, 0x8001ffff
jmp 0x14003a637
and ecx, 0x8011ffff
bts ecx, 0x14
jmp 0x14003a637
and ecx, 0x800fffff
or ecx, 0xe0000
jmp 0x14003a637
and ecx, 0x800bffff
or ecx, 0xa0000
jmp 0x14003a637
and ecx, 0x8003ffff
bts ecx, 0x11
mov rdx, qword [rsp + 0x40]
mov dword [rdi], ecx
xor ecx, ecx
jmp 0x140039e9b
mov esi, reloc.WS2_32.dll_gethostname
jmp 0x140039e94
sub ecx, 1
je 0x14003a6aa
sub ecx, 1
je 0x14003a676
cmp ecx, 1
jne 0x14003b47f
cmp r15b, 0xa
jne 0x14003b4fd
mov esi, 0x30
jmp 0x140039e94
cmp r15b, 0x20
je 0x140039e94
mov r9d, 9
cmp r15b, r9b
je 0x140039e94
cmp r15b, 0xd
jne 0x14003a69e
lea esi, [r9 + 0x26]
jmp 0x140039e94
cmp r15b, 0xa
jne 0x14003af2b
jmp 0x14003a66c
mov rdx, qword [rsp + 0x30]
mov r10, r14
mov rbx, r14
cmp r14, rdx
je 0x14003aa36
mov rcx, r14
mov r15b, byte [r14]
cmp r15b, 0x20
je 0x14003aa36
lea r8, [0x140000000]
movzx eax, r15b
mov r9b, byte [rax + r8 + 0xff9b0]
xor r8d, r8d
test r9b, r9b
je 0x14003aa36
mov edx, dword [rdi]
mov eax, edx
shr eax, 0x11
and eax, 0x7f
cmp eax, 5
ja 0x14003a8cb
je 0x14003a879
test eax, eax
je 0x14003a817
sub eax, 1
je 0x14003a7fc
sub eax, 1
je 0x14003a7d0
sub eax, 1
je 0x14003a792
cmp eax, 1
jne 0x14003aa1f
mov eax, 0x7f000000
lea ecx, [rdx + 0x1000000]
xor ecx, edx
and ecx, eax
xor ecx, edx
mov r8d, ecx
mov dword [rdi], ecx
and r8d, eax
cmp r8d, 0xa000000
ja 0x14003aa17
mov edx, ecx
lea rbx, [0x140000000]
mov eax, edx
shr rax, 0x18
and eax, 0x7f
cmp r9b, byte [rax + rbx + 0xffbd0]
jne 0x14003aa17
cmp r8d, 0x9000000
jne 0x14003aa1f
and edx, 0xff13ffff
or edx, 0x120000
jmp 0x14003aa13
lea eax, [rdx + 0x1000000]
xor eax, edx
and eax, 0x7f000000
xor eax, edx
cmp r9b, 0x6e
je 0x14003a7c0
cmp r9b, 0x74
je 0x14003a7b4
and eax, 0xff01ffff
jmp 0x14003a7c9
and eax, 0xff0dffff
or eax, 0xc0000
jmp 0x14003a7c9
and eax, 0xff09ffff
bts eax, 0x13
mov dword [rdi], eax
jmp 0x14003aa1f
lea ecx, [rdx + 0x1000000]
mov eax, r8d
and ecx, 0x7f000000
mov r8d, 0x60000
cmp r9b, 0x6e
cmove eax, r8d
and edx, 0x8001ffff
or ecx, eax
or ecx, edx
jmp 0x14003aa1d
lea ecx, [rdx + 0x1000000]
mov eax, r8d
and ecx, 0x7f000000
mov r8d, 0x40000
cmp r9b, 0x6f
jmp 0x14003a7e9
mov edx, dword [0x1401291f0]
mov rax, r13
sub rax, rcx
add rax, qword [rsp + 0xc8]
cmp rax, rdx
cmovb rdx, rax
lea rax, [rcx + 1]
add rdx, r13
cmp rax, rdx
jae 0x14003aa1f
lea r9, [0x140000000]
lea rcx, [r14 + 1]
cmp byte [rcx], 0x20
je 0x14003aa1f
movzx eax, byte [rcx]
cmp byte [rax + r9 + 0xff9b0], r8b
je 0x14003aa1f
lea rax, [rcx + 1]
mov r14, rcx
cmp rax, rdx
jae 0x14003aa1f
jmp 0x14003a849
mov eax, 0x7f000000
lea ecx, [rdx + 0x1000000]
xor ecx, edx
and ecx, eax
xor ecx, edx
mov r8d, ecx
mov dword [rdi], ecx
and r8d, eax
cmp r8d, 0x10000000
ja 0x14003aa17
mov edx, ecx
lea rbx, [0x140000000]
mov eax, edx
shr rax, 0x18
and eax, 0x7f
cmp r9b, byte [rax + rbx + 0xffbe0]
jne 0x14003aa17
cmp r8d, 0xf000000
jmp 0x14003a77b
cmp eax, 6
je 0x14003a9c0
cmp eax, 7
je 0x14003a967
cmp eax, 8
je 0x14003a903
jbe 0x14003aa1f
cmp eax, 0xa
jbe 0x14003a8f8
add eax, 0xfffffff3
cmp eax, ebp
ja 0x14003aa1f
and edx, 0xff01ffff
jmp 0x14003aa13
mov eax, 0x7f000000
lea ecx, [rdx + 0x1000000]
xor ecx, edx
and ecx, eax
xor ecx, edx
mov r8d, ecx
mov dword [rdi], ecx
and r8d, eax
cmp r8d, 0x7000000
ja 0x14003aa17
mov edx, ecx
lea rbx, [0x140000000]
mov eax, edx
shr rax, 0x18
and eax, 0x7f
cmp r9b, byte [rax + rbx + 0xffc20]
jne 0x14003aa17
cmp r8d, 0x6000000
jne 0x14003aa1f
and edx, 0xff1dffff
or edx, 0x1c0000
jmp 0x14003aa13
mov eax, 0x7f000000
lea ecx, [rdx + 0x1000000]
xor ecx, edx
and ecx, eax
xor ecx, edx
mov r8d, ecx
mov dword [rdi], ecx
and r8d, eax
cmp r8d, 0x11000000
ja 0x14003aa17
mov edx, ecx
lea rbx, [0x140000000]
mov eax, edx
shr rax, 0x18
and eax, 0x7f
cmp r9b, byte [rax + rbx + 0xffc08]
jne 0x14003aa17
cmp r8d, 0x10000000
jne 0x14003aa1f
and edx, 0xff1bffff
or edx, 0x1a0000
jmp 0x14003aa13
mov eax, 0x7f000000
lea ecx, [rdx + 0x1000000]
xor ecx, edx
and ecx, eax
xor ecx, edx
mov r8d, ecx
mov dword [rdi], ecx
and r8d, eax
cmp r8d, 0xe000000
ja 0x14003aa17
mov edx, ecx
lea rbx, [0x140000000]
mov eax, edx
shr rax, 0x18
and eax, 0x7f
cmp r9b, byte [rax + rbx + 0xffbf8]
jne 0x14003aa17
cmp r8d, 0xd000000
jne 0x14003aa1f
and edx, 0xff15ffff
or edx, 0x140000
mov dword [rdi], edx
jmp 0x14003aa1f
and ecx, 0xff01ffff
mov dword [rdi], ecx
mov rdx, qword [rsp + 0x30]
inc r14
mov rcx, r14
mov rbx, r14
cmp r14, rdx
jne 0x14003a6c1
cmp rbx, rdx
jne 0x14003aa77
lea r14, [rbx - 1]
mov ebx, dword [rsp + 0xb0]
mov eax, r14d
sub eax, r10d
add ebx, eax
cmp ebx, dword [0x1401291f0]
mov dword [rsp + 0xb0], ebx
jbe 0x14003a1c4
mov ecx, dword [rdi + 0x14]
mov edx, ebx
and ecx, 0x8cffffff
or ecx, 0xc000000
jmp 0x14003b513
mov edx, dword [rsp + 0xb0]
mov eax, r14d
sub eax, r10d
add edx, eax
cmp edx, dword [0x1401291f0]
mov dword [rsp + 0xb0], edx
ja 0x14003b3f1
cmp r15b, 0x3a
jne 0x14003b3dd
mov r9, qword [rsp + 0x38]
xor ecx, ecx
mov esi, 0x2e
test r9, r9
je 0x14003b37c
cmp qword [r12 + 0x18], rcx
je 0x14003ab19
and dword [rdi], 0xfffebbff
mov r8, rbx
or dword [rdi], 0xb800
sub r8, r9
mov rdx, r9
mov rcx, rdi
call qword [r12 + 0x18]
xor ecx, ecx
test eax, eax
je 0x14003aafe
mov eax, dword [rsp + 0xb0]
mov dword [rdi + 4], eax
mov eax, dword [rdi + 0x14]
and eax, 0x83ffffff
or eax, 0x3000000
mov dword [rdi + 0x14], eax
jmp 0x14003ab01
mov eax, dword [rdi + 0x14]
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b3d1
mov r11, qword [rsp + 0x48]
mov ebx, dword [rsp + 0xb0]
mov r9, rcx
mov qword [rsp + 0x38], rcx
mov rdx, qword [rsp + 0x40]
jmp 0x140039e9b
cmp r15b, 0xa
je 0x14003a16d
mov ecx, dword [rdi + 0x14]
and ecx, 0x97ffffff
or ecx, 0x17000000
jmp 0x14003b50c
cmp r15b, 0xd
jne 0x14003ab60
mov esi, 0x2b
jmp 0x140039e94
cmp r15b, 0xa
je 0x14003a16d
mov ecx, dword [rdi + 0x14]
and ecx, 0x8effffff
or ecx, 0xe000000
jmp 0x14003b50c
mov r8d, 0x30
mov al, r15b
sub al, r8b
lea ecx, [r8 - 0x27]
cmp al, cl
ja 0x14003ab6a
movsx eax, r15b
lea esi, [rcx + 0x21]
sub ax, r8w
mov word [rdi + 0x12], ax
jmp 0x140039e94
je 0x14003acaf
sub ecx, 0x20
je 0x14003ac78
sub ecx, 1
je 0x14003ac64
sub ecx, 1
je 0x14003ac50
sub ecx, 1
je 0x14003ac4a
sub ecx, 1
je 0x14003ac36
sub ecx, 1
je 0x14003ac22
sub ecx, 1
je 0x14003ac0e
cmp ecx, 1
jne 0x14003b47f
lea r8d, [rcx + 0x2f]
mov al, r15b
sub al, r8b
lea ecx, [r8 - 0x27]
cmp al, cl
ja 0x14003ab6a
movsx eax, r15b
lea esi, [rcx + 0x1f]
sub ax, r8w
mov word [rdi + 0x10], ax
jmp 0x140039e94
cmp r15b, 0x45
jne 0x14003b4fd
mov esi, 0x24
jmp 0x140039e94
cmp r15b, 0x43
jne 0x14003b4fd
mov esi, 0x26
jmp 0x140039e94
cmp r15b, 0x2f
jne 0x14003b4fd
mov esi, 0x27
jmp 0x140039e94
cmp r15b, 0x50
jmp 0x14003ac12
cmp r15b, 0x54
jne 0x14003b4fd
mov esi, 0x23
jmp 0x140039e94
cmp r15b, 0x54
jne 0x14003b4fd
mov esi, 0x22
jmp 0x140039e94
movsx ecx, r15b
sub ecx, 0x20
je 0x140039e94
sub ecx, 0x28
je 0x14003aca5
cmp ecx, 1
jne 0x14003b383
cmp byte [rdi + 0x16], 0x21
jne 0x14003b383
lea esi, [rcx + 0x24]
jmp 0x140039e94
mov esi, 0x21
jmp 0x140039e94
cmp r15b, 0x2e
jne 0x14003ab6a
mov esi, 0x29
jmp 0x140039e94
mov esi, 0x2e
jmp 0x140039e94
sub ecx, 1
je 0x14003ae1a
sub ecx, 1
je 0x14003aded
sub ecx, 1
je 0x14003ad81
sub ecx, 1
je 0x14003ad5e
cmp ecx, 1
jne 0x14003b47f
cmp r15b, 0xa
jne 0x14003b4fd
xor ecx, ecx
mov ebx, ecx
mov dword [rdi + 4], ecx
mov dword [rsp + 0xb0], ecx
cmp qword [rdi + 8], rcx
jne 0x14003ad1c
or dword [rdi], 0x40
lea esi, [rcx + 0x2c]
jmp 0x14003ad21
mov esi, 0x3b
cmp qword [r12 + 0x40], rcx
je 0x140039e96
and dword [rdi], 0xfffe03ff
mov rcx, rdi
shl esi, 0xa
or dword [rdi], esi
call qword [r12 + 0x40]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x140039e51
and eax, 0x89ffffff
mov dword [rdi + 4], ecx
or eax, 0x9000000
jmp 0x140039e4e
mov r9, qword [rsp + 0x38]
xor ecx, ecx
mov rax, qword [rsp + 0x30]
cmp r15b, 0xd
mov r15, qword [rsp + 0x28]
jne 0x140039ea5
lea esi, [rcx + 0x38]
jmp 0x140039ea5
cmp r15b, 0xd
jne 0x14003ad91
mov esi, gethostname
jmp 0x140039e94
movzx eax, r15b
lea rcx, [0x140000000]
mov dl, byte [rax + rcx + 0xffab0]
cmp dl, 0xff
jne 0x14003adc2
cmp r15b, 0x3b
je 0x14003adb8
cmp r15b, 0x20
jne 0x14003b405
mov esi, gethostname
jmp 0x14003a1c4
mov rcx, qword [rdi + 8]
movabs rax, 0xffffffffffffffe
cmp rcx, rax
ja 0x140039871
shl rcx, 4
movsx rax, dl
add rcx, rax
mov qword [rdi + 8], rcx
jmp 0x14003a1c4
movzx eax, r15b
lea rcx, [0x140000000]
mov cl, byte [rax + rcx + 0xffab0]
cmp cl, 0xff
je 0x14003b405
movsx rax, cl
mov esi, gethostname
mov qword [rdi + 8], rax
jmp 0x140039e94
cmp r15b, 0xa
jne 0x14003ab3c
mov esi, 0x33
jmp 0x140039e94
mov r10, qword [rsp + 0x28]
mov eax, ebp
shl eax, 0x11
xor ecx, ecx
xor eax, dword [rdi]
mov esi, 0x34
and eax, 0xfe0000
xor eax, dword [rdi]
mov dword [rdi], eax
test r10, r10
je 0x14003aec8
mov r9, qword [rsp + 0xb8]
cmp qword [r9 + 0x20], rcx
je 0x14003aeb5
and eax, 0xfffed3ff
mov r8, rbx
or eax, 0xd000
sub r8, r10
mov rdx, r10
mov dword [rdi], eax
mov rcx, rdi
call qword [r9 + 0x20]
xor ecx, ecx
test eax, eax
je 0x14003ae9a
mov eax, dword [rsp + 0xb0]
mov dword [rdi + 4], eax
mov eax, dword [rdi + 0x14]
and eax, 0x84ffffff
bts eax, 0x1a
mov dword [rdi + 0x14], eax
jmp 0x14003ae9d
mov eax, dword [rdi + 0x14]
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b437
mov rdx, qword [rsp + 0x30]
mov r15, rcx
mov qword [rsp + 0x28], rcx
jmp 0x14003aecb
mov r15, qword [rsp + 0x28]
xor ecx, ecx
jmp 0x14003aecb
mov r15, r10
and dword [rdi], 0xff01ffff
and ebp, 0x7f
shl ebp, 0x11
or dword [rdi], ebp
cmp rbx, rdx
jne 0x14003aee2
lea r14, [rbx - 1]
mov ebx, dword [rsp + 0xb0]
mov eax, r14d
sub eax, r12d
add ebx, eax
cmp ebx, dword [0x1401291f0]
mov dword [rsp + 0xb0], ebx
ja 0x14003aa61
mov r12, qword [rsp + 0xb8]
mov ebp, 1
mov r9, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
jmp 0x140039ea0
mov r9d, 9
mov ecx, dword [rdi]
test r10, r10
mov dl, r15b
mov esi, 0x32
cmove r10, r14
and ecx, 0x80ffffff
mov eax, ecx
mov qword [rsp + 0x28], r10
shr eax, 0x11
or dl, 0x20
and eax, 0x7f
mov dword [rdi], ecx
sub eax, r9d
je 0x14003b00c
sub eax, 1
je 0x14003afd2
sub eax, 2
je 0x14003afa3
sub eax, 1
je 0x14003afb7
sub eax, 1
je 0x14003af97
mov r9, qword [rsp + 0x38]
cmp eax, 2
mov rax, qword [rsp + 0x30]
mov r15, r10
mov rdx, qword [rsp + 0x40]
je 0x14003b068
and ecx, 0xff01ffff
jmp 0x14003b066
and ecx, 0xff01ffff
bts ecx, 7
mov dword [rdi], ecx
mov r9, qword [rsp + 0x38]
mov r15, r10
mov rdx, qword [rsp + 0x40]
xor ecx, ecx
jmp 0x140039ea0
cmp dl, 0x63
jne 0x14003afca
and ecx, 0xff1fffff
or ecx, 0x1e0000
jmp 0x14003afa1
and ecx, 0xff01ffff
jmp 0x14003afa1
mov al, r15b
mov r8d, 0x30
sub al, r8b
cmp al, r9b
ja 0x140039871
bt ecx, 9
jb 0x14003b443
movsx eax, r15b
and ecx, 0xff17ffff
sub eax, r8d
cdqe
or ecx, 0x160200
mov qword [rdi + 8], rax
jmp 0x14003afa1
cmp dl, 0x6b
jne 0x14003b01f
and ecx, 0xff23ffff
or ecx, 0x220000
jmp 0x14003afa1
cmp dl, 0x63
jne 0x14003b035
and ecx, 0xff25ffff
or ecx, 0x240000
jmp 0x14003afa1
mov r9, qword [rsp + 0x38]
cmp dl, 0x75
mov rdx, qword [rsp + 0x40]
mov r15, r10
mov rax, qword [rsp + 0x30]
jne 0x14003b05a
and ecx, 0xff27ffff
or ecx, 0x260000
jmp 0x14003b066
and ecx, 0xff29ffff
or ecx, 0x280000
mov dword [rdi], ecx
xor ecx, ecx
jmp 0x140039ea5
sub ecx, 1
je 0x14003b103
cmp ecx, 1
jne 0x14003b47f
mov rcx, rdi
call fcn.14003b780
xor ecx, ecx
test eax, eax
je 0x14003b09f
mov eax, dword [rdi]
and al, 3
neg al
sbb esi, esi
and esi, 0xfffffff2
add esi, 0x12
jmp 0x14003b0a1
mov esi, ebp
cmp qword [r12 + 0x38], rcx
je 0x14003b0e7
and dword [rdi], 0xfffe03ff
mov rcx, rdi
shl esi, 0xa
or dword [rdi], esi
call qword [r12 + gethostname]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b0d4
and eax, 0x87ffffff
mov dword [rdi + 4], ebx
or eax, 0x7000000
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b4d3
cmp dword [rdi + 0x14], ecx
jge 0x140039e64
and dword [rdi], 0xfffe03ff
shl esi, 0xa
or dword [rdi], esi
mov dword [rdi + 4], ebx
jmp 0x14003b4d3
mov rax, qword [rsp + 0x30]
xor ecx, ecx
mov r15, qword [rsp + 0x28]
test r11, r11
mov r9, qword [rsp + 0x38]
cmove r11, r14
mov qword [rsp + 0x48], r11
lea r14, [rax - 1]
jmp 0x140039ea5
cmp r15b, 0xa
jne 0x14003b4fd
xor ecx, ecx
mov dword [rdi + 4], ecx
mov ebx, ecx
mov dword [rsp + 0xb0], ecx
lea esi, [rcx + 0x35]
cmp qword [r12 + 0x48], rcx
je 0x140039e96
and dword [rdi], 0xfffed7ff
mov rcx, rdi
or dword [rdi], 0xd400
call qword [r12 + 0x48]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x140039e51
and eax, 0x8affffff
mov dword [rdi + 4], ecx
or eax, 0xa000000
jmp 0x140039e4e
cmp r15b, 0xd
jne 0x14003b4fd
xor ecx, ecx
mov esi, 0x3d
test r11, r11
je 0x140039e96
cmp qword [r12 + 0x30], rcx
je 0x14003b1ec
and dword [rdi], 0xfffef7ff
mov r8, r14
or dword [rdi], 0xf400
sub r8, r11
mov rdx, r11
mov rcx, rdi
call qword [r12 + 0x30]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b1d9
and eax, 0x86ffffff
mov dword [rdi + 4], ebx
or eax, 0x6000000
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b4d3
mov r11, rcx
mov qword [rsp + 0x48], rcx
jmp 0x14003a565
mov rdx, qword [rdi + 8]
mov rcx, r13
mov r15, qword [rsp + 0x28]
sub rcx, r14
add rcx, r9
mov rax, rdx
mov r9, qword [rsp + 0x38]
cmp rdx, rcx
cmovae rax, rcx
xor ecx, ecx
test r11, r11
cmove r11, r14
sub rdx, rax
lea r14, [r14 - 1]
mov qword [rdi + 8], rdx
mov rdx, qword [rsp + 0x40]
lea r14, [r14 + rax]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x48], r11
jne 0x140039ea5
lea esi, [rcx + 0x3c]
jmp 0x140039ea5
cmp r15b, 0xa
jne 0x14003b4fd
mov ebx, dword [rdi]
xor esi, esi
mov ecx, ebx
mov dword [rdi + 4], esi
shr ecx, 2
mov edx, ecx
mov dword [rsp + 0xb0], esi
and edx, ebp
jne 0x14003b283
mov rax, qword [rdi + 8]
add rax, rbp
test rax, 0xfffffffffffffffe
mov eax, esi
je 0x14003b285
mov eax, ebp
cmp dword [rdi + 0x14], esi
jge 0x14003b2c2
cmp byte [rdi + 0x16], 5
je 0x14003b29f
and ecx, 0x40
jne 0x14003b29f
xor ecx, ecx
test eax, eax
jne 0x14003b338
mov rcx, rdi
call fcn.14003b780
test eax, eax
je 0x14003b490
mov eax, ebx
and al, 3
neg al
sbb ecx, ecx
and ecx, 0xfffffff2
add ecx, 0x12
jmp 0x14003b492
and ecx, 0x40
je 0x14003b336
mov rcx, rdi
call fcn.14003b780
xor ecx, ecx
test eax, eax
je 0x14003b2e5
mov eax, ebx
and al, 3
neg al
sbb esi, esi
and esi, 0xfffffff2
add esi, 0x12
jmp 0x14003b2e7
mov esi, ebp
cmp qword [r12 + 0x38], rcx
je 0x14003b32f
shl esi, 0xa
and ebx, 0xfffe03ff
or ebx, esi
mov rcx, rdi
mov dword [rdi], ebx
call qword [r12 + gethostname]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b31c
and eax, 0x87ffffff
mov dword [rdi + 4], ecx
or eax, 0x7000000
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b4d3
mov ebx, ecx
jmp 0x140039e64
xor ecx, ecx
test edx, edx
je 0x14003b34d
mov esi, gethostname
mov ebx, dword [rsp + 0xb0]
jmp 0x14003a565
cmp qword [rdi + 8], rcx
je 0x14003b2c7
cmp qword [rdi + 8], 0xffffffffffffffff
je 0x14003b365
mov esi, 0x3e
jmp 0x14003b341
mov rcx, rdi
call fcn.1400392ac
xor ecx, ecx
test eax, eax
je 0x14003b2c7
lea esi, [rcx + 0x3f]
jmp 0x14003b32f
mov ebx, edx
jmp 0x14003ab28
mov ecx, dword [rdi + 0x14]
and ecx, 0x9cffffff
or ecx, 0x1c000000
jmp 0x14003b50c
mov ecx, dword [rdi + 0x14]
and ecx, 0x91ffffff
or ecx, 0x11000000
jmp 0x14003b50c
mov ecx, dword [rdi + 0x14]
and ecx, 0x90ffffff
bts ecx, 0x1c
jmp 0x14003b50c
mov ecx, dword [rdi + 0x14]
and ecx, 0x98ffffff
or ecx, 0x18000000
jmp 0x14003b50c
sub rbx, r13
lea rax, [rbx + rbp]
jmp 0x1400393cd
mov ecx, dword [rdi + 0x14]
and ecx, 0x98ffffff
or ecx, 0x18000000
jmp 0x14003b513
mov ecx, dword [rdi + 0x14]
and ecx, 0x8cffffff
or ecx, 0xc000000
jmp 0x14003b513
mov ecx, dword [rdi + 0x14]
and ecx, 0x9bffffff
or ecx, 0x1b000000
jmp 0x14003b50c
and dword [rdi], 0xff01ffff
and ebp, 0x7f
shl ebp, 0x11
or dword [rdi], ebp
jmp 0x140039871
sub rbx, r13
mov rax, rbx
jmp 0x1400393cd
sub rbx, r13
lea rax, [rbx + 1]
jmp 0x1400393cd
mov ecx, dword [rdi + 0x14]
and ecx, 0x9affffff
or ecx, 0x1a000000
jmp 0x14003b50c
and dword [rdi + 0x14], 0x85ffffff
or dword [rdi + 0x14], 0x5000000
and dword [rdi], 0xfffeebff
or dword [rdi], 0xe800
mov dword [rdi + 4], ebx
sub r14, r13
mov rax, r14
jmp 0x1400393cd
mov ecx, dword [rdi + 0x14]
and ecx, 0x9dffffff
or ecx, 0x1d000000
jmp 0x14003b50c
mov ecx, ebp
cmp qword [r12 + 0x38], rsi
je 0x14003b4df
shl ecx, 0xa
and ebx, 0xfffe03ff
or ebx, ecx
mov rcx, rdi
mov dword [rdi], ebx
call qword [r12 + gethostname]
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b4c5
and eax, 0x87ffffff
mov dword [rdi + 4], esi
or eax, 0x7000000
mov dword [rdi + 0x14], eax
mov ebx, dword [rdi]
mov ecx, ebx
shr ecx, 0xa
test eax, 0x7f000000
je 0x14003b4df
sub r14, r13
lea rax, [r14 + rbp]
jmp 0x1400393cd
shl ecx, 0xa
xor ecx, ebx
mov dword [rdi + 4], esi
and ecx, 0x1fc00
xor ecx, ebx
mov dword [rdi], ecx
jmp 0x14003b4d3
mov rbp, qword [rsp + 0xc8]
jmp 0x14003b543
mov ecx, dword [rdi + 0x14]
and ecx, 0x9effffff
or ecx, 0x1e000000
mov edx, dword [rsp + 0xb0]
mov dword [rdi + 0x14], ecx
test ecx, 0x7f000000
jne 0x14003b52a
and dword [rdi + 0x14], 0xa0ffffff
bts dword [rdi + 0x14], 0x1d
and dword [rdi], 0xfffe03ff
and esi, 0x7f
shl esi, 0xa
or dword [rdi], esi
mov dword [rdi + 4], edx
jmp 0x14003b474
mov r15, r10
test r9, r9
je 0x14003b59a
cmp qword [r12 + 0x18], rcx
je 0x14003b59a
and dword [rdi], 0xfffe03ff
and esi, 0x7f
mov r8, r14
shl esi, 0xa
or dword [rdi], esi
sub r8, r9
mov rdx, r9
mov rcx, rdi
call qword [r12 + 0x18]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b587
and eax, 0x83ffffff
mov dword [rdi + 4], ebx
or eax, 0x3000000
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test eax, 0x7f000000
jne 0x14003b474
test r15, r15
je 0x14003b5f5
cmp qword [r12 + 0x20], rcx
je 0x14003b5f5
and dword [rdi], 0xfffe03ff
and esi, 0x7f
mov r8, r14
shl esi, 0xa
or dword [rdi], esi
sub r8, r15
mov rdx, r15
mov rcx, rdi
call qword [r12 + 0x20]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b5dd
and eax, 0x84ffffff
mov dword [rdi + 4], ebx
bts eax, 0x1a
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
mov r15d, 0x7f000000
shr esi, 0xa
and esi, 0x7f
test r15d, eax
je 0x14003b5fb
jmp 0x14003b474
mov r15d, 0x7f000000
mov rax, qword [rsp + 0x50]
test rax, rax
je 0x14003b654
cmp qword [r12 + 8], rcx
je 0x14003b654
and dword [rdi], 0xfffe03ff
and esi, 0x7f
mov r8, r14
shl esi, 0xa
or dword [rdi], esi
sub r8, rax
mov rdx, rax
mov rcx, rdi
call qword [r12 + reloc.WS2_32.dll_htonl]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b643
and eax, 0x82ffffff
mov dword [rdi + 4], ebx
bts eax, 0x19
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test r15d, eax
jne 0x14003b474
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x14003b6ab
cmp qword [r12 + 0x30], rcx
je 0x14003b6ab
and dword [rdi], 0xfffe03ff
and esi, 0x7f
mov r8, r14
shl esi, 0xa
or dword [rdi], esi
sub r8, rdx
mov rcx, rdi
call qword [r12 + 0x30]
xor ecx, ecx
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b69a
and eax, 0x86ffffff
mov dword [rdi + 4], ebx
or eax, 0x6000000
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
and esi, 0x7f
test r15d, eax
jne 0x14003b474
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x14003b6fc
cmp qword [r12 + 0x10], rcx
je 0x14003b6fc
and dword [rdi], 0xfffe03ff
and esi, 0x7f
mov r8, r14
shl esi, 0xa
or dword [rdi], esi
sub r8, rdx
mov rcx, rdi
call qword [r12 + select]
test eax, eax
mov eax, dword [rdi + 0x14]
je 0x14003b6ee
and eax, 0x88ffffff
mov dword [rdi + 4], ebx
bts eax, 0x1b
mov dword [rdi + 0x14], eax
mov esi, dword [rdi]
shr esi, 0xa
test r15d, eax
jne 0x14003b474
and dword [rdi], 0xfffe03ff
and esi, 0x7f
shl esi, 0xa
mov rax, rbp
or dword [rdi], esi
mov dword [rdi + 4], ebx
jmp 0x1400393cd
mov rcx, qword [rcx + 0x80]
mov r9, r8
mov r8, rdx
lea rdx, [0x14012dc60]
jmp 0x140039310