Function at 0x140022500
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x108]
sub rsp, 0x208
mov r12d, dword [rcx]
xor r11d, r11d
mov rbx, qword [r8]
mov esi, 0xfffffffe
mov r10d, r12d
mov dword [rbp - 0x2c], r11d
shr r10d, 9
mov r8d, r12d
and r10d, 1
shr r8d, 0xb
mov dword [rbp + 0x7c], r10d
and r8d, 1
xor r10d, 1
mov dword [rbp - 0x40], r11d
mov dword [rbp + 0x80], r10d
mov rdi, r9
mov r9, qword [rdx]
xor r10d, r10d
mov ecx, r12d
mov dword [rbp - 0x68], r12d
and ecx, 1
mov dword [rbp + 0x4c], r11d
mov edx, r11d
mov dword [rbp + 0x18], ecx
mov eax, r11d
mov dword [rbp + 0x20], r11d
mov qword [rbp - 0x70], r9
mov r15d, r11d
mov qword [rbp + 0x98], r9
mov r13d, r10d
mov dword [rbp - 0x74], edx
mov dword [rbp + 0x40], r11d
mov qword [rbp - 0x80], rbx
mov qword [rbp + 0x10], rax
mov qword [rbp - 0x38], r11
mov qword [rbp + 0x50], r11
mov qword [rbp + 8], r11
mov dword [rbp - 0x78], r8d
mov dword [rbp - 0x60], r10d
mov dword [rbp], r10d
mov dword [rbp - 0x28], r10d
mov dword [rbp - 0x20], r10d
mov dword [rbp - 0x64], esi
mov dword [rbp - 0x24], esi
mov dword [rbp - 0x30], esi
mov dword [rbp - 0x5c], esi
mov qword [rbp + 0x88], r9
jmp 0x140022600
mov rax, qword [rbp + 0x10]
mov r15, qword [rbp - 0x38]
xor r10d, r10d
nop dword [rax + rax]
movzx r14d, byte [rbx]
test r14d, r14d
jne 0x14002261d
test rax, rax
je 0x14002261d
mov qword [rbp - 0x80], rax
mov rbx, rax
movzx r14d, byte [rax]
mov qword [rbp + 0x10], r10
mov r11, qword [rbp + 0x1a0]
mov r10, qword [rbp + 0x1a8]
movsxd rcx, dword [r11 + 0x6c]
add rcx, qword [r11 + 0x20]
test r10, r10
je 0x140022701
lea rax, [rcx - 0x64]
cmp r9, rax
ja 0x140026a7a
cmp r9, qword [rbp + 0x88]
mov eax, 0x7fffffeb
mov edx, dword [r10]
cmovb r9, qword [rbp + 0x88]
sub eax, edx
movsxd rcx, eax
mov rax, r9
sub rax, qword [rbp + 0x88]
mov qword [rbp - 0x70], r9
cmp rcx, rax
jl 0x140026dde
mov eax, r9d
sub eax, dword [rbp + 0x88]
add eax, edx
mov dword [r10], eax
test r15, r15
je 0x1400226ea
mov rcx, qword [rbp + 0x98]
cmp r15, rcx
jbe 0x1400226f5
mov r8, r9
mov rdx, r15
sub r8, r15
call fcn.14001cb10
mov rcx, qword [rbp + 0x98]
mov r9, qword [rbp - 0x70]
mov rax, rcx
mov rbx, qword [rbp - 0x80]
sub rax, r15
mov r11, qword [rbp + 0x1a0]
add r9, rax
mov r8d, dword [rbp - 0x78]
mov r15, rcx
mov r10, qword [rbp + 0x1a8]
mov edx, dword [rbp - 0x74]
mov qword [rbp - 0x70], r9
mov qword [rbp + 0x88], r9
mov qword [rbp - 0x38], rcx
jmp 0x14002270b
mov r9, qword [rbp + 0x98]
mov qword [rbp - 0x70], r9
mov edx, dword [rbp - 0x74]
mov qword [rbp + 0x88], r9
jmp 0x14002270b
cmp qword [r11 + 0x40], rcx
ja 0x140026df4
test r14d, r14d
je 0x1400227d9
cmp r14d, 0x5c
jne 0x140022743
cmp byte [rbx + 1], 0x45
jne 0x140022743
mov rdi, qword [rbp + 0x168]
xor r10d, r10d
mov rax, qword [rbp + 0x10]
inc rbx
mov edx, r10d
inc rbx
mov dword [rbp - 0x74], edx
mov qword [rbp - 0x80], rbx
jmp 0x140022600
test edx, edx
je 0x1400227bb
mov rdx, qword [rbp + 0x50]
test rdx, rdx
je 0x14002277d
test r10, r10
jne 0x140022777
movzx eax, byte [rdx + 3]
movzx ecx, byte [rdx + 2]
shl ecx, 8
or ecx, eax
sub ebx, ecx
sub ebx, dword [r11 + 0x30]
mov eax, ebx
mov byte [rdx + 5], bl
sar eax, 8
mov byte [rdx + 4], al
mov rbx, qword [rbp - 0x80]
xor eax, eax
mov qword [rbp + 0x50], rax
bt r12d, 0xe
jae case.0x140022ae4.12
mov eax, ebx
mov word [r9], 0xff76
sub eax, dword [r11 + 0x30]
lea r10, [r9 + 6]
sar eax, 8
mov byte [r9 + 2], al
sub bl, byte [r11 + 0x30]
mov byte [r9 + 3], bl
mov word [r9 + 4], 0
mov rbx, qword [rbp - 0x80]
mov qword [rbp + 0x50], r9
jmp 0x140022bc0
cmp r14d, 0x5c
jne 0x1400227d9
cmp byte [rbx + 1], 0x51
jne 0x1400227d9
mov ecx, 1
inc rbx
mov edx, ecx
mov dword [rbp - 0x74], ecx
jmp 0x140026a60
mov r15d, r12d
and r15d, 8
je 0x140022903
mov rcx, qword [r11 + 0x18]
mov rsi, rbx
mov rdx, rbx
test byte [r14 + rcx], 1
je 0x140022815
nop word [rax + rax]
inc rbx
mov qword [rbp - 0x80], rbx
mov rdx, rbx
movzx r14d, byte [rbx]
test byte [r14 + rcx], 1
jne 0x140022800
cmp r14d, 0x23
jne 0x1400228ec
lea rbx, [rdx + 1]
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0
je 0x1400228ec
mov edx, dword [r11 + 0xb4]
lea rdi, [r11 + 0xb8]
mov rcx, qword [r11 + 0x38]
test edx, edx
je 0x140022880
cmp rbx, rcx
jae 0x14002286d
mov dword [rsp + 0x20], r8d
mov r9, rdi
mov r8, rcx
mov rcx, rbx
call fcn.14003afa0
mov rbx, qword [rbp - 0x80]
test eax, eax
je 0x14002286d
mov eax, 1
jmp 0x14002286f
xor eax, eax
mov r11, qword [rbp + 0x1a0]
test eax, eax
jne 0x1400228db
mov r8d, dword [rbp - 0x78]
jmp 0x1400228a9
movsxd rdx, dword [rdi]
sub rcx, rdx
cmp rbx, rcx
ja 0x1400228a9
movzx eax, byte [r11 + 0xbc]
cmp byte [rbx], al
jne 0x1400228a9
cmp edx, 1
je 0x1400228db
movzx eax, byte [r11 + 0xbd]
cmp byte [rbx + 1], al
je 0x1400228db
inc rbx
mov qword [rbp - 0x80], rbx
test r8d, r8d
je 0x1400228d0
movzx eax, byte [rbx]
and al, 0xc0
cmp al, 0x80
jne 0x1400228d0
nop
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
and al, 0xc0
cmp al, 0x80
je 0x1400228c0
cmp byte [rbx], 0
jne 0x140022830
jmp 0x1400228e5
movsxd rax, dword [rdi]
add rbx, rax
mov qword [rbp - 0x80], rbx
mov rdi, qword [rbp + 0x168]
mov r9, qword [rbp - 0x70]
cmp rbx, rsi
mov esi, dword [rbp - 0x64]
mov r8d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
ja 0x1400225f0
cmp r14d, 0x28
jne 0x14002295b
cmp byte [rbx + 1], 0x3f
jne 0x1400229fd
cmp byte [rbx + 2], 0x23
jne 0x1400229fd
add rbx, 3
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
je 0x140022942
nop dword [rax]
cmp al, 0x29
je 0x14002294d
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
jne 0x140022930
mov dword [rdi], reloc.WS2_32.dll_select
jmp 0x140026dfb
cmp byte [rbx], 0
je 0x140022942
mov r15, qword [rbp - 0x38]
jmp 0x140026a59
cmp r14d, 0x2a
je 0x140022a66
cmp r14d, 0x2b
je 0x140022a66
cmp r14d, 0x3f
je 0x140022a66
cmp r14d, 0x7b
jne 0x1400229fd
movzx eax, byte [rbx + 1]
lea rcx, [rbx + 1]
sub al, 0x30
cmp al, 9
ja 0x1400229fd
movzx eax, byte [rcx + 1]
inc rcx
cmp al, 0x30
jb 0x1400229b6
movzx edx, al
nop dword [rax + rax]
movzx eax, dl
cmp dl, 0x39
ja 0x1400229b6
movzx eax, byte [rcx + 1]
inc rcx
movzx edx, al
cmp al, 0x30
jae 0x1400229a0
cmp al, 0x7d
je 0x140022a66
cmp al, 0x2c
jne 0x1400229fd
movzx eax, byte [rcx + 1]
cmp al, 0x7d
je 0x140022a66
sub al, 0x30
cmp al, 9
ja 0x1400229fd
movzx eax, byte [rcx + 2]
add rcx, 2
cmp al, 0x30
jb 0x1400229f9
movzx edx, al
movzx eax, dl
cmp dl, 0x39
ja 0x1400229f9
movzx eax, byte [rcx + 1]
inc rcx
movzx edx, al
cmp al, 0x30
jae 0x1400229e3
cmp al, 0x7d
je 0x140022a66
mov r10, qword [rbp + 0x50]
xor r8d, r8d
mov rax, qword [rbp + 0x10]
mov edx, r8d
test r10, r10
je 0x140022a6f
mov r8, qword [rbp + 0x1a8]
test rax, rax
jne 0x140022a76
mov ecx, dword [rbp + 0x4c]
mov eax, ecx
dec ecx
mov dword [rbp + 0x4c], ecx
test eax, eax
jg 0x140022ae6
test r8, r8
jne 0x140022a59
movzx eax, byte [r10 + 3]
movzx ecx, byte [r10 + 2]
shl ecx, 8
or ecx, eax
sub ebx, ecx
sub ebx, dword [r11 + 0x30]
mov eax, ebx
mov byte [r10 + 5], bl
sar eax, 8
mov byte [r10 + 4], al
mov rbx, qword [rbp - 0x80]
mov rax, qword [rbp + 0x10]
xor r10d, r10d
mov qword [rbp + 0x50], r10
jmp 0x140022a79
mov rax, qword [rbp + 0x10]
mov edx, 1
mov r8, qword [rbp + 0x1a8]
xor r10d, r10d
bt r12d, 0xe
jae 0x140022ab9
test edx, edx
jne 0x140022ab9
test rax, rax
jne 0x140022ab9
mov word [r9], 0xff76
mov eax, ebx
sub eax, dword [r11 + 0x30]
sar eax, 8
mov byte [r9 + 2], al
sub bl, byte [r11 + 0x30]
mov byte [r9 + 3], bl
mov word [r9 + 4], dx
mov rbx, qword [rbp - 0x80]
mov qword [rbp + 0x50], r9
add r9, 6
mov qword [rbp - 0x70], r9
cmp r14d, 0x7c
ja case.0x140022ae4.12
lea rcx, [0x140000000]
movzx eax, byte [rcx + r14 + 0x26e50]
mov ecx, dword [rcx + rax*4 + 0x26e1c]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rax, qword [rbp + 0x10]
jmp 0x140022a76
mov qword [rbp - 0x38], r10
mov r15, r10
test r12b, 2
je 0x140022b10
cmp dword [rbp - 0x5c], 0xfffffffe
jne 0x140022b0a
mov eax, 0xffffffff
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x24], eax
mov byte [r9], 0x1c
jmp 0x140022b14
mov byte [r9], 0x1b
mov rbx, qword [rbp - 0x80]
inc r9
mov qword [rbp - 0x70], r9
mov r8d, dword [rbp - 0x78]
inc rbx
mov edx, dword [rbp - 0x74]
mov rdi, qword [rbp + 0x168]
mov rax, qword [rbp + 0x10]
mov qword [rbp - 0x80], rbx
jmp 0x140022600
test r12b, 2
mov qword [rbp - 0x38], r10
mov r15, r10
setne al
add al, 0x19
mov byte [r9], al
jmp 0x140022b14
mov r10d, dword [rbp - 0x5c]
mov eax, 0xffffffff
mov r14, qword [r11 + 0x40]
cmp r10d, 0xfffffffe
mov r13d, dword [rbp - 0x28]
mov r15, r9
mov esi, dword [rbp - 0x30]
cmove r10d, eax
sub r14, qword [r11 + 0x20]
mov eax, dword [rbp - 0x20]
mov dword [rbp], eax
mov eax, r12d
shr eax, 2
and al, 1
mov qword [rbp - 0x38], r9
or al, 0xc
mov dword [rbp - 0x5c], r10d
mov byte [r9], al
inc r9
mov qword [rbp - 0x70], r9
mov dword [rbp - 0x24], r10d
mov dword [rbp - 0x60], r13d
mov dword [rbp - 0x64], esi
mov qword [rbp + 8], r14
jmp 0x140026a55
test dword [r11 + 0x90], 0x2000000
jne 0x140026a8f
mov r10, qword [rbp - 0x70]
mov ecx, dword [rbp - 0x78]
mov r9d, 1
mov byte [rbp - 0x10], r14b
test ecx, ecx
je 0x140023e0a
cmp r14d, 0xc0
jb 0x140023e0a
movzx eax, byte [rbx + 1]
and al, 0xc0
cmp al, 0x80
jne 0x140023e0a
inc rbx
mov ecx, r9d
mov qword [rbp - 0x80], rbx
inc r9d
movzx eax, byte [rbx]
mov byte [rbp + rcx - 0x10], al
movzx eax, byte [rbx + 1]
and al, 0xc0
cmp al, 0x80
je 0x140022bf0
mov r14, qword [r11 + 0x40]
mov r15, r10
sub r14, qword [r11 + 0x20]
mov qword [rbp + 8], r14
mov qword [rbp - 0x38], r10
jmp 0x140023e25
lea rcx, [rbx + 1]
mov r8d, 6
lea rdx, [0x1400f9020]
call fcn.1400d3900
test eax, eax
jne 0x140022c49
lea rbx, str._b__w_
jmp 0x140022c6d
mov rcx, qword [rbp - 0x80]
lea rdx, str._:_:__
inc rcx
mov r8d, 6
call fcn.1400d3900
test eax, eax
jne 0x140022c8d
lea rbx, str._b___w_
mov rax, qword [rbp - 0x80]
mov r9, qword [rbp - 0x70]
add rax, 7
mov r8d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
mov qword [rbp + 0x10], rax
mov qword [rbp - 0x80], rbx
jmp 0x1400225f4
mov rax, qword [rbp + 0x1a0]
mov r14, qword [rbp - 0x70]
mov rbx, qword [rbp - 0x80]
mov r15, r14
mov qword [rbp - 0x38], r14
mov r10, qword [rax + 0x40]
sub r10, qword [rax + 0x20]
movzx r9d, byte [rbx + 1]
mov qword [rbp + 8], r10
cmp r9b, 0x3d
ja 0x140022d14
movabs rcx, 0x2400400000000000
bt rcx, r9
jae 0x140022d14
movzx ecx, byte [rbx + 2]
lea rdx, [rbx + 2]
test cl, cl
je 0x140022d14
cmp cl, 0x5c
jne 0x140022cea
movzx eax, byte [rdx + 1]
sub al, cl
cmp al, 1
ja 0x140022cfa
inc rdx
jmp 0x140022d09
cmp cl, 0x5b
jne 0x140022cf5
cmp byte [rdx + 1], r9b
jmp 0x140022cf8
cmp cl, 0x5d
je 0x140022d14
cmp cl, r9b
jne 0x140022d09
cmp byte [rdx + 1], 0x5d
je 0x140026a9a
movzx ecx, byte [rdx + 1]
inc rdx
test cl, cl
jne 0x140022cd6
xor eax, eax
mov ecx, eax
mov dword [rbp - 0x54], eax
mov eax, 1
inc rbx
mov qword [rbp - 0x80], rbx
movzx edi, byte [rbx]
cmp edi, 0x5c
jne 0x140022d64
cmp byte [rbx + 1], 0x45
lea rcx, [rbx + 1]
jne 0x140022d41
mov ecx, dword [rbp - 0x54]
inc rbx
jmp 0x140022d20
mov r8d, 3
lea rdx, [0x1400f9030]
call fcn.1400d3900
mov rbx, qword [rbp - 0x80]
test eax, eax
jne 0x140022dce
mov ecx, dword [rbp - 0x54]
add rbx, 3
jmp 0x140022d1b
test ecx, ecx
jne 0x140022d74
cmp edi, 0x5e
jne 0x140022d74
mov ecx, eax
mov dword [rbp - 0x54], eax
jmp 0x140022d20
cmp edi, 0x5d
jne 0x140022dce
mov r11, qword [rbp + 0x1a0]
test dword [r11 + 0x90], 0x2000000
je 0x140022dd5
mov r9, qword [rbp - 0x70]
test ecx, ecx
mov r11d, dword [rbp - 0x5c]
mov ecx, reloc.WS2_32.dll_listen
mov eax, 0x9d
cmovne eax, ecx
mov byte [r9], al
inc r9
mov eax, 0xffffffff
mov qword [rbp - 0x70], r9
cmp r11d, 0xfffffffe
cmove r11d, eax
mov eax, dword [rbp - 0x20]
mov dword [rbp - 0x5c], r11d
mov dword [rbp], eax
mov dword [rbp - 0x24], r11d
jmp 0x140026a55
mov r11, qword [rbp + 0x1a0]
xor r10d, r10d
lea rax, [r14 + 4]
mov dword [rbp - 0x3c], r10d
xorps xmm0, xmm0
mov qword [rbp - 0x48], rax
mov r8d, r10d
mov qword [rbp - 0x18], rax
mov r9, rax
mov dword [rbp - 0x50], r10d
mov r12d, r10d
mov dword [rbp - 0x58], r10d
mov r13d, r10d
mov dword [rbp - 0x64], r10d
movups xmmword [rbp + 0x58], xmm0
movups xmmword [rbp + 0x68], xmm0
test edi, edi
je 0x140026af7
mov r10d, dword [rbp - 0x78]
nop word [rax + rax]
mov esi, r13d
mov r15d, r12d
mov r14d, r12d
test r10d, r10d
je 0x140022f12
cmp edi, 0xc0
jb 0x140022f12
movzx edi, byte [rbx]
cmp edi, 0xc0
jb 0x140022f12
test dil, 0x20
jne 0x140022e6e
movzx ecx, byte [rbx + 1]
inc rbx
and edi, 0x1f
mov qword [rbp - 0x80], rbx
and ecx, 0x3f
mov eax, edi
shl eax, 6
jmp 0x140022f0e
movzx ecx, byte [rbx + 1]
and ecx, 0x3f
shl ecx, 6
test dil, 0x10
jne 0x140022e95
movzx eax, byte [rbx + 2]
lea rdx, [rbx + 2]
and eax, 0x3f
and edi, 0xf
or ecx, eax
mov eax, edi
shl eax, 0xc
jmp 0x140022f07
movzx eax, byte [rbx + 2]
and eax, 0x3f
or ecx, eax
shl ecx, 6
test dil, 8
jne 0x140022ebe
movzx eax, byte [rbx + 3]
lea rdx, [rbx + 3]
and eax, 0x3f
and edi, 7
or ecx, eax
mov eax, edi
shl eax, 0x12
jmp 0x140022f07
movzx eax, byte [rbx + 3]
and eax, 0x3f
or ecx, eax
shl ecx, 6
test dil, 4
jne 0x140022ee7
movzx eax, byte [rbx + 4]
lea rdx, [rbx + 4]
and eax, 0x3f
and edi, 3
or ecx, eax
mov eax, edi
shl eax, 0x18
jmp 0x140022f07
movzx eax, byte [rbx + 4]
lea rdx, [rbx + 5]
and eax, 0x3f
and edi, 1
or ecx, eax
movzx eax, byte [rdx]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, edi
shl eax, 0x1e
mov qword [rbp - 0x80], rdx
mov rbx, rdx
mov edi, ecx
or edi, eax
mov rax, qword [rbp - 0x48]
mov ecx, 1
cmp rax, r9
cmova r8d, ecx
mov rcx, qword [rbp + 0x1a8]
mov dword [rbp - 0x60], r8d
test rcx, rcx
je 0x140022f40
cmp rax, r9
jbe 0x140022f40
sub eax, r9d
mov qword [rbp - 0x48], r9
add dword [rcx], eax
mov edx, dword [rbp - 0x74]
test edx, edx
je 0x140022f6b
cmp edi, 0x5c
jne 0x140023864
cmp byte [rbx + 1], 0x45
jne 0x140023864
xor r11d, r11d
mov ecx, r11d
inc rbx
mov dword [rbp - 0x74], ecx
jmp 0x140023b8c
cmp edi, 0x5b
jne 0x14002333b
movzx r9d, byte [rbx + 1]
movabs r13, 0x2400400000000000
cmp r9b, 0x3d
ja 0x140023857
bt r13, r9
jae 0x140023857
movzx edx, byte [rbx + 2]
lea r13, [rbx + 2]
mov r8, r13
test dl, dl
je 0x140022fe7
cmp dl, 0x5c
jne 0x140022fbb
movzx eax, byte [r8 + 1]
sub al, dl
cmp al, 1
ja 0x140022fcb
inc r8
jmp 0x140022fdb
cmp dl, 0x5b
jne 0x140022fc6
cmp byte [r8 + 1], r9b
jmp 0x140022fc9
cmp dl, 0x5d
je 0x140022fe7
cmp dl, r9b
jne 0x140022fdb
cmp byte [r8 + 1], 0x5d
je 0x140023099
movzx edx, byte [r8 + 1]
inc r8
test dl, dl
jne 0x140022fa6
mov rcx, qword [rbp + 0x28]
xor edx, edx
mov eax, edx
lea r8d, [rdx + 1]
test eax, eax
je 0x14002384a
mov r15, qword [r11 + 0x10]
cmp r9b, 0x3a
jne 0x140026ab0
mov qword [rbp - 0x80], r13
movzx r12d, byte [r13]
cmp r12b, 0x5e
jne 0x140023023
inc r13
mov dword [rbp - 0x3c], r8d
mov qword [rbp - 0x80], r13
mov r14d, ecx
lea rdi, [0x1400f7d00]
sub r14d, r13d
lea rcx, [0x140000000]
mov ebx, edx
mov rsi, rdx
nop dword [rax]
movzx eax, byte [rsi + rcx + 0xf7ce8]
cmp r14d, eax
jne 0x140023066
mov r8d, r14d
mov rdx, rdi
mov rcx, r13
call fcn.1400d3900
test eax, eax
je 0x1400230b0
lea rcx, [0x140000000]
movzx eax, byte [rsi + rcx + 0xf7ce8]
inc rdi
inc rsi
add rdi, rax
inc ebx
cmp byte [rsi + rcx + 0xf7ce8], 0
jne 0x140023040
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x1e
mov rbx, qword [rbp - 0x80]
jmp 0x140026dfb
mov rcx, r8
xor edx, edx
mov r8d, 1
mov qword [rbp + 0x28], rcx
mov eax, r8d
jmp 0x140022ff3
test ebx, ebx
js 0x140023083
mov edx, dword [rbp - 0x68]
xor edi, edi
test dl, 1
je 0x1400230c7
cmp ebx, 2
jg 0x1400230c7
mov ebx, edi
mov esi, edi
bt edx, 0x1d
jae 0x140023207
cmp r12b, 0x5e
mov eax, edi
mov ecx, reloc.WS2_32.dll_ntohl
cmove eax, ecx
lea rcx, [0x140000000]
add eax, ebx
cdqe
mov rcx, qword [rcx + rax*8 + 0x22fd80]
test rcx, rcx
je 0x140023125
mov r8, qword [rbp + 0x28]
lea rbx, [rcx - 1]
mov r12d, dword [rbp - 0x50]
inc r8
mov r13d, dword [rbp - 0x58]
xor r11d, r11d
mov r9, qword [rbp - 0x18]
mov r10d, dword [rbp - 0x78]
mov ecx, dword [rbp - 0x74]
mov qword [rbp + 0x10], r8
mov r8d, dword [rbp - 0x60]
jmp 0x140023b8f
sub ebx, 8
je 0x14002319c
sub ebx, 1
je 0x140023195
cmp ebx, 1
je 0x14002318e
mov r14, qword [rbp + 0x28]
cmp r12b, 0x5e
jne 0x14002320b
cmp dword [rbp - 0x60], 0
jne 0x140023153
cmp byte [r14 + 2], 0x5d
je 0x14002320b
mov rax, qword [rbp - 0x48]
mov ecx, 0x100
mov byte [rax], 2
mov rdx, qword [rbp - 0x48]
inc rdx
mov qword [rbp - 0x48], rdx
call fcn.14003b320
mov rdx, qword [rbp - 0x48]
mov ecx, 0x10ffff
mov eax, eax
add rdx, rax
mov qword [rbp - 0x48], rdx
call fcn.14003b320
mov eax, eax
add qword [rbp - 0x48], rax
jmp 0x14002320b
mov edx, reloc.WS2_32.dll_listen
jmp 0x1400231a1
mov edx, ntohl
jmp 0x1400231a1
mov edx, ntohl
mov rax, qword [rbp - 0x48]
cmp r12b, 0x5e
mov rbx, qword [rbp + 0x28]
mov r12d, dword [rbp - 0x50]
sete cl
mov r13d, dword [rbp - 0x58]
add cl, 3
mov byte [rax], cl
mov rax, qword [rbp - 0x48]
inc rax
mov qword [rbp - 0x48], rax
mov byte [rax], dl
mov rax, qword [rbp - 0x48]
inc rax
mov qword [rbp - 0x48], rax
mov byte [rax], 0
inc qword [rbp - 0x48]
inc rbx
mov r8d, dword [rbp - 0x60]
mov eax, 1
mov r9, qword [rbp - 0x18]
mov r15d, eax
mov edx, dword [rbp - 0x68]
mov r14d, eax
mov r10d, dword [rbp - 0x78]
xor r11d, r11d
mov ecx, dword [rbp - 0x74]
mov dword [rbp - 0x64], eax
jmp 0x140023b99
mov r14, qword [rbp + 0x28]
lea rcx, [rsi + rsi*2]
lea rdx, [0x140000000]
movsxd rax, dword [rdx + rcx*4 + 0xf7d60]
mov r9d, dword [rdx + rcx*4 + 0xf7d64]
mov r10d, dword [rdx + rcx*4 + 0xf7d68]
movups xmm0, xmmword [rax + r15]
movups xmm1, xmmword [rax + r15 + 0x10]
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm1
test r9d, r9d
js 0x1400232a0
mov r8d, edi
test r10d, r10d
js 0x140023280
nop dword [rax]
nop dword [rax + rax]
mov edx, r8d
lea eax, [r9 + r8]
movzx eax, byte [rax + r15]
inc r8d
or byte [rbp + rdx + 0xa0], al
cmp r8d, 0x20
jb 0x140023260
jmp 0x1400232a8
lea eax, [r9 + r8]
mov edx, r8d
movzx eax, byte [rax + r15]
inc r8d
not al
and byte [rbp + rdx + 0xa0], al
cmp r8d, 0x20
jb 0x140023280
jmp 0x1400232a5
test r10d, r10d
jns 0x1400232a8
neg r10d
cmp r10d, 1
jne 0x1400232b7
and byte [rbp + 0xa1], 0xc3
jmp 0x1400232c4
cmp r10d, 2
jne 0x1400232c4
and byte [rbp + 0xab], 0x7f
mov rcx, rdi
mov edx, 0x20
cmp r12b, 0x5e
jne 0x1400232f0
movzx eax, byte [rbp + rcx + 0xa0]
lea rcx, [rcx + 1]
not al
or byte [rbp + rcx + 0x57], al
sub rdx, 1
jne 0x1400232d2
jmp 0x140023306
movzx eax, byte [rbp + rcx + 0xa0]
or byte [rbp + rcx + 0x58], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1400232f0
lea rbx, [r14 + 1]
mov r13d, 2
mov r14d, 1
mov dword [rbp - 0x58], r13d
mov r12d, r14d
mov dword [rbp - 0x50], r14d
mov r8d, dword [rbp - 0x60]
xor r11d, r11d
mov r9, qword [rbp - 0x18]
mov edx, dword [rbp - 0x68]
mov r10d, dword [rbp - 0x78]
mov ecx, dword [rbp - 0x74]
jmp 0x140023b95
cmp edi, 0x5c
jne 0x140023864
mov ebx, dword [rbp - 0x68]
lea rdx, [rbp + 0x48]
mov r9d, dword [r11 + 0x70]
lea rcx, [rbp - 0x80]
mov r8, qword [rbp + 0x168]
mov eax, 1
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
call fcn.140020e90
mov r11, qword [rbp + 0x168]
mov edi, eax
cmp dword [r11], 0
jne 0x140023090
test eax, eax
jne 0x140023396
mov edi, dword [rbp + 0x48]
mov rbx, qword [rbp - 0x80]
mov r10d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
jmp 0x14002386b
cmp edi, 5
jne 0x1400233b0
mov rbx, qword [rbp - 0x80]
mov edi, 8
mov r10d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
jmp 0x14002386b
cmp edi, 0xc
je 0x140026acf
cmp edi, 0x1a
jne 0x1400233fa
mov rbx, qword [rbp - 0x80]
cmp byte [rbx + 1], 0x5c
jne 0x1400233d7
cmp byte [rbx + 2], 0x45
jne 0x1400233d7
add rbx, 2
jmp 0x140023b7a
mov r8d, dword [rbp - 0x60]
mov r14d, 1
mov r9, qword [rbp - 0x18]
mov ecx, r14d
mov edx, dword [rbp - 0x68]
xor r11d, r11d
mov r10d, dword [rbp - 0x78]
mov dword [rbp - 0x74], ecx
jmp 0x140023b95
cmp edi, 0x19
je 0x140023b76
mov r8, qword [rbp + 0x1a0]
inc r12d
add r13d, 2
mov dword [rbp - 0x50], r12d
add eax, 0xfffffffa
mov dword [rbp - 0x58], r13d
mov rdx, qword [r8 + 0x10]
cmp eax, 0x1c
ja case.0x14002343d.12
lea r9, [0x140000000]
cdqe
mov ecx, dword [r9 + rax*4 + 0x26ed0]
add rcx, r9
jmp rcx
mov rax, qword [rbp - 0x80]
mov r12d, r14d
mov qword [rbp + 0x10], rax
lea eax, [rdi - 0x1d]
movsxd rcx, eax
mov dword [rbp - 0x50], r14d
mov rbx, qword [r9 + rcx*8 + 0x22fd50]
dec rbx
jmp 0x140023b7a
lea rax, [rbp + 0x58]
mov r8d, 0x20
sub rdx, rax
lea rcx, [rbp + 0x58]
nop word [rax + rax]
movzx eax, byte [rdx + rcx + 0x40]
or byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x140023480
jmp 0x140023b76
mov r14d, 1
lea rax, [rbp + 0x58]
mov dword [rbp - 0x3c], r14d
lea rcx, [rbp + 0x58]
sub rdx, rax
lea r8d, [r14 + 0x1f]
nop
movzx eax, byte [rcx + rdx + 0x40]
lea rcx, [rcx + 1]
not al
or byte [rcx - 1], al
sub r8, r14
jne 0x1400234b0
mov rbx, qword [rbp - 0x80]
jmp 0x140023321
lea rax, [rbp + 0x58]
mov r8d, 0x20
sub rdx, rax
lea rcx, [rbp + 0x58]
nop dword [rax]
movzx eax, byte [rdx + rcx + 0xa0]
or byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x1400234e0
jmp 0x140023b76
mov r14d, 1
lea rax, [rbp + 0x58]
mov dword [rbp - 0x3c], r14d
lea rcx, [rbp + 0x58]
sub rdx, rax
lea r8d, [r14 + 0x1f]
movzx eax, byte [rcx + rdx + 0xa0]
lea rcx, [rcx + 1]
not al
or byte [rcx - 1], al
sub r8, r14
jne 0x140023512
mov rbx, qword [rbp - 0x80]
jmp 0x140023321
lea rax, [rbp + 0x58]
mov r8d, 0x20
sub rdx, rax
lea rcx, [rbp + 0x58]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
or byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x140023550
jmp 0x140023b76
mov r14d, 1
lea rax, [rbp + 0x58]
mov dword [rbp - 0x3c], r14d
lea rcx, [rbp + 0x58]
sub rdx, rax
lea r8d, [r14 + 0x1f]
nop
movzx eax, byte [rdx + rcx]
lea rcx, [rcx + 1]
not al
or byte [rcx - 1], al
sub r8, r14
jne 0x140023580
mov rbx, qword [rbp - 0x80]
jmp 0x140023321
mov edx, dword [reloc.WS2_32.dll_htons]
lea rdi, [0x1400f9b70]
cmp edx, 0xffffffff
jae 0x140023b76
mov r14d, dword [rbp - 0x68]
mov r13, r8
xor r11d, r11d
nop dword [rax + rax]
mov rbx, r11
cmp edx, 0xffffffff
je 0x140023601
lea rcx, [rdi + 4]
lea eax, [rdx + 1]
cmp dword [rcx], eax
jne 0x1400235e0
inc eax
lea rcx, [rcx + 4]
inc rbx
cmp dword [rcx], eax
je 0x1400235d3
mov eax, dword [rdi + rbx*4]
lea rcx, [rbp + 0x58]
mov dword [rsp + 0x28], eax
mov r9, r13
mov dword [rsp + 0x20], edx
mov r8d, r14d
lea rdx, [rbp - 0x48]
call fcn.1400201e0
xor r11d, r11d
lea rdi, [rdi + rbx*4]
add rdi, 4
mov edx, dword [rdi]
cmp edx, 0xffffffff
jb 0x1400235c0
mov r13d, dword [rbp - 0x58]
mov rbx, qword [rbp - 0x80]
jmp 0x140023b7d
lea rax, [0x1400f9b70]
mov r9, r8
mov qword [rsp + 0x20], rax
mov r8d, ebx
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0x58]
call fcn.14001fdb0
jmp 0x140023b76
mov edx, dword [reloc.WS2_32.dll_ioctlsocket]
lea rdi, [0x1400f9bc0]
cmp edx, 0xffffffff
jae 0x140023b76
mov r14d, dword [rbp - 0x68]
mov r13, r8
xor r11d, r11d
mov rbx, r11
cmp edx, 0xffffffff
je 0x1400236ae
lea rcx, [rdi + 4]
lea eax, [rdx + 1]
cmp dword [rcx], eax
jne 0x14002368d
nop dword [rax]
nop dword [rax + rax]
inc eax
lea rcx, [rcx + 4]
inc rbx
cmp dword [rcx], eax
je 0x140023680
mov eax, dword [rdi + rbx*4]
lea rcx, [rbp + 0x58]
mov dword [rsp + 0x28], eax
mov r9, r13
mov dword [rsp + 0x20], edx
mov r8d, r14d
lea rdx, [rbp - 0x48]
call fcn.1400201e0
xor r11d, r11d
lea rdi, [rdi + rbx*4]
add rdi, 4
mov edx, dword [rdi]
cmp edx, 0xffffffff
jb 0x140023661
mov r13d, dword [rbp - 0x58]
mov rbx, qword [rbp - 0x80]
jmp 0x140023b7d
lea rax, [0x1400f9bc0]
jmp 0x140023624
mov rbx, qword [rbp - 0x80]
inc rbx
movzx eax, byte [rbx]
test al, al
je 0x140023720
xor r15d, r15d
mov esi, r15d
cmp al, 0x7b
jne 0x140023736
cmp byte [rbx + 1], 0x5e
lea rax, [rbx + 1]
mov ecx, r15d
cmove rbx, rax
sete sil
movzx eax, byte [rbx + 1]
inc rbx
test al, al
je 0x140023720
cmp al, 0x7d
je 0x14002372c
mov byte [rbp + rcx + 0xc0], al
inc rcx
cmp rcx, 0x1f
jl 0x140023701
mov dword [r11], 0x2e
jmp 0x140026dfb
mov byte [rbp + rcx + 0xc0], r15b
jmp 0x140023743
mov byte [rbp + 0xc0], al
mov byte [rbp + 0xc1], sil
mov r9d, dword [0x1400f913c]
mov r10d, r15d
mov qword [rbp - 0x80], rbx
test r9d, r9d
jle 0x1400237c8
lea r12, [0x140000000]
nop dword [rax]
lea r8d, [r10 + r9]
sar r8d, 1
movsxd rax, r8d
lea r11, [rax + rax*2]
movzx edx, word [r12 + r11*2 + 0xf96c0]
lea rax, [0x1400f91b0]
add rdx, rax
lea rax, [rbp + 0xc0]
sub rdx, rax
nop dword [rax + rax]
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x1400237a4
inc rax
test cl, cl
jne 0x140023790
mov ecx, r15d
jmp 0x1400237a9
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x1400237d4
lea eax, [r8 + 1]
cmovle r9d, r8d
cmovle eax, r10d
mov r10d, eax
cmp eax, r9d
jl 0x140023760
mov r11, qword [rbp + 0x168]
mov dword [r11], 0x2f
jmp 0x140026dfb
movzx edx, byte [r12 + r11*2 + 0xf96c2]
cmp edi, 0x10
movzx r8d, byte [r12 + r11*2 + 0xf96c4]
mov eax, r15d
sete al
mov dword [rbp - 0x50], r14d
cmp eax, esi
mov r12d, r14d
mov rax, qword [rbp - 0x48]
sete cl
add cl, 3
mov byte [rax], cl
mov rax, qword [rbp - 0x48]
inc rax
mov qword [rbp - 0x48], rax
mov byte [rax], dl
mov rax, qword [rbp - 0x48]
inc rax
mov qword [rbp - 0x48], rax
mov byte [rax], r8b
inc qword [rbp - 0x48]
mov rbx, qword [rbp - 0x80]
jmp 0x1400231df
mov r12d, dword [rbp - 0x68]
mov rbx, qword [rbp - 0x80]
test r12b, 0x40
jne 0x140026ac3
movzx edi, byte [rbx]
mov r10d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
jmp 0x14002386f
mov edx, dword [rbp - 0x74]
movabs r13, 0x2400400000000000
mov r11, qword [rbp + 0x168]
mov r12d, dword [rbp - 0x68]
jmp 0x140023879
mov r11, qword [rbp + 0x168]
mov r12d, dword [rbp - 0x68]
movabs r13, 0x2400400000000000
cmp byte [rbx + 1], 0x5c
jne 0x14002389d
xor ecx, ecx
cmp byte [rbx + 2], 0x45
lea rax, [rbx + 2]
jne 0x14002389a
mov qword [rbp - 0x80], rax
mov edx, ecx
cmp byte [rax + 1], 0x5c
mov rbx, rax
je 0x140023881
mov dword [rbp - 0x74], edx
mov rcx, rbx
cmp edi, 0xd
je 0x1400238aa
cmp edi, 0xa
jne 0x1400238be
mov r14, qword [rbp + 0x1a0]
or dword [r14 + 0x94], 0x800
jmp 0x1400238c5
mov r14, qword [rbp + 0x1a0]
test edx, edx
jne 0x140023b25
cmp byte [rbx + 1], 0x2d
jne 0x140023b25
add rbx, 2
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x5c
jne 0x1400238f7
cmp byte [rbx + 1], 0x45
jne 0x14002394c
add rbx, 2
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x5c
je 0x1400238e4
mov r8d, 1
movzx eax, byte [rbx]
test al, al
je 0x140023b1e
test edx, edx
jne 0x140023914
cmp al, 0x5d
je 0x140023b1e
mov dword [rbp - 0x50], eax
mov r9d, eax
test r10d, r10d
je 0x140023a2b
cmp eax, 0xc0
jb 0x140023a2b
test r9b, 0x20
jne 0x14002398d
movzx eax, byte [rbx + 1]
inc rbx
and r9d, 0x1f
mov qword [rbp - 0x80], rbx
shl r9d, 6
jmp 0x140023a1e
cmp byte [rbx], 0x5c
jne 0x1400238f7
cmp byte [rbx + 1], 0x51
jne 0x1400238f7
add rbx, 2
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x5c
jne 0x14002397c
cmp byte [rbx + 1], 0x45
jne 0x14002397c
add rbx, 2
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x5c
je 0x140023951
jmp 0x1400238f7
mov r8d, 1
mov edx, r8d
mov dword [rbp - 0x74], edx
jmp 0x1400238fd
movzx ecx, byte [rbx + 1]
and ecx, 0x3f
shl ecx, 6
test r9b, 0x10
jne 0x1400239ad
and r9d, 0xf
lea rdx, [rbx + 2]
mov eax, r9d
shl eax, 0xc
jmp 0x140023a0b
movzx eax, byte [rbx + 2]
and eax, 0x3f
or ecx, eax
shl ecx, 6
test r9b, 8
jne 0x1400239cf
and r9d, 7
lea rdx, [rbx + 3]
mov eax, r9d
shl eax, 0x12
jmp 0x140023a0b
movzx eax, byte [rbx + 3]
and eax, 0x3f
or ecx, eax
shl ecx, 6
test r9b, 4
jne 0x1400239f1
and r9d, 3
lea rdx, [rbx + 4]
mov eax, r9d
shl eax, 0x18
jmp 0x140023a0b
movzx eax, byte [rbx + 4]
lea rdx, [rbx + 5]
and eax, 0x3f
and r9d, 1
or ecx, eax
mov eax, r9d
shl ecx, 6
shl eax, 0x1e
mov r9d, ecx
mov rbx, rdx
or r9d, eax
movzx eax, byte [rdx]
mov qword [rbp - 0x80], rdx
mov edx, dword [rbp - 0x74]
and eax, 0x3f
or r9d, eax
mov dword [rbp - 0x50], r9d
mov eax, r9d
test edx, edx
jne 0x140023aeb
cmp eax, 0x5c
jne 0x140023a84
mov r9d, dword [r14 + 0x70]
lea rdx, [rbp - 0x50]
mov dword [rsp + 0x28], r8d
lea rcx, [rbp - 0x80]
mov r8, r11
mov dword [rsp + 0x20], r12d
call fcn.140020e90
mov r11, qword [rbp + 0x168]
cmp dword [r11], 0
jne 0x140023090
mov rbx, qword [rbp - 0x80]
test eax, eax
je 0x140023a7e
cmp eax, 5
jne 0x140026adf
lea r9d, [rax + 3]
jmp 0x140023ae4
mov r9d, dword [rbp - 0x50]
jmp 0x140023ae4
cmp eax, 0x5b
jne 0x140023aeb
movzx r10d, byte [rbx + 1]
cmp r10b, 0x3d
ja 0x140023ae7
bt r13, r10
jae 0x140023ae7
movzx ecx, byte [rbx + 2]
lea rdx, [rbx + 2]
test cl, cl
je 0x140023ae4
cmp cl, 0x5c
jne 0x140023aba
movzx eax, byte [rdx + 1]
sub al, cl
cmp al, 1
ja 0x140023aca
inc rdx
jmp 0x140023ad9
cmp cl, 0x5b
jne 0x140023ac5
cmp byte [rdx + 1], r10b
jmp 0x140023ac8
cmp cl, 0x5d
je 0x140023ae4
cmp cl, r10b
jne 0x140023ad9
cmp byte [rdx + 1], 0x5d
je 0x140026adf
movzx ecx, byte [rdx + 1]
inc rdx
test cl, cl
jne 0x140023aa6
mov edx, dword [rbp - 0x74]
mov r10d, dword [rbp - 0x78]
cmp r9d, edi
jb 0x140026aeb
je 0x140023b25
mov r13d, 2
mov dword [rbp - 0x58], r13d
cmp r9d, 0xd
je 0x140023b0c
cmp r9d, 0xa
jne 0x140023b17
or dword [r14 + 0x94], 0x800
mov dword [rsp + 0x28], r9d
jmp 0x140023b57
mov rbx, rcx
mov qword [rbp - 0x80], rcx
mov dword [rbp - 0x58], esi
mov r13d, esi
cmp esi, 2
jge 0x140023b38
lea r13d, [rsi + 1]
mov dword [rbp - 0x58], r13d
test edx, edx
jne 0x140023b53
cmp dword [rbp - 0x64], edx
jne 0x140023b53
cmp r13d, 1
jne 0x140023b53
inc rbx
cmp byte [rbx], 0x5d
je 0x140023d0b
mov dword [rsp + 0x28], edi
mov r9, r14
mov dword [rsp + 0x20], edi
mov r8d, r12d
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0x58]
call fcn.1400201e0
lea r12d, [r15 + rax]
mov dword [rbp - 0x50], r12d
mov rbx, qword [rbp - 0x80]
xor r11d, r11d
mov ecx, dword [rbp - 0x74]
mov r10d, dword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov r8d, dword [rbp - 0x60]
mov edx, dword [rbp - 0x68]
mov r14d, 1
mov r15d, dword [rbp - 0x64]
mov rsi, qword [rbp + 0x10]
inc rbx
mov qword [rbp - 0x80], rbx
movzx edi, byte [rbx]
test edi, edi
jne 0x140023bcb
test rsi, rsi
je 0x140026af7
lea rbx, [rsi + 1]
mov qword [rbp + 0x10], r11
mov qword [rbp - 0x80], rbx
movzx edi, byte [rbx]
test edi, edi
je 0x140026af7
mov r11, qword [rbp + 0x1a0]
cmp edi, 0x5d
jne 0x140022e20
test ecx, ecx
jne 0x140022e20
cmp qword [rbp - 0x48], r9
mov ecx, 0xffffffff
mov eax, dword [rbp - 0x5c]
mov r13d, dword [rbp - 0x28]
cmova r8d, r14d
mov esi, dword [rbp - 0x30]
cmp eax, 0xfffffffe
mov r10d, dword [rbp - 0x3c]
cmove eax, ecx
mov dword [rbp - 0x60], r13d
mov ecx, dword [rbp - 0x20]
mov dword [rbp - 0x5c], eax
mov dword [rbp], ecx
mov dword [rbp - 0x24], eax
mov dword [rbp - 0x64], esi
test r8d, r8d
je 0x140023e87
test r15d, r15d
jne 0x140023c34
test r10d, r10d
je 0x140023c34
bt edx, 0x1d
jae 0x140023e87
cmp dword [rbp - 0x78], 0
mov r14d, dword [rbp - 0x54]
je 0x140023c87
test r10d, r10d
je 0x140023c87
test r14d, r14d
jne 0x140023c87
bt edx, 0x1d
jb 0x140023c87
mov rax, qword [rbp - 0x48]
mov ecx, 0x100
mov byte [rax], 2
mov rdx, qword [rbp - 0x48]
inc rdx
mov qword [rbp - 0x48], rdx
call fcn.14003b320
mov rdx, qword [rbp - 0x48]
mov ecx, 0x10ffff
mov eax, eax
add rdx, rax
mov qword [rbp - 0x48], rdx
call fcn.14003b320
mov eax, eax
add qword [rbp - 0x48], rax
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x70]
mov byte [rax], 0
inc qword [rbp - 0x48]
test r14d, r14d
mov byte [rcx], reloc.WS2_32.dll_WSASetLastError
setne al
mov byte [rcx + 3], al
test r15d, r15d
je 0x140023cac
or al, 4
mov byte [rcx + 3], al
test r12d, r12d
jle 0x140023e5c
or byte [rcx + 3], 2
lea rbx, [rcx + 4]
mov r8, qword [rbp - 0x48]
lea rcx, [rbx + 0x20]
sub r8, rbx
mov rdx, rbx
call fcn.14001cb10
test r14d, r14d
je 0x140023cef
test r15d, r15d
jne 0x140023cef
lea rcx, [rbp + 0x58]
mov edx, 0x20
not byte [rcx]
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140023ce3
movups xmm0, xmmword [rbp + 0x58]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rbp + 0x68]
movups xmmword [rbx + 0x10], xmm1
mov r9, qword [rbp - 0x48]
add r9, 0x20
jmp 0x140023e60
cmp dword [rbp - 0x54], 0
mov r13d, dword [rbp - 0x28]
mov esi, dword [rbp - 0x30]
mov dword [rbp - 0x60], r13d
mov dword [rbp - 0x64], esi
mov qword [rbp - 0x80], rbx
je 0x140023de1
mov r11d, dword [rbp - 0x5c]
mov eax, 0xffffffff
cmp r11d, 0xfffffffe
cmove r11d, eax
mov dword [rbp - 0x5c], r11d
mov dword [rbp - 0x24], r11d
test r10d, r10d
je 0x140023da3
test r12b, 1
je 0x140023da7
mov edx, edi
mov eax, edi
and edx, 0x7f
test edi, edi
jns 0x140023d5c
lea eax, [rdi + 0x7f]
add edx, 0xffffff80
sar eax, 7
lea r8, [0x140000000]
cdqe
movzx eax, byte [rax + r8 + 0xfb890]
shl eax, 7
add eax, edx
cdqe
movzx ecx, word [r8 + rax*2 + 0xfda90]
movzx edx, byte [r8 + rcx*8 + 0xfa213]
test dl, dl
je 0x140023da3
mov rax, qword [rbp - 0x70]
mov word [rax], 0x90f
lea r9, [rax + 3]
mov byte [rax + 2], dl
jmp 0x140023ef9
test r12b, 1
mov rcx, qword [rbp - 0x70]
setne al
add al, 0x1f
mov byte [rcx], al
lea rbx, [rcx + 1]
test r10d, r10d
je 0x140023dd5
cmp edi, 0x7f
jbe 0x140023dd5
mov rdx, rbx
mov ecx, edi
call fcn.14003b320
mov r9d, eax
add r9, rbx
jmp 0x140023ef9
mov byte [rbx], dil
lea r9, [rbx + 1]
jmp 0x140023ef9
test r10d, r10d
je 0x140023df2
cmp edi, 0x7f
jbe 0x140023df2
mov ecx, edi
jmp 0x140025b3c
mov r11, qword [rbp + 0x1a0]
mov r9d, 1
mov r10, qword [rbp - 0x70]
mov ecx, dword [rbp - 0x78]
mov byte [rbp - 0x10], dil
mov r14, qword [r11 + 0x40]
mov r15, r10
sub r14, qword [r11 + 0x20]
mov qword [rbp - 0x38], r10
mov qword [rbp + 8], r14
test ecx, ecx
je 0x14002697e
test r12b, 1
je 0x140026982
movzx edx, byte [rbp - 0x10]
cmp edx, 0xc0
jb 0x140026909
movzx ecx, byte [rbp - 0xf]
and ecx, 0x3f
test dl, 0x20
jne 0x1400268a0
and edx, 0x1f
mov eax, edx
shl eax, 6
jmp 0x140026905
mov r9, qword [rbp - 0x48]
mov r15, qword [rbp - 0x38]
mov rcx, r9
mov eax, ecx
mov qword [rbp - 0x70], r9
sub eax, r15d
sar eax, 8
sub cl, r15b
mov byte [r15 + 1], al
mov byte [r15 + 2], cl
mov r12d, dword [rbp - 0x68]
jmp 0x140026a55
mov rcx, qword [rbp + 0x1a8]
test rcx, rcx
je 0x140023eb0
mov eax, dword [rbp - 0x48]
sub eax, r9d
mov r9, qword [rbp - 0x70]
add dword [rcx], eax
cmp dword [rbp - 0x54], r10d
setne al
add al, 0x6e
mov byte [r9], al
inc r9
jmp 0x140023ef1
mov r14d, dword [rbp - 0x54]
cmp r14d, r10d
mov r9, qword [rbp - 0x70]
setne al
add al, 0x6e
mov byte [r9], al
inc r9
test r14d, r14d
je 0x140023ee0
lea rcx, [rbp + 0x58]
mov edx, 0x20
not byte [rcx]
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140023ed4
movups xmm0, xmmword [rbp + 0x58]
movups xmmword [r9], xmm0
movups xmm1, xmmword [rbp + 0x68]
movups xmmword [r9 + 0x10], xmm1
mov r12d, dword [rbp - 0x68]
add r9, 0x20
mov qword [rbp - 0x70], r9
mov eax, dword [rbp - 0x20]
mov r13d, dword [rbp - 0x28]
mov esi, dword [rbp - 0x30]
mov r15, qword [rbp - 0x38]
mov dword [rbp], eax
mov dword [rbp - 0x60], r13d
mov dword [rbp - 0x64], esi
jmp 0x140026a55
test edx, edx
je case.0x140022ae4.12
movzx eax, byte [rbx + 1]
inc rbx
mov r8d, r10d
mov edx, 0xffffffff
cmp al, 0x30
jb 0x140023fb0
nop dword [rax]
cmp al, 0x39
ja 0x140023fb0
lea r8d, [r8 + r8*4]
movzx eax, al
lea r8d, [r8 - 0x18]
inc rbx
lea r8d, [rax + r8*2]
cmp r8d, 0xffff
jg 0x140023fa8
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x140023f40
movzx eax, byte [rbx + 1]
inc rbx
cmp al, 0x7d
je 0x140023fb7
mov edx, r10d
cmp al, 0x30
jb 0x140023f9a
cmp al, 0x39
ja 0x140023f9a
lea edx, [rdx + rdx*4]
movzx eax, al
lea edx, [rdx - 0x18]
inc rbx
lea edx, [rax + rdx*2]
cmp edx, 0xffff
jg 0x140023fa8
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x140023f78
cmp edx, r8d
jge 0x140023fb7
mov eax, 4
mov dword [rdi], eax
jmp 0x140023fbe
mov dword [rdi], 5
jmp 0x140023fbe
cmp al, 0x7d
jne 0x140023f66
mov edx, r8d
mov dword [rbp - 0x2c], r8d
mov dword [rbp - 0x40], edx
cmp dword [rdi], 0
mov qword [rbp - 0x80], rbx
jne 0x140026dfb
mov r14d, dword [rbp - 0x40]
mov r12d, 1
mov edx, dword [rbp - 0x2c]
jmp 0x140024014
mov eax, 0xffffffff
mov r14d, eax
mov dword [rbp - 0x40], eax
lea r12d, [rax + 2]
jmp 0x14002400e
mov eax, 0xffffffff
mov r12d, 1
mov edx, r12d
mov dword [rbp - 0x40], eax
mov r14d, eax
jmp 0x140024011
mov r12d, 1
mov r14d, r12d
mov dword [rbp - 0x40], r12d
mov edx, r10d
mov dword [rbp - 0x2c], edx
mov r10, qword [rbp - 0x38]
test r10, r10
je 0x140026b09
test edx, edx
jne 0x140024038
mov eax, dword [rbp]
mov dword [rbp - 0x20], eax
mov eax, dword [rbp - 0x24]
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x28], r13d
mov dword [rbp - 0x30], esi
cmp edx, r14d
mov qword [rbp - 8], r10
mov r13d, 0
mov eax, 2
cmove eax, r13d
mov dword [rbp - 0x58], r13d
mov dword [rbp - 0x3c], eax
test r15d, r15d
je 0x140024154
inc rbx
mov rcx, qword [r11 + 0x18]
movzx eax, byte [rbx]
test byte [rax + rcx], 1
je 0x14002407d
nop
movzx eax, byte [rbx + 1]
inc rbx
test byte [rax + rcx], 1
jne 0x140024070
cmp al, 0x23
jne 0x14002413b
inc rbx
cmp byte [rbx], r13b
je 0x140024061
nop dword [rax]
mov edx, dword [r11 + 0xb4]
lea rdi, [r11 + 0xb8]
mov rcx, qword [r11 + 0x38]
test edx, edx
je 0x1400240dd
cmp rbx, rcx
jae 0x1400240c7
mov eax, dword [rbp - 0x78]
mov r8, rcx
mov rcx, rbx
mov dword [rsp + 0x20], eax
mov r9, rdi
call fcn.14003afa0
test eax, eax
mov eax, r12d
jne 0x1400240ca
mov eax, r13d
mov r11, qword [rbp + 0x1a0]
test eax, eax
je 0x140024106
movsxd rax, dword [rdi]
add rbx, rax
jmp 0x140024061
movsxd rdx, dword [rdi]
sub rcx, rdx
cmp rbx, rcx
ja 0x140024106
movzx eax, byte [r11 + 0xbc]
cmp byte [rbx], al
jne 0x140024106
cmp edx, 1
je 0x1400240d5
movzx eax, byte [r11 + 0xbd]
cmp byte [rbx + 1], al
je 0x1400240d5
inc rbx
cmp dword [rbp - 0x78], r13d
je 0x14002412d
movzx eax, byte [rbx]
and al, 0xc0
cmp al, 0x80
jne 0x14002412d
nop dword [rax + rax]
movzx eax, byte [rbx + 1]
inc rbx
and al, 0xc0
cmp al, 0x80
je 0x140024120
cmp byte [rbx], r13b
jne 0x140024090
jmp 0x140024061
mov r10, qword [rbp - 0x38]
dec rbx
mov r9, qword [rbp - 0x70]
mov rdi, qword [rbp + 0x168]
mov edx, dword [rbp - 0x2c]
mov qword [rbp - 0x80], rbx
cmp byte [rbx + 1], 0x28
jne 0x1400241a6
cmp byte [rbx + 2], 0x3f
jne 0x1400241a6
cmp byte [rbx + 3], 0x23
jne 0x1400241a6
add rbx, 4
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
je 0x140022942
nop dword [rax]
cmp al, 0x29
je 0x14002419d
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
jne 0x140024180
mov dword [rdi], reloc.WS2_32.dll_select
jmp 0x140026dfb
cmp byte [rbx], r13b
je 0x140022942
movzx ecx, byte [rbx + 1]
lea rax, [rbx + 1]
cmp cl, 0x2b
jne 0x1400241ca
mov r12d, r13d
mov dword [rbp - 0x54], r13d
mov dword [rbp - 0x58], 1
mov rbx, rax
mov qword [rbp - 0x80], rax
jmp 0x1400241e7
cmp cl, 0x3f
jne 0x1400241df
mov r12d, dword [rbp + 0x80]
mov rbx, rax
mov qword [rbp - 0x80], rax
jmp 0x1400241e3
mov r12d, dword [rbp + 0x7c]
mov dword [rbp - 0x54], r12d
cmp byte [r10], 0x75
jne 0x1400242a6
lea rcx, [r10 + 3]
mov r8d, 3
mov rdx, r10
call fcn.14001cb10
mov r10, qword [rbp - 0x38]
mov r9, qword [rbp - 0x70]
mov r11, qword [rbp + 0x1a8]
add r9, 6
mov qword [rbp - 0x70], r9
mov word [r10], 0x81
mov byte [r10 + 2], 6
mov word [r10 + 6], 0x78
mov byte [r10 + 8], 6
mov dword [rbp + 0x20], 9
test r11, r11
jne 0x14002429d
mov r9, qword [rbp + 0x1a0]
mov rax, qword [r9 + 0x20]
mov r8, qword [r9 + 0x40]
add rax, 2
cmp r8, rax
jb 0x140024299
movzx eax, byte [r8 - 2]
movzx ecx, byte [r8 - 1]
shl eax, 8
or ecx, eax
mov rax, r10
sub rax, qword [r9 + 0x28]
inc rax
mov edx, ecx
cmp rdx, rax
jne 0x140024299
lea eax, [rcx + 3]
shr eax, 8
mov byte [r8 - 2], al
add dl, 3
mov rax, qword [r9 + 0x40]
mov r8, r9
mov r9, qword [rbp - 0x70]
mov byte [rax - 1], dl
mov rbx, qword [rbp - 0x80]
mov edx, dword [rbp - 0x2c]
jmp 0x1400242b4
mov r9, qword [rbp - 0x70]
mov rbx, qword [rbp - 0x80]
mov edx, dword [rbp - 0x2c]
jmp 0x1400242ad
mov r11, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x1a0]
movzx esi, byte [r10]
lea eax, [rsi - 0x1d]
cmp al, 3
jbe 0x140024a4e
cmp sil, 0x17
jae 0x1400242da
mov r11d, dword [rbp - 0x78]
mov r14d, gethostname
mov edi, esi
jmp 0x140024af6
lea eax, [rsi - 0x6e]
cmp al, 6
jbe 0x140024985
lea eax, [rsi - 0x7d]
cmp al, 0xa
ja 0x140024970
mov r14, qword [rbp + 8]
xor eax, eax
mov r12d, r9d
mov rdi, r14
sub r12d, r10d
mov r15d, eax
cmp sil, 0x87
jne 0x14002430f
cmp byte [r10 + 3], 0x91
je 0x14002438c
cmp sil, 0x81
jae 0x14002432c
test edx, edx
jg 0x14002438c
mov esi, dword [rbp - 0x40]
mov ecx, 1
cmp esi, 1
cmova esi, ecx
mov dword [rbp - 0x40], esi
jmp 0x140024334
mov esi, dword [rbp - 0x40]
mov ecx, 1
test edx, edx
jne 0x140024425
mov byte [r9], al
mov r9, r8
mov r8d, dword [rbp - 0x78]
mov qword [rsp + 0x20], r14
cmp esi, 1
jg 0x1400243d6
mov edx, ecx
mov rcx, r10
call fcn.140020510
mov rsi, qword [rbp - 0x38]
movsxd r8, r12d
mov rdx, rsi
lea rbx, [rsi + 1]
mov rcx, rbx
call fcn.14001cb10
mov r9, qword [rbp - 0x70]
inc r9
mov qword [rbp - 0x70], r9
cmp dword [rbp - 0x40], r13d
jne 0x1400243b7
mov byte [rsi], 0xa1
mov rbx, qword [rbp - 0x80]
mov r13, qword [rbp + 0x1a0]
mov eax, dword [rbp - 0x3c]
xor r10d, r10d
or dword [r13 + 0x98], eax
mov r15d, r10d
mov r13d, dword [rbp - 0x60]
mov esi, dword [rbp - 0x64]
mov r12d, dword [rbp - 0x68]
mov qword [rbp - 0x38], r10
jmp 0x140022b1f
mov r14d, dword [rbp - 0x54]
mov r15, rsi
mov qword [rbp - 0x38], rbx
lea eax, [r14 - 0x6e]
mov byte [rsi], al
mov esi, dword [rbp - 0x40]
mov rbx, qword [rbp - 0x80]
dec esi
jmp 0x1400245ac
mov edx, 4
mov rcx, r10
call fcn.140020510
mov rbx, qword [rbp - 0x38]
movsxd r8, r12d
mov rdx, rbx
lea rcx, [rbx + 4]
call fcn.14001cb10
mov r14d, dword [rbp - 0x54]
lea r13, [rbx + 2]
add qword [rbp - 0x70], 4
dec esi
lea eax, [r14 - 0x6e]
mov byte [rbx], al
lea rax, [r13 + 2]
mov byte [rbx + 1], 0x83
mov word [r13], r15w
mov rbx, qword [rbp - 0x80]
mov qword [rbp - 0x38], rax
jmp 0x1400245ac
cmp edx, 1
jle 0x1400245a2
test r11, r11
je 0x140024480
mov eax, dword [rbp + 0x20]
lea ecx, [rdx - 1]
movd xmm1, ecx
mov edx, ecx
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
imul edx, eax
mulsd xmm1, xmm0
comisd xmm1, xmmword [0x1400f90f0]
ja 0x140026dde
mov ecx, dword [r11]
mov eax, 0x7fffffeb
sub eax, ecx
cmp eax, edx
jl 0x140026dde
lea eax, [rdx + rcx]
mov edx, dword [rbp - 0x2c]
mov dword [r11], eax
jmp 0x1400245a2
cmp dword [rbp + 0x40], eax
je 0x140024496
cmp dword [rbp - 0x30], eax
jge 0x140024496
mov eax, dword [rbp - 0x20]
mov dword [rbp - 0x28], eax
mov eax, dword [rbp - 0x5c]
mov dword [rbp - 0x30], eax
mov r9, qword [rbp + 0x1a0]
mov esi, ecx
mov rax, qword [rbp - 0x70]
movsxd r14, r12d
nop word [rax + rax]
mov rbx, qword [r9 + 0x40]
mov r8, r14
sub rbx, qword [r9 + 0x20]
mov rdx, r10
mov rcx, rax
call fcn.14001cb10
mov r9, qword [rbp + 0x1a0]
movsxd rax, dword [r9 + 0x6c]
mov rcx, qword [r9 + 0x20]
sub rax, rbx
mov r8, qword [r9 + 0x40]
add rax, 0xffffffffffffff9c
add rax, rcx
add rax, rdi
cmp r8, rax
jbe 0x14002452e
nop dword [rax + rax]
mov rcx, r9
call fcn.140027cf0
mov rcx, qword [rbp + 0x168]
mov dword [rcx], eax
test eax, eax
jne 0x140023090
mov r9, qword [rbp + 0x1a0]
movsxd rax, dword [r9 + 0x6c]
mov rcx, qword [r9 + 0x20]
sub rax, rbx
mov r8, qword [r9 + 0x40]
add rax, 0xffffffffffffff9c
add rax, rcx
add rax, rdi
cmp r8, rax
ja 0x1400244f0
lea rdx, [rcx + rdi]
lea rax, [rbx + rcx]
cmp rdx, rax
jae 0x14002457c
nop dword [rax + rax]
movzx ecx, byte [rdx]
movzx eax, byte [rdx + 1]
shl ecx, 8
or ecx, eax
add ecx, r12d
sar ecx, 8
mov byte [r8], cl
movzx ecx, r12b
add cl, byte [rdx + 1]
add rdx, 2
mov rax, qword [r9 + 0x40]
mov byte [rax + 1], cl
add qword [r9 + 0x40], 2
mov rcx, qword [r9 + 0x20]
mov r8, qword [r9 + 0x40]
add rcx, rbx
cmp rdx, rcx
jb 0x140024540
mov rax, qword [rbp - 0x70]
inc esi
mov edx, dword [rbp - 0x2c]
add rax, r14
mov r10, qword [rbp - 0x38]
mov rdi, rbx
mov qword [rbp - 0x70], rax
cmp esi, edx
jl 0x1400244b0
mov rbx, qword [rbp - 0x80]
mov esi, dword [rbp - 0x40]
mov r14d, dword [rbp - 0x54]
test esi, esi
jle 0x1400245b1
sub esi, edx
mov dword [rbp - 0x40], esi
test esi, esi
js 0x1400247f1
mov r8, qword [rbp + 0x1a8]
mov r14d, dword [rbp - 0x40]
test r8, r8
je 0x140024662
test r14d, r14d
jle 0x140024662
mov eax, dword [rbp + 0x20]
add eax, 7
movd xmm0, r14d
cvtdq2pd xmm0, xmm0
mov ecx, eax
imul ecx, r14d
movd xmm1, eax
cvtdq2pd xmm1, xmm1
sub ecx, 6
mulsd xmm1, xmm0
comisd xmm1, xmmword [0x1400f90f0]
ja 0x140026dde
mov edx, dword [r8]
mov eax, 0x7fffffeb
sub eax, edx
cmp eax, ecx
jl 0x140026dde
lea eax, [rcx + rdx]
mov dword [r8], eax
mov r9, qword [rbp - 0x70]
test r13, r13
je 0x1400249b2
nop dword [rax + rax]
mov eax, r9d
mov rdx, r9
sub eax, r13d
lea r8d, [rax + 1]
cdqe
sub rdx, rax
movzx ecx, byte [rdx]
movzx r9d, byte [rdx + 1]
mov eax, ecx
shl eax, 8
or eax, r9d
jne 0x1400247b5
xor eax, eax
mov r13d, eax
jmp 0x1400247bf
lea esi, [r14 - 1]
test esi, esi
js 0x14002461e
mov eax, dword [rbp - 0x54]
mov r15, qword [rbp + 0x1a0]
sub al, 0x6e
mov r9, qword [rbp - 0x70]
mov dword [rbp - 0x54], eax
movsxd r14, r12d
mov rbx, qword [r15 + 0x40]
sub rbx, qword [r15 + 0x20]
mov byte [r9], al
inc r9
mov qword [rbp - 0x70], r9
test esi, esi
je 0x1400246c3
mov byte [r9], 0x83
lea rdx, [r9 + 1]
test r13, r13
jne 0x1400246a9
xor eax, eax
mov ecx, eax
jmp 0x1400246ae
mov ecx, edx
sub ecx, r13d
mov eax, ecx
mov byte [rdx + 1], cl
sar eax, 8
lea r9, [rdx + 2]
mov byte [rdx], al
mov r13, rdx
mov qword [rbp - 0x70], r9
mov rdx, qword [rbp - 0x38]
mov r8, r14
mov rcx, r9
call fcn.14001cb10
movsxd rax, dword [r15 + 0x6c]
mov rcx, qword [r15 + 0x20]
sub rax, rbx
mov r8, qword [r15 + 0x40]
add rax, 0xffffffffffffff9c
add rax, rcx
add rax, rdi
cmp r8, rax
jbe 0x140024727
mov rcx, r15
call fcn.140027cf0
mov rcx, qword [rbp + 0x168]
mov dword [rcx], eax
test eax, eax
jne 0x140023090
movsxd rax, dword [r15 + 0x6c]
mov rcx, qword [r15 + 0x20]
sub rax, rbx
mov r8, qword [r15 + 0x40]
add rax, 0xffffffffffffff9c
add rax, rcx
add rax, rdi
cmp r8, rax
ja 0x1400246f0
lea rdx, [rcx + rdi]
lea rax, [rbx + rcx]
cmp rdx, rax
jae 0x140024792
mov eax, 1
test esi, esi
mov ecx, 4
mov r9d, eax
mov r10d, eax
cmovne r9d, ecx
cmovne r10d, ecx
nop
movzx ecx, byte [rdx]
movzx eax, byte [rdx + 1]
shl ecx, 8
or ecx, eax
add ecx, r9d
add ecx, r12d
sar ecx, 8
mov byte [r8], cl
movzx ecx, r10b
add cl, byte [rdx + 1]
add rdx, 2
mov rax, qword [r15 + 0x40]
add cl, r12b
mov byte [rax + 1], cl
add qword [r15 + 0x40], 2
mov rcx, qword [r15 + 0x20]
mov r8, qword [r15 + 0x40]
add rcx, rbx
cmp rdx, rcx
jb 0x140024750
mov r9, qword [rbp - 0x70]
mov rdi, rbx
mov eax, dword [rbp - 0x54]
add r9, r14
sub esi, 1
mov qword [rbp - 0x70], r9
jns 0x140024680
mov rbx, qword [rbp - 0x80]
jmp 0x140024622
shl rcx, 8
or rcx, r9
sub r13, rcx
mov r9, qword [rbp - 0x70]
mov eax, r8d
sar eax, 8
mov byte [r9], 0x78
mov byte [r9 + 1], al
mov byte [r9 + 2], r8b
add r9, 3
mov qword [rbp - 0x70], r9
mov byte [rdx], al
mov byte [rdx + 1], r8b
test r13, r13
jne 0x140024630
jmp 0x1400249ae
mov r9, qword [rbp - 0x70]
movzx eax, byte [r9 - 1]
lea rbx, [r9 - 3]
movzx ecx, byte [rbx + 1]
mov rdi, rbx
mov r12d, dword [rbp - 0x58]
shl rcx, 8
or rcx, rax
sub rdi, rcx
movzx eax, byte [rdi]
add al, 0x7f
cmp al, 1
ja 0x140024824
test r12d, r12d
je 0x140024824
mov byte [rdi], 0x83
movzx esi, byte [rdi]
lea eax, [rsi + 0x7f]
cmp al, 1
jbe 0x140024963
cmp qword [rbp + 0x1a8], 0
mov r13, qword [rbp + 0x1a0]
jne 0x140024894
mov r11, rdi
nop word [rax + rax]
mov r8d, dword [rbp - 0x78]
xor eax, eax
mov r9, r13
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, r11
call fcn.140027610
test eax, eax
jne 0x140024889
movzx ecx, byte [r11 + 1]
movzx eax, byte [r11 + 2]
shl rcx, 8
or rcx, rax
add r11, rcx
cmp byte [r11], 0x77
je 0x140024850
jmp 0x140024890
add sil, 5
mov byte [rdi], sil
mov r9, qword [rbp - 0x70]
cmp byte [rdi], 0x87
jne 0x1400248b1
movzx ecx, byte [rdi + 1]
movzx eax, byte [rdi + 2]
shl rcx, 8
or rcx, rax
cmp byte [rcx + rdi], 0x77
je 0x1400248b1
mov byte [rdi], 0x8c
test r12d, r12d
je 0x140024953
movzx eax, byte [rdi]
cmp al, 0x87
je 0x1400248ce
cmp al, 0x8c
je 0x1400248ce
inc al
mov byte [rdi], al
mov byte [rbx], 0x7b
jmp 0x140024939
mov rax, qword [rbp + 8]
mov ebx, r9d
mov r8d, dword [rbp - 0x78]
mov edx, 3
mov byte [r9], 0
mov rcx, rdi
mov r9, r13
mov qword [rsp + 0x20], rax
sub ebx, edi
call fcn.140020510
movsxd r8, ebx
lea rcx, [rdi + 3]
mov rdx, rdi
call fcn.14001cb10
mov rcx, qword [rbp - 0x70]
add ebx, 3
cmp byte [rdi], 0x87
mov eax, 0x89
mov edx, 0x84
cmove eax, edx
mov byte [rdi], al
lea r9, [rcx + 6]
mov byte [rcx + 3], 0x7b
mov eax, ebx
sar eax, 8
mov byte [rcx + 4], al
mov byte [rcx + 5], bl
mov byte [rdi + 1], al
mov byte [rdi + 2], bl
mov qword [rbp - 0x70], r9
test r15, r15
je 0x140024942
mov byte [r15], __WSAFDIsSet
cmp dword [rbp - 0x2c], 2
mov rbx, qword [rbp - 0x80]
jge 0x1400249c6
xor eax, eax
mov r12d, eax
jmp 0x1400249bd
add r14b, 0x79
mov byte [rbx], r14b
mov rbx, qword [rbp - 0x80]
jmp 0x140024393
add r14b, 0x79
mov byte [rbx], r14b
mov rbx, qword [rbp - 0x80]
jmp 0x1400249b6
cmp sil, 0x9d
je 0x14002438c
mov dword [rdi], ntohl
jmp 0x140026dfb
test r14d, r14d
jne 0x140024996
mov r9, r10
mov qword [rbp - 0x70], r10
jmp 0x14002438c
test edx, edx
jne 0x140024a06
cmp r14d, 0xffffffff
jne 0x1400249fa
add r12b, 0x62
mov byte [r9], r12b
inc r9
mov qword [rbp - 0x70], r9
mov rbx, qword [rbp - 0x80]
mov r12d, dword [rbp - 0x58]
mov r13, qword [rbp + 0x1a0]
test r12d, r12d
je 0x140024393
mov rax, qword [rbp - 8]
lea r10, [0x140000000]
movzx r8d, byte [rax]
lea eax, [r8 - 0x1d]
cmp eax, 0x53
ja case.0x1400249f8.33
cdqe
movzx eax, byte [r10 + rax + 0x26f58]
mov ecx, dword [r10 + rax*4 + 0x26f44]
add rcx, r10
jmp rcx
cmp r14d, 1
jne 0x140024a17
add r12b, 0x66
jmp 0x1400249a4
cmp edx, 1
jne 0x140024a17
cmp r14d, 0xffffffff
jne 0x140024a17
add r12b, 0x64
jmp 0x1400249a4
add r12b, 0x68
mov eax, edx
sar eax, 8
mov byte [r9], r12b
cmp r14d, 0xffffffff
mov byte [r9 + 1], al
cmove r14d, r13d
mov byte [r9 + 2], dl
mov eax, r14d
mov byte [r9 + 4], r14b
sar eax, 8
mov byte [r9 + 3], al
add r9, 5
mov dword [rbp - 0x40], r14d
jmp 0x1400249aa
mov ecx, esi
sub ecx, 0x1d
je 0x140024a7a
sub ecx, 1
je 0x140024a72
sub ecx, 1
je 0x140024a6a
cmp ecx, 1
jne 0x140024a7a
lea r14d, [rcx + 0x26]
jmp 0x140024a7d
mov r14d, 0x1a
jmp 0x140024a7d
mov r14d, reloc.WS2_32.dll_listen
jmp 0x140024a7d
mov r14d, r13d
mov r11d, dword [rbp - 0x78]
test r11d, r11d
je 0x140024acf
movzx eax, byte [r9 - 1]
lea rdx, [r9 - 1]
and al, 0xc0
cmp al, 0x80
jne 0x140024acf
nop word [rax + rax]
movzx eax, byte [rdx - 1]
dec rdx
and al, 0xc0
cmp al, 0x80
je 0x140024aa0
mov edi, r9d
lea rcx, [rbp + 0x90]
sub edi, edx
mov r8d, edi
call fcn.14001cb10
mov r10, qword [rbp - 0x38]
bts edi, 0x1c
mov r11d, dword [rbp - 0x78]
jmp 0x140024af6
movzx edi, byte [r9 - 1]
cmp sil, 0x1e
ja 0x140024af6
mov r13d, dword [rbp - 0x2c]
cmp r13d, 1
jle 0x140024afa
mov r13d, dword [rbp + 0x18]
or r13d, dword [r8 + 0x98]
mov dword [rbp - 0x30], r13d
mov dword [rbp - 0x28], edi
mov r13d, dword [rbp - 0x2c]
sub sil, 0xf
cmp sil, 1
jbe 0x140024b10
mov eax, 0xffffffff
mov r15d, eax
mov esi, eax
jmp 0x140024b1a
movzx esi, byte [r10 + 1]
movzx r15d, byte [r10 + 2]
cmp dword [rbp - 0x40], 0
mov r9, r10
mov rcx, qword [rbp - 0x70]
mov qword [rbp - 0x70], r10
je 0x14002438c
add r12d, r14d
test r13d, r13d
jne 0x140024b85
mov r14d, dword [rbp - 0x40]
cmp r14d, 0xffffffff
jne 0x140024b51
add r12b, 0x21
lea r9, [r10 + 1]
mov byte [r10], r12b
jmp 0x140024cd5
cmp r14d, 1
jne 0x140024b67
add r12b, 0x25
lea r9, [r10 + 1]
mov byte [r10], r12b
jmp 0x140024cd5
add r12b, 0x27
lea r9, [r10 + 3]
mov byte [r10], r12b
mov eax, r14d
sar eax, 8
mov byte [r10 + 1], al
mov byte [r10 + 2], r14b
jmp 0x140024cd5
cmp r13d, 1
jne 0x140024bd7
mov r14d, dword [rbp - 0x40]
cmp r14d, 0xffffffff
jne 0x140024ba5
add r12b, 0x23
lea r9, [r10 + 1]
mov byte [r10], r12b
jmp 0x140024cd5
mov qword [rbp - 0x70], rcx
mov r9, rcx
cmp r14d, 1
je 0x14002438c
add r12b, 0x27
lea eax, [r14 - 1]
sar eax, 8
lea r9, [rcx + 3]
mov byte [rcx], r12b
mov byte [rcx + 1], al
lea eax, [r14 - 1]
mov byte [rcx + 2], al
jmp 0x140024cd5
add r14b, 0x29
lea r9, [r10 + 3]
mov byte [r10], r14b
mov eax, r13d
mov r14d, dword [rbp - 0x40]
sar eax, 8
mov byte [r10 + 1], al
mov byte [r10 + 2], r13b
mov qword [rbp - 0x70], r9
test r14d, r14d
jns 0x140024c5a
test r11d, r11d
je 0x140024c39
bt edi, 0x1c
jae 0x140024c39
mov ebx, edi
lea rdx, [rbp + 0x90]
and ebx, 7
mov rcx, r9
mov r8d, ebx
call fcn.14001cb10
mov r9, qword [rbp - 0x70]
add r12b, 0x21
mov r11d, dword [rbp - 0x78]
add r9, rbx
mov byte [r9], r12b
inc r9
jmp 0x140024cd5
mov byte [r9], dil
inc r9
test esi, esi
js 0x140024c4e
mov byte [r9], sil
mov byte [r9 + 1], r15b
add r9, 2
add r12b, 0x21
mov byte [r9], r12b
inc r9
jmp 0x140024cd5
cmp r14d, r13d
je 0x140024cd9
test r11d, r11d
je 0x140024c8e
bt edi, 0x1c
jae 0x140024c8e
mov ebx, edi
lea rdx, [rbp + 0x90]
and ebx, 7
mov rcx, r9
mov r8d, ebx
call fcn.14001cb10
mov r9, qword [rbp - 0x70]
mov r11d, dword [rbp - 0x78]
add r9, rbx
jmp 0x140024c94
mov byte [r9], dil
inc r9
test esi, esi
js 0x140024ca3
mov byte [r9], sil
mov byte [r9 + 1], r15b
add r9, 2
sub r14d, r13d
mov dword [rbp - 0x40], r14d
cmp r14d, 1
jne 0x140024cbc
add r12b, 0x25
mov byte [r9], r12b
inc r9
jmp 0x140024cd5
add r12b, 0x27
mov eax, r14d
mov byte [r9], r12b
sar eax, 8
mov byte [r9 + 1], al
mov byte [r9 + 2], r14b
add r9, 3
mov qword [rbp - 0x70], r9
test r11d, r11d
je 0x140024d04
bt edi, 0x1c
jae 0x140024d04
mov ebx, edi
lea rdx, [rbp + 0x90]
and ebx, 7
mov rcx, r9
mov r8d, ebx
call fcn.14001cb10
mov r9, qword [rbp - 0x70]
add r9, rbx
jmp 0x140024d0a
mov byte [r9], dil
inc r9
mov r12d, dword [rbp - 0x58]
mov r13, qword [rbp + 0x1a0]
mov qword [rbp - 0x70], r9
test esi, esi
js 0x140024d2c
mov byte [r9], sil
mov byte [r9 + 1], r15b
add r9, 2
mov qword [rbp - 0x70], r9
mov rbx, qword [rbp - 0x80]
jmp 0x1400249bd
mov rdx, qword [rbp - 8]
mov ecx, 2
movzx eax, byte [rdx + 3]
sub al, 0xf
cmp al, 1
mov eax, 0
cmova ecx, eax
movzx eax, byte [r8 + r10 + 0xf9ac0]
add rax, rcx
add qword [rbp - 8], rax
jmp case.0x1400249f8.33
movzx eax, byte [r8 + r10 + 0xf9ac0]
mov rdx, qword [rbp - 8]
mov r8d, dword [rbp - 0x78]
add rdx, rax
mov qword [rbp - 8], rdx
test r8d, r8d
je 0x140024db9
movzx eax, byte [rdx - 1]
cmp al, 0xc0
jb 0x140024db9
and eax, 0x3f
movzx eax, byte [rax + r10 + 0xf9170]
add qword [rbp - 8], rax
jmp 0x140024db9
add qword [rbp - 8], 0x21
jmp case.0x1400249f8.33
mov rdx, qword [rbp - 8]
movzx ecx, byte [rdx + 1]
movzx eax, byte [rdx + 2]
shl rcx, 8
or rcx, rax
add qword [rbp - 8], rcx
mov r8d, dword [rbp - 0x78]
mov rdx, qword [rbp - 8]
mov edi, r9d
sub edi, edx
test edi, edi
jle 0x140024393
movzx eax, byte [rdx]
cmp al, 0x76
jae 0x140024de9
movzx ecx, byte [rax + r10 + 0xf8f80]
test cl, cl
je 0x140024de9
mov byte [rdx], cl
mov rbx, qword [rbp - 0x80]
jmp 0x140024393
mov rax, qword [rbp + 8]
mov edx, 3
mov byte [r9], 0
mov r9, r13
mov rcx, qword [rbp - 8]
mov qword [rsp + 0x20], rax
call fcn.140020510
mov rdx, qword [rbp - 8]
movsxd r8, edi
lea rcx, [rdx + 3]
call fcn.14001cb10
mov rax, qword [rbp - 8]
add edi, 3
mov rcx, qword [rbp - 0x70]
mov byte [rax], 0x81
lea rax, [rcx + 4]
mov byte [rcx + 3], 0x78
lea r9, [rax + 2]
mov byte [rax + 1], dil
mov ecx, edi
sar ecx, 8
mov byte [rax], cl
mov rax, qword [rbp - 8]
mov qword [rbp - 0x70], r9
mov byte [rax + 1], cl
mov rax, qword [rbp - 8]
mov byte [rax + 2], dil
mov rbx, qword [rbp - 0x80]
jmp 0x140024393
inc rbx
lea r9, [r11 + 0x18]
mov qword [rbp - 0x80], rbx
movzx edx, byte [rbx]
cmp dl, 0x2a
jne 0x1400250fc
movzx eax, byte [rbx + 1]
lea r13, [rbx + 1]
cmp al, 0x3a
je 0x140024e8a
mov ecx, eax
mov rax, qword [r9]
test byte [rcx + rax], 2
je 0x1400250fc
mov rcx, qword [r9]
lea rsi, [0x1400f7c18]
mov rbx, r13
mov qword [rbp - 0x18], r10
mov qword [rbp - 0x80], rbx
mov r15d, r10d
movzx eax, byte [r13]
mov qword [rbp - 0x38], r10
test byte [rax + rcx], 2
je 0x140024ed0
nop dword [rax]
nop word [rax + rax]
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test byte [rax + rcx], 2
jne 0x140024ec0
mov r14d, ebx
sub r14d, r13d
cmp byte [rbx], 0x3a
jne 0x140024f15
inc rbx
mov qword [rbp - 0x80], rbx
mov rdx, rbx
mov qword [rbp - 0x18], rbx
movzx eax, byte [rbx]
test al, al
je 0x140024f02
cmp al, 0x29
je 0x140024f02
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
jne 0x140024ef0
mov r15d, ebx
sub r15d, edx
cmp r15d, 0xff
ja 0x140026b14
cmp byte [rbx], 0x29
jne 0x140026b4b
mov r12d, r10d
lea rbx, [0x1400f7c50]
mov rdi, r10
nop dword [rax + rax]
cmp r14d, dword [rbx]
jne 0x140024f47
movsxd r8, r14d
mov rdx, rsi
mov rcx, r13
call fcn.1400d3900
test eax, eax
je 0x140024f6b
mov eax, dword [rbx]
inc r12d
inc eax
inc rdi
cdqe
add rbx, 0xc
add rsi, rax
lea rax, [0x1400f7cbc]
cmp rbx, rax
jl 0x140024f30
jmp case.default.0x1400250c1
lea rcx, [rdi + rdi*2]
lea rdx, [0x1400f7c50]
mov eax, dword [rdx + rcx*4 + 4]
cmp eax, 0x9e
jne 0x140025020
test r15d, r15d
jne 0x140026b35
mov rdx, qword [rbp + 0x1a0]
mov r8d, 1
mov rcx, qword [rdx + 0x48]
mov dword [rdx + 0x9c], r8d
test rcx, rcx
je 0x140024fef
mov rdx, qword [rbp - 0x70]
mov rax, qword [rbp + 0x1a8]
test rax, rax
je 0x140024fc0
add dword [rax], 3
jmp 0x140024fdc
mov byte [rdx], 0xa0
movzx eax, byte [rcx + 9]
mov byte [rdx + 1], al
movzx eax, byte [rcx + 8]
mov byte [rdx + 2], al
add rdx, 3
mov rax, qword [rbp + 0x1a8]
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140024fb6
mov qword [rbp - 0x70], rdx
mov rdx, qword [rbp + 0x1a0]
cmp dword [rdx + 0x8c], 0
mov r9d, 0xffffffff
mov rcx, qword [rbp - 0x70]
setg al
add al, 0x9e
mov byte [rcx], al
inc rcx
mov qword [rbp - 0x70], rcx
mov ecx, dword [rbp - 0x5c]
cmp ecx, 0xfffffffe
cmove ecx, r9d
mov dword [rbp - 0x5c], ecx
jmp 0x1400250a0
test r15d, r15d
jne 0x14002503c
test eax, eax
js 0x140026b1f
mov rcx, qword [rbp - 0x70]
mov byte [rcx], al
inc rcx
mov qword [rbp - 0x70], rcx
jmp 0x140025093
mov esi, dword [rdx + rcx*4 + 8]
test esi, esi
js 0x140026b35
mov rax, qword [rbp - 0x70]
mov rcx, qword [rbp + 0x1a8]
mov byte [rax], sil
lea rdi, [rax + 2]
test rcx, rcx
je 0x14002506b
add dword [rcx], r15d
mov byte [rax + 1], 0
mov rax, rdi
jmp 0x140025085
mov rdx, qword [rbp - 0x18]
mov rcx, rdi
movsxd rbx, r15d
mov r8, rbx
mov byte [rax + 1], r15b
call fcn.14001cb10
lea rax, [rbx + rdi]
mov byte [rax], 0
inc rax
mov qword [rbp - 0x70], rax
movzx eax, sil
mov rdx, qword [rbp + 0x1a0]
mov r8d, 1
movzx eax, al
add eax, 0xffffff6a
cmp eax, 5
ja case.default.0x1400250c1
lea r9, [0x140000000]
cdqe
mov ecx, dword [r9 + rax*4 + 0x26fac]
add rcx, r9
jmp rcx
or dword [rdx + 0x94], 0x1000
jmp case.default.0x1400250c1
mov dword [rdx + 0xa0], r8d
mov rbx, qword [rbp - 0x80]
cmp r12d, 9
jge 0x140026b4b
mov esi, dword [rbp - 0x64]
mov r13d, dword [rbp - 0x60]
mov r15, qword [rbp - 0x38]
mov r9, qword [rbp - 0x70]
mov r12d, dword [rbp - 0x68]
jmp 0x140026a59
mov r14, qword [r11 + 0x40]
lea rdi, [r11 + 0x40]
sub r14, qword [r11 + 0x20]
xor r15d, r15d
mov dword [rbp - 0x3c], r12d
mov r10d, r15d
mov qword [rbp - 0x18], rdi
mov r13d, 0x85
mov qword [rbp + 8], r14
mov dword [rbp - 0x58], r15d
cmp dl, 0x3f
jne 0x140025ad0
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
add eax, 0xffffffdf
cmp eax, 0x5b
ja case.0x140025161.46
lea rdx, [0x140000000]
cdqe
mov r8, r9
movzx eax, byte [rdx + rax + 0x26ffc]
mov ecx, dword [rdx + rax*4 + 0x26fc4]
add rcx, rdx
jmp rcx
mov ecx, 1
mov dword [rbp - 0x58], ecx
mov dword [r11 + 0xac], ecx
mov rsi, qword [rbp - 0x70]
inc rbx
mov r9, qword [rbp + 0x1a8]
mov r13d, 0x83
mov qword [rbp - 0x80], rbx
jmp 0x140025432
cmp byte [rbx + 1], 0x3f
mov r13d, 0x87
mov dword [rbp - 0x54], r13d
mov r14, rbx
mov qword [rbp + 0x28], rbx
mov r8d, 3
jne 0x1400251f9
cmp byte [rbx + 2], 0x43
mov qword [rbp + 0x28], rbx
jne 0x1400251f9
cmp byte [rbx + 3], 0x30
mov edx, r8d
mov ecx, r8d
jb 0x1400251d8
movzx eax, byte [rbx + 3]
cmp al, 0x39
ja 0x1400251d8
movzx eax, byte [rcx + rbx + 1]
inc rcx
inc edx
cmp al, 0x30
jae 0x1400251c6
cmp byte [rcx + rbx], 0x29
mov qword [rbp + 0x28], rbx
jne 0x1400251ef
lea eax, [rdx + 1]
movsxd r14, eax
add r14, rbx
mov qword [rbp + 0x28], r14
cmp byte [r14], 0x28
jne 0x140026b5d
cmp byte [r14 + 1], 0x3f
jne 0x14002523d
movzx eax, byte [r14 + 2]
cmp al, 0x3d
je 0x14002521e
cmp al, 0x21
je 0x14002521e
cmp al, 0x3c
jne 0x14002523d
movzx eax, byte [r14 + 3]
cmp al, 0x3d
je 0x14002521e
cmp al, 0x21
jne 0x14002523d
mov rsi, qword [rbp - 0x70]
mov eax, 1
mov r9, qword [rbp + 0x1a8]
mov ecx, r15d
mov dword [r11 + 0xb0], eax
jmp 0x140025435
mov rsi, qword [rbp - 0x70]
mov r10d, r8d
mov dword [rbp - 0x3c], r8d
mov r13, r15
mov r8d, 0xffffffff
mov edx, r15d
mov r14d, r8d
mov byte [rsi + 3], 0x8d
mov rbx, qword [rbp - 0x80]
inc rbx
mov qword [rbp - 0x80], rbx
movzx ecx, byte [rbx]
cmp cl, 0x52
jne 0x14002528d
cmp byte [rbx + 1], 0x26
jne 0x140025360
lea rax, [rbx + 2]
mov r15d, r8d
mov qword [rbp - 0x80], rax
mov byte [rsi + 3], 0x8f
mov rbx, qword [rbp - 0x80]
jmp 0x1400252a3
cmp cl, 0x3c
jne 0x140025350
mov r15d, 0x3e
inc rbx
mov qword [rbp - 0x80], rbx
movzx edx, byte [rbx]
mov dword [rbp - 0x50], r15d
lea eax, [rdx - 0x30]
cmp al, 9
jbe 0x140026cf5
mov rcx, qword [r11 + 0x18]
test byte [rdx + rcx], 0x10
je 0x140026b5d
mov r13, rbx
inc rbx
mov qword [rbp - 0x80], rbx
mov r14d, ebx
movzx eax, byte [rbx]
test byte [rax + rcx], 0x10
je 0x1400252f3
nop dword [rax]
inc rbx
mov qword [rbp - 0x80], rbx
mov r14, rbx
movzx eax, byte [rbx]
test byte [rax + rcx], 0x10
jne 0x1400252e0
mov r9, qword [rbp + 0x1a8]
sub r14d, r13d
test r9, r9
mov r10d, 5
mov eax, 3
cmove r10d, eax
xor ecx, ecx
mov dword [rbp - 0x3c], r10d
mov edx, ecx
test r15d, r15d
jle 0x1400253c3
movzx ecx, byte [rbx]
inc rbx
mov qword [rbp - 0x80], rbx
mov dword [rbp - 0x3c], r10d
mov dword [rbp - 0x50], r15d
cmp cl, r15b
je 0x1400253c1
mov rax, qword [rbp + 0x168]
dec rbx
mov dword [rax], 0x1a
jmp 0x140026dfb
cmp cl, 0x27
jne 0x140025360
mov r15d, 0x27
jmp 0x14002529c
lea eax, [rcx - 0x2b]
mov dword [rbp - 0x50], r15d
test al, 0xfd
je 0x14002537e
sub cl, 0x30
cmp cl, 9
ja 0x1400252a3
xor eax, eax
mov r8d, eax
jmp 0x140025388
inc rbx
mov r8d, ecx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
cmp al, 0x30
jb 0x1400253ba
nop
cmp al, 0x39
ja 0x1400253ba
cmp edx, 0xccccccb
jg 0x140026b6f
inc rbx
movzx eax, al
lea edx, [rdx + rdx*4]
mov qword [rbp - 0x80], rbx
lea edx, [rdx - 0x18]
lea edx, [rax + rdx*2]
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x140025390
mov r9, qword [rbp + 0x1a8]
xor ecx, ecx
movzx eax, byte [rbx]
inc rbx
mov qword [rbp - 0x80], rbx
cmp al, 0x29
jne 0x14002533b
test r9, r9
jne 0x14002542e
test r8d, r8d
js 0x140025480
test edx, edx
jle 0x140026ba8
test r8d, r8d
je 0x14002540b
mov eax, dword [r11 + 0x70]
cmp r8d, 0x2d
jne 0x140025401
sub eax, edx
lea edx, [rax + 1]
jmp 0x140025403
add edx, eax
test edx, edx
jle 0x140025cfe
cmp edx, dword [r11 + 0x74]
jg 0x140025cfe
mov eax, edx
mov byte [rsi + 5], dl
shr eax, 8
mov byte [rsi + 4], al
cmp edx, dword [r11 + 0x7c]
jle 0x14002542a
mov dword [r11 + 0x7c], edx
mov rbx, qword [rbp - 0x80]
mov r13d, dword [rbp - 0x54]
mov ecx, dword [rbp - 0x58]
mov eax, dword [r11 + 0x88]
inc eax
mov dword [r11 + 0x88], eax
cmp eax, 0xfa
jg 0x140026c95
cmp r13d, 0x80
ja 0x140025e16
cmp dword [r11 + 0xb0], 0
je 0x140025e16
xor edx, edx
mov r15d, edx
mov qword [rbp - 0x38], rdx
mov dword [r11 + 0xb0], edx
jmp 0x140025e2a
cmp dword [r11 + 0x60], 0
mov edi, ecx
mov rax, qword [r11 + 0x58]
mov qword [rbp + 0x38], rax
movsxd rsi, r14d
jle 0x1400254e9
mov r15, rax
nop word [rax + rax]
lea rdx, [r15 + 2]
mov r8, rsi
mov rcx, r13
call fcn.1400d3900
test eax, eax
jne 0x1400254ba
cmp byte [rsi + r15 + 2], al
je 0x1400254d6
mov r11, qword [rbp + 0x1a0]
inc edi
movsxd rax, dword [r11 + 0x64]
add r15, rax
mov qword [rbp + 0x38], r15
cmp edi, dword [r11 + 0x60]
jl 0x1400254a0
jmp 0x1400254dd
mov r11, qword [rbp + 0x1a0]
mov rbx, qword [rbp - 0x80]
mov r15d, dword [rbp - 0x50]
mov rax, qword [rbp + 0x38]
mov ecx, dword [r11 + 0x60]
cmp edi, ecx
jge 0x1400255a5
movzx r14d, byte [rax]
mov ebx, 1
movzx eax, byte [rax + 1]
shl r14d, 8
mov dword [rbp - 0x50], edi
or r14d, eax
inc edi
cmp r14d, dword [r11 + 0x7c]
jle 0x140025518
mov dword [r11 + 0x7c], r14d
cmp edi, ecx
jge 0x14002558b
mov r15, qword [rbp + 0x38]
movsxd rax, dword [r11 + 0x64]
mov r8, rsi
add r15, rax
mov rcx, r13
lea rdx, [r15 + 2]
call fcn.1400d3900
test eax, eax
jne 0x140025552
cmp byte [rsi + r15 + 2], al
jne 0x140025552
mov r11, qword [rbp + 0x1a0]
inc ebx
inc edi
cmp edi, dword [r11 + 0x60]
jl 0x140025520
mov qword [rbp + 0x38], r15
mov r15d, dword [rbp - 0x50]
cmp ebx, 1
jle 0x14002558b
mov rsi, qword [rbp - 0x70]
mov eax, r15d
mov r10d, dword [rbp - 0x3c]
sar eax, 8
add r10d, 2
mov byte [rsi + 4], al
mov eax, ebx
sar eax, 8
inc byte [rsi + 3]
mov byte [rsi + 6], al
mov byte [rsi + 5], r15b
mov byte [rsi + 7], bl
jmp 0x140025646
mov rsi, qword [rbp - 0x70]
mov eax, r14d
mov r10d, dword [rbp - 0x3c]
shr eax, 8
mov byte [rsi + 4], al
mov byte [rsi + 5], r14b
jmp 0x140025646
test r15d, r15d
jne 0x140025cfe
cmp byte [r13], 0x52
jne 0x140025616
xor eax, eax
mov ecx, eax
mov eax, 1
mov edx, eax
cmp rax, rsi
jge 0x1400255f8
movzx r8d, byte [rdx + r13]
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x140025cfe
cmp ecx, 0xccccccb
jg 0x140026cc2
lea ecx, [rcx + rcx*4]
inc rdx
lea ecx, [rcx - 0x18]
lea ecx, [r8 + rcx*2]
cmp rdx, rsi
jl 0x1400255c5
test ecx, ecx
jne 0x1400255fd
mov ecx, 0xffff
mov rsi, qword [rbp - 0x70]
mov eax, ecx
mov r10d, dword [rbp - 0x3c]
sar eax, 8
mov byte [rsi + 3], 0x8f
mov byte [rsi + 4], al
mov byte [rsi + 5], cl
jmp 0x140025646
cmp r14d, 6
jne 0x140025cfe
mov r8d, r14d
lea rdx, str.DEFINE
mov rcx, r13
call fcn.1400d3900
test eax, eax
jne 0x140026d3a
mov rsi, qword [rbp - 0x70]
lea r10d, [r14 - 5]
mov byte [rsi + 3], 0x91
mov rdi, qword [rbp - 0x18]
mov rbx, qword [rbp - 0x80]
mov r11, qword [rbp + 0x1a0]
mov r9, qword [rbp + 0x1a8]
jmp 0x14002542e
inc dword [r11 + 0x8c]
mov r13d, 0x7d
mov rsi, qword [rbp - 0x70]
inc rbx
mov r9, qword [rbp + 0x1a8]
mov ecx, r15d
mov qword [rbp - 0x80], rbx
jmp 0x140025435
inc rbx
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x29
jne 0x1400256f3
movzx ecx, byte [rbx + 1]
lea eax, [rcx - 0x2a]
cmp al, 1
jbe 0x1400256f3
cmp cl, 0x3f
je 0x1400256f3
cmp cl, 0x7b
jne 0x1400256b6
lea rcx, [rbx + 2]
call fcn.140028cc0
test eax, eax
jne 0x1400256f3
mov r9, qword [rbp - 0x70]
mov r13d, dword [rbp - 0x60]
mov r12d, dword [rbp - 0x68]
mov r8d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
mov rdi, qword [rbp + 0x168]
mov rax, qword [rbp + 0x10]
mov byte [r9], 0x9d
inc r9
mov rbx, qword [rbp - 0x80]
inc rbx
mov qword [rbp - 0x70], r9
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x38], r15
jmp 0x140022600
inc dword [r11 + 0x8c]
mov r13d, 0x7e
mov rsi, qword [rbp - 0x70]
mov ecx, r15d
mov r9, qword [rbp + 0x1a8]
jmp 0x140025435
movzx eax, byte [rbx + 1]
cmp al, 0x21
je 0x140025847
cmp al, 0x3d
je 0x14002583f
mov ecx, eax
lea r8, [r11 + 0x18]
mov rax, qword [r8]
test byte [rcx + rax], 0x10
je 0x140026bba
movzx r10d, byte [rbx]
inc rbx
mov qword [rbp - 0x80], rbx
mov r12, rbx
mov rdx, rbx
movzx eax, byte [rbx]
cmp al, 0x30
jb 0x14002575d
mov r8, r9
cmp al, 0x39
jbe 0x140026cf5
mov rcx, qword [r8]
test byte [rax + rcx], 0x10
je 0x140025780
nop word [rax + rax]
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test byte [rax + rcx], 0x10
jne 0x140025770
mov r14d, ebx
sub r14d, edx
cmp qword [rbp + 0x1a8], r15
je 0x140025a49
mov r15d, dword [r11 + 0x70]
mov eax, 0x27
inc r15d
mov ecx, 0x3e
cmp r10b, 0x3c
cmove eax, ecx
cmp byte [rbx], al
jne 0x140026d19
mov ecx, dword [r11 + 0x60]
cmp ecx, 0x2710
jge 0x140026c36
lea eax, [r14 + 3]
cmp eax, dword [r11 + 0x64]
jle 0x1400257db
mov dword [r11 + 0x64], eax
cmp r14d, 0x20
jg 0x140026d07
mov rdi, qword [r11 + 0x50]
xor eax, eax
mov esi, eax
test ecx, ecx
jle 0x14002599c
nop dword [rax + rax]
cmp r14d, dword [rdi + 8]
jne 0x140025975
mov rdx, qword [rdi]
mov rcx, r12
movsxd r8, r14d
call fcn.1400d3900
test eax, eax
jne 0x14002596e
cmp dword [rdi + 0xc], r15d
je 0x140025991
test dword [rbp - 0x68], 0x80000
je 0x140026bf4
mov r11, qword [rbp + 0x1a0]
mov eax, 1
mov dword [r11 + 0xa8], eax
jmp 0x14002597f
mov r13d, 0x7f
jmp 0x14002584d
mov r13d, 0x80
inc dword [r11 + 0x8c]
mov ecx, r15d
mov rsi, qword [rbp - 0x70]
add rbx, 2
mov r9, qword [rbp + 0x1a8]
mov qword [rbp - 0x80], rbx
jmp 0x140025435
mov r13d, 0x81
jmp 0x14002566e
mov rax, qword [rbp - 0x70]
mov ecx, r15d
mov qword [rbp + 0x50], rax
mov dword [rbp + 0x4c], 1
mov byte [rax], 0x76
lea rdx, [rax + 1]
mov rbx, qword [rbp - 0x80]
inc rbx
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x30
jb 0x1400258cb
movzx eax, byte [rbx]
cmp al, 0x39
ja 0x1400258cb
lea ecx, [rcx + rcx*4]
inc rbx
lea ecx, [rcx - 0x18]
mov qword [rbp - 0x80], rbx
lea ecx, [rax + rcx*2]
cmp ecx, 0xff
jg 0x140026bcf
cmp byte [rbx], 0x30
jae 0x1400258a3
cmp byte [rbx], 0x29
jne 0x140026be1
mov r13d, dword [rbp - 0x60]
lea r9, [rdx + 5]
mov r12d, dword [rbp - 0x68]
mov r8d, dword [rbp - 0x78]
mov rdi, qword [rbp + 0x168]
mov byte [rdx], cl
mov eax, dword [rbp - 0x80]
sub eax, dword [r11 + 0x30]
inc eax
mov qword [rbp - 0x70], r9
sar eax, 8
mov byte [rdx + 1], al
movzx eax, byte [rbp - 0x80]
sub al, byte [r11 + 0x30]
inc al
mov word [rdx + 3], r15w
mov byte [rdx + 2], al
mov rbx, qword [rbp - 0x80]
mov edx, dword [rbp - 0x74]
inc rbx
mov rax, qword [rbp + 0x10]
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x38], r15
jmp 0x140022600
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
cmp al, 0x3d
je 0x140025959
cmp al, 0x3e
je 0x14002595b
cmp al, 0x3c
je case.0x140025161.35
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x29
jmp 0x140026dfb
cmp al, 0x3e
mov r13d, dword [rbp - 0x60]
sete r15b
mov r8d, 0x29
jmp 0x140026139
mov r11, qword [rbp + 0x1a0]
cmp dword [rdi + 0xc], r15d
je 0x140026c0a
inc esi
add rdi, 0x10
cmp esi, dword [r11 + 0x60]
jl 0x1400257f0
jmp 0x140025998
mov r11, qword [rbp + 0x1a0]
mov rbx, qword [rbp - 0x80]
mov eax, dword [r11 + 0x60]
cmp esi, eax
jl 0x140025a45
mov ecx, dword [r11 + 0x68]
cmp eax, ecx
jl 0x140025a0e
lea edi, [rcx + rcx]
movsxd rcx, edi
shl rcx, 4
call qword [0x14022fd28]
mov rbx, rax
test rax, rax
je 0x140026c20
mov rax, qword [rbp + 0x1a0]
mov rcx, rbx
movsxd r8, dword [rax + 0x68]
mov rdx, qword [rax + 0x50]
shl r8, 4
call fcn.14001cb10
mov r11, qword [rbp + 0x1a0]
cmp dword [r11 + 0x68], 0x14
jle 0x140025a06
mov rcx, qword [r11 + 0x50]
call qword [fcn.14001faf0]
mov r11, qword [rbp + 0x1a0]
mov qword [r11 + 0x50], rbx
mov dword [r11 + 0x68], edi
movsxd rcx, dword [r11 + 0x60]
mov rax, qword [r11 + 0x50]
add rcx, rcx
mov qword [rax + rcx*8], r12
movsxd rcx, dword [r11 + 0x60]
mov rax, qword [r11 + 0x50]
add rcx, rcx
mov dword [rax + rcx*8 + 8], r14d
movsxd rcx, dword [r11 + 0x60]
mov rax, qword [r11 + 0x50]
add rcx, rcx
mov dword [rax + rcx*8 + 0xc], r15d
inc dword [r11 + 0x60]
mov rbx, qword [rbp - 0x80]
mov rdi, qword [rbp - 0x18]
mov r12d, dword [rbp - 0x3c]
inc rbx
mov qword [rbp - 0x80], rbx
mov eax, dword [r11 + 0x70]
mov r10d, 2
mov rsi, qword [rbp - 0x70]
inc eax
mov r9, qword [rbp + 0x1a8]
mov dword [r11 + 0x70], eax
shr eax, 8
mov byte [rsi + 3], al
movzx eax, byte [r11 + 0x70]
mov byte [rsi + 4], al
mov rbx, qword [rbp - 0x80]
jmp 0x140025432
mov r13d, dword [rbp - 0x60]
mov r8d, 0x29
lea r15d, [r8 - 0x28]
jmp 0x140026139
inc rbx
mov r12d, r15d
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x29
je 0x1400262e3
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x1d
jmp 0x140026dfb
mov rdi, qword [rbp + 0x168]
mov r8d, 0x29
jmp 0x140025c4f
test dword [rbp - 0x68], 0x1000
je 0x140025a54
mov rsi, qword [rbp - 0x70]
mov r13d, 0x83
mov r9, qword [rbp + 0x1a8]
mov ecx, r15d
jmp 0x140025435
mov r9d, dword [r11 + 0x70]
lea rdx, [rbp + 0x48]
xor r15d, r15d
mov qword [rbp + 0x28], rbx
mov dword [rsp + 0x28], r15d
lea rcx, [rbp - 0x80]
mov r8, rdi
mov dword [rsp + 0x20], r12d
call fcn.140020e90
mov r12d, eax
cmp dword [rdi], r15d
jne 0x140023090
test eax, eax
jne 0x140025b8c
mov ecx, dword [rbp - 0x78]
mov eax, dword [rbp + 0x48]
test ecx, ecx
je 0x140025b6f
cmp eax, 0x7f
jbe 0x140025b6f
mov ecx, eax
lea rdx, [rbp - 0x10]
call fcn.14003b320
mov r11, qword [rbp + 0x1a0]
mov r9d, eax
mov r10, qword [rbp - 0x70]
mov r15, r10
mov qword [rbp - 0x38], r10
mov r12, qword [r11 + 0x40]
sub r12, qword [r11 + 0x20]
mov qword [rbp + 8], r12
mov r12d, dword [rbp - 0x68]
jmp 0x140023e25
mov r11, qword [rbp + 0x1a0]
mov r9d, 1
mov r10, qword [rbp - 0x70]
mov r12d, dword [rbp - 0x68]
mov byte [rbp - 0x10], al
jmp 0x140023e0a
mov r10d, dword [rbp - 0x5c]
cmp r10d, 0xfffffffe
jne 0x140025ba9
add eax, 0xfffffffa
cmp eax, 0x10
mov eax, 0xffffffff
cmovbe r10d, eax
mov dword [rbp - 0x5c], r10d
mov eax, dword [rbp - 0x20]
mov r13d, dword [rbp - 0x28]
mov esi, dword [rbp - 0x30]
mov dword [rbp], eax
mov dword [rbp - 0x60], r13d
mov dword [rbp - 0x64], esi
mov dword [rbp - 0x24], r10d
cmp r12d, 0x1b
jne 0x1400260dd
mov r11, qword [rbp + 0x1a0]
mov r8d, 0x27
mov rbx, qword [rbp - 0x80]
mov r9d, 0x3e
inc rbx
mov r10d, r15d
mov qword [rbp - 0x80], rbx
lea rdx, [rbx + 1]
mov rax, qword [r11 + 0x40]
sub rax, qword [r11 + 0x20]
cmp byte [rbx], 0x3c
mov qword [rbp + 8], rax
movzx eax, byte [rdx]
cmove r8d, r9d
cmp al, 0x39
ja 0x1400260d5
movabs rcx, 0x3ff280000000000
bt rcx, rax
jae 0x1400260d5
movzx eax, byte [rbx + 2]
lea rcx, [rbx + 2]
cmp al, 0x30
jb 0x140025c3f
nop
cmp al, 0x39
ja 0x140025c3f
movzx eax, byte [rcx + 1]
inc rcx
cmp al, 0x30
jae 0x140025c30
cmp byte [rcx], r8b
jne 0x140026cdf
mov rbx, rdx
mov qword [rbp - 0x80], rdx
movzx edx, byte [rbx]
cmp dl, 0x2b
jne 0x140025c70
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
sub al, 0x30
cmp al, 9
ja 0x140026c48
mov r12d, r15d
jmp 0x140025c9b
movzx eax, dl
cmp dl, 0x2d
jne 0x140025c94
movzx eax, byte [rbx + 1]
lea rcx, [rbx + 1]
sub al, 0x30
cmp al, 9
ja case.0x140025161.46
mov qword [rbp - 0x80], rcx
mov rbx, rcx
movzx eax, byte [rcx]
mov r12d, r15d
cmp al, 0x30
jb 0x140025ccf
movzx eax, byte [rbx]
nop
cmp al, 0x39
ja 0x140025ccf
cmp r12d, 0xccccccb
jg 0x140026ca7
inc rbx
movzx eax, al
lea r12d, [r12 + r12*4]
mov qword [rbp - 0x80], rbx
lea r12d, [r12 - 0x18]
lea r12d, [rax + r12*2]
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x140025ca0
cmp byte [rbx], r8b
jne 0x140025aac
cmp dl, 0x2d
jne 0x1400260ba
test r12d, r12d
je 0x140026cd4
mov eax, dword [r11 + 0x70]
sub eax, r12d
lea r12d, [rax + 1]
test r12d, r12d
jg 0x1400262e3
mov rax, qword [rbp + 0x168]
mov dword [rax], reloc.WS2_32.dll_ntohs
jmp 0x140026dfb
cmp byte [rbx], 0x29
lea rdx, [rbp + 0x78]
mov eax, r15d
mov dword [rbp + 0x78], r15d
mov dword [rbp - 0x3c], eax
mov r12d, r15d
je 0x140025da7
lea r8, [0x140000000]
movzx eax, byte [rbx]
cmp al, 0x3a
je 0x140025da0
inc rbx
sub eax, 0x2d
mov qword [rbp - 0x80], rbx
cmp eax, 0x4b
ja case.0x140025d61.53
cdqe
movzx eax, byte [r8 + rax + 0x2707c]
mov ecx, dword [r8 + rax*4 + 0x27058]
add rcx, r8
jmp rcx
lea rdx, [rbp - 0x3c]
jmp 0x140025d9b
or dword [rdx], 0x80000
or dword [r11 + 0x94], 0x400
jmp 0x140025d9b
or dword [rdx], 1
jmp 0x140025d9b
or dword [rdx], 2
jmp 0x140025d9b
or dword [rdx], 4
jmp 0x140025d9b
or dword [rdx], 8
jmp 0x140025d9b
or dword [rdx], 0x200
jmp 0x140025d9b
or dword [rdx], 0x40
cmp byte [rbx], 0x29
jne 0x140025d31
mov r12d, dword [rbp + 0x78]
mov eax, dword [rbp - 0x3c]
or r12d, dword [rbp - 0x68]
not eax
and r12d, eax
cmp byte [rbx], 0x29
jne 0x140025df2
mov r13d, dword [rbp - 0x60]
mov eax, r12d
mov r9, qword [rbp - 0x70]
shr eax, 9
and eax, 1
mov dword [rbp - 0x68], r12d
mov dword [rbp + 0x7c], eax
xor eax, 1
mov dword [rbp + 0x80], eax
mov eax, r12d
and eax, 1
mov qword [rbp - 0x38], r15
mov dword [rbp + 0x18], eax
mov rax, qword [rbp + 0x150]
mov dword [rax], r12d
jmp 0x140026a59
mov rsi, qword [rbp - 0x70]
lea rdi, [r11 + 0x40]
mov r9, qword [rbp + 0x1a8]
inc rbx
mov qword [rbp - 0x80], rbx
mov r13d, 0x83
mov ecx, r15d
jmp 0x140025435
mov rax, qword [rdi]
mov r15, rsi
sub rax, qword [r11 + 0x20]
mov qword [rbp + 8], rax
xor edx, edx
mov qword [rbp - 0x38], rsi
mov r14, qword [rbp + 0x168]
lea eax, [r13 - 0x7f]
cmp eax, 1
mov byte [rsi], r13b
mov edi, dword [r11 + 0x98]
lea rax, [rbp + 0x20]
mov ebx, dword [r11 + 0x70]
mov r8d, edx
setbe r8b
mov dword [rbp + 0x20], edx
test r9, r9
mov qword [rbp - 8], rsi
mov r9, r14
cmove rax, rdx
cmp r13d, 0x87
mov qword [rsp + 0x70], rax
mov rax, qword [rbp + 0x190]
sete dl
add edx, dword [rbp + 0x198]
mov qword [rsp + 0x68], r11
mov qword [rsp + 0x60], rax
lea rax, [rbp + 0x1c]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x44]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x84]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], edx
lea rdx, [rbp - 8]
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], ecx
mov ecx, r12d
mov dword [rsp + 0x20], r8d
lea r8, [rbp - 0x80]
call fcn.1400270d0
test eax, eax
je 0x140023090
mov r11, qword [rbp + 0x1a0]
dec dword [r11 + 0x88]
cmp r13d, 0x81
jne 0x140025f68
cmp dword [r11 + 0x70], ebx
ja 0x140025ef9
mov byte [rsi], 0x82
mov ecx, dword [rbp + 0x30]
mov r8d, 0xffffffff
mov eax, dword [rbp + 0x1c]
mov rbx, qword [rbp - 0x80]
cmp byte [rbx], 0x29
jne 0x140026c88
mov r9, qword [rbp + 0x1a8]
test r9, r9
je 0x140026000
mov r8d, dword [rbp + 0x20]
mov ecx, 0x7fffffeb
mov edx, dword [r9]
sub ecx, edx
lea eax, [r8 - 6]
cmp ecx, eax
jl 0x140026dde
mov r13d, dword [rbp - 0x60]
lea eax, [r8 - 6]
mov r12d, dword [rbp - 0x68]
add eax, edx
mov dword [r9], eax
lea r9, [rsi + 6]
mov dword [rsi + 1], 0x780300
mov byte [rsi + 5], 3
mov esi, dword [rbp - 0x64]
mov qword [rbp - 0x70], r9
jmp 0x140026a55
cmp r13d, 0x80
ja 0x140025f7d
dec dword [r11 + 0x8c]
jmp 0x140025ef9
cmp r13d, 0x87
jne 0x140025ef9
cmp qword [rbp + 0x1a8], 0
jne 0x140025ef9
xor eax, eax
mov rdx, rsi
mov r8d, eax
movzx ecx, byte [rdx + 1]
inc r8d
movzx eax, byte [rdx + 2]
shl rcx, 8
or rcx, rax
add rdx, rcx
cmp byte [rdx], 0x78
jne 0x140025fa0
cmp byte [rsi + 3], 0x91
jne 0x140025fd5
cmp r8d, 1
jg 0x140026c68
mov r13d, 0x91
jmp 0x140025ef9
cmp r8d, 2
jg 0x140026c78
cmp r8d, 1
jne 0x140025ef9
mov r8d, 0xffffffff
mov eax, r8d
mov ecx, r8d
mov dword [rbp + 0x1c], eax
mov dword [rbp + 0x30], ecx
jmp 0x140025f05
mov r9, qword [rbp - 8]
mov qword [rbp - 0x70], r9
cmp r13d, 0x91
je 0x1400260aa
mov edx, dword [rbp - 0x28]
mov esi, dword [rbp - 0x30]
mov r10d, dword [rbp - 0x5c]
mov dword [rbp - 0x60], edx
mov edx, dword [rbp - 0x20]
mov dword [rbp], edx
xor edx, edx
mov dword [rbp - 0x64], esi
mov dword [rbp - 0x24], r10d
mov dword [rbp + 0x40], edx
cmp r13d, 0x81
jb 0x14002609c
cmp r10d, 0xfffffffe
jne 0x14002606a
test ecx, ecx
js 0x140026060
mov edx, dword [rbp + 0x84]
mov dword [rbp - 0x20], edx
mov dword [rbp - 0x5c], ecx
mov dword [rbp + 0x40], 1
mov dword [rbp - 0x24], r8d
jmp 0x140026082
mov dword [rbp - 0x5c], r8d
mov dword [rbp - 0x24], r8d
jmp 0x140026082
test ecx, ecx
js 0x140026082
test eax, eax
jns 0x140026086
mov eax, dword [rbp + 0x84]
mov dword [rbp + 0x44], eax
mov eax, ecx
or eax, edi
mov dword [rbp + 0x1c], eax
test eax, eax
js 0x14002608f
mov ecx, dword [rbp + 0x44]
mov dword [rbp - 0x28], ecx
mov dword [rbp - 0x30], eax
mov r13d, dword [rbp - 0x60]
mov r12d, dword [rbp - 0x68]
jmp 0x140026a59
cmp r13d, 0x7d
jne 0x14002608f
test eax, eax
js 0x14002608f
test ecx, ecx
jmp 0x140026084
mov esi, dword [rbp - 0x64]
mov r13d, dword [rbp - 0x60]
mov r12d, dword [rbp - 0x68]
jmp 0x140026a59
cmp dl, 0x2b
jne 0x1400262e3
test r12d, r12d
je 0x140026cd4
add r12d, dword [r11 + 0x70]
jmp 0x1400262e3
mov r15d, 1
jmp 0x14002613f
cmp r12d, 0x1c
jne 0x1400265a2
mov rbx, qword [rbp - 0x80]
movzx ecx, byte [rbx + 1]
lea rax, [rbx + 1]
cmp cl, 0x3c
je 0x140026106
cmp cl, 0x27
je 0x140026106
cmp cl, 0x7b
jne 0x140026cea
mov r11, qword [rbp + 0x1a0]
mov rbx, rax
mov qword [rbp - 0x80], rax
movzx ecx, byte [rax]
cmp cl, 0x3c
jne 0x140026127
mov r9d, 0x3e
mov r8d, r9d
jmp 0x14002613f
cmp cl, 0x27
mov r8d, 0x7d
mov ecx, 0x27
cmove r8d, ecx
mov r9d, 0x3e
inc rbx
mov qword [rbp - 0x80], rbx
mov r14, rbx
mov rdx, rbx
cmp byte [rbx], 0x30
movzx eax, byte [rbx]
jb 0x14002615c
cmp al, 0x39
jbe 0x140026cf5
mov rcx, qword [r11 + 0x18]
test byte [rax + rcx], 0x10
je 0x140026180
nop word [rax + rax]
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test byte [rax + rcx], 0x10
jne 0x140026170
mov edi, ebx
sub edi, edx
mov rdx, qword [rbp + 0x1a8]
test rdx, rdx
je 0x14002625b
xor ecx, ecx
mov r12d, ecx
test edi, edi
je 0x140026d2b
cmp byte [rbx], r8b
jne 0x140026d19
cmp edi, 0x20
jg 0x140026d07
test r15d, r15d
jne 0x1400261bf
inc dword [r11 + 0x84]
mov eax, dword [rdx]
add eax, 0xe
mov dword [rdx], eax
cmp dword [r11 + 0xac], ecx
je 0x1400261d4
add eax, 0xc
mov dword [rdx], eax
mov r9d, dword [r11 + 0x60]
mov esi, ecx
mov rbx, qword [r11 + 0x50]
test r9d, r9d
jle 0x140026252
cmp edi, dword [rbx + 8]
jne 0x14002623c
mov rdx, qword [rbx]
mov rcx, r14
movsxd r8, edi
call fcn.1400d3900
test eax, eax
jne 0x140026235
mov r12d, dword [rbx + 0xc]
test r15d, r15d
jne 0x1400262e3
mov r11, qword [rbp + 0x1a0]
mov rcx, qword [r11 + 0x48]
test rcx, rcx
je 0x14002623c
movzx eax, word [rcx + 8]
cmp eax, r12d
je 0x14002622a
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140026217
jmp 0x14002623c
mov eax, 1
mov word [rcx + 0xa], ax
jmp 0x14002623c
mov r11, qword [rbp + 0x1a0]
mov r9d, dword [r11 + 0x60]
inc esi
add rbx, 0x10
cmp esi, r9d
jl 0x1400261e3
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x38]
jmp 0x1400262da
mov r12, qword [r11 + 0x58]
xor eax, eax
mov esi, eax
mov qword [rbp + 0x38], r12
cmp dword [r11 + 0x60], eax
jle 0x1400262b9
movsxd rbx, edi
lea rdx, [r12 + 2]
mov r8, rbx
mov rcx, r14
call fcn.1400d3900
test eax, eax
jne 0x14002628b
cmp byte [rbx + r12 + 2], al
je 0x1400262a7
mov r11, qword [rbp + 0x1a0]
inc esi
movsxd rax, dword [r11 + 0x64]
add r12, rax
mov qword [rbp + 0x38], r12
cmp esi, dword [r11 + 0x60]
jl 0x140026270
jmp 0x1400262ae
mov r11, qword [rbp + 0x1a0]
mov rbx, qword [rbp - 0x80]
mov rdx, qword [rbp + 0x1a8]
mov r9d, dword [r11 + 0x60]
cmp esi, r9d
jge 0x140025cfe
movzx r12d, byte [r12]
mov rcx, qword [rbp + 0x38]
shl r12d, 8
movzx eax, byte [rcx + 1]
or r12d, eax
test r15d, r15d
je 0x14002645c
mov rdi, qword [rbp + 0x1a0]
mov rdx, qword [rbp - 0x70]
mov r15, rdx
mov qword [rbp - 0x38], rdx
mov r14, qword [rdi + 0x40]
sub r14, qword [rdi + 0x20]
cmp qword [rbp + 0x1a8], 0
mov rbx, qword [rdi + 0x28]
mov qword [rbp + 8], r14
jne 0x140026405
mov esi, dword [rbp - 0x78]
mov byte [rdx], 0
test r12d, r12d
je 0x140026332
mov rcx, qword [rdi + 0x28]
mov r8d, r12d
mov edx, esi
call fcn.14001fb00
mov rbx, rax
mov rdx, r15
test rbx, rbx
jne 0x14002639f
cmp r12d, dword [rdi + 0x74]
jg 0x140026d3a
movsxd rcx, dword [rdi + 0x6c]
add rcx, 0xffffffffffffff9c
movsxd rbx, r12d
add rcx, qword [rdi + 0x20]
add rbx, qword [rdi + 0x28]
cmp qword [rdi + 0x40], rcx
jb 0x140026373
mov rcx, rdi
call fcn.140027cf0
mov rcx, qword [rbp + 0x168]
mov dword [rcx], eax
test eax, eax
jne 0x140023090
mov rax, qword [rdi + 0x40]
mov r9, qword [rbp - 0x70]
mov ecx, r9d
sub ecx, dword [rdi + 0x28]
inc ecx
sar ecx, 8
mov byte [rax], cl
movzx ecx, r9b
sub cl, byte [rdi + 0x28]
mov rax, qword [rdi + 0x40]
inc cl
mov byte [rax + 1], cl
add qword [rdi + 0x40], 2
jmp 0x140026409
movzx ecx, byte [rbx + 1]
movzx eax, byte [rbx + 2]
shl ecx, 8
or ecx, eax
jne 0x140026405
cmp dword [rbp + 0x198], ecx
jg 0x140026405
mov rax, qword [rbp + 0x190]
mov r11, rax
test rax, rax
je 0x140026d50
nop dword [rax]
mov rcx, qword [r11 + 8]
cmp rcx, rbx
jb 0x140026d50
xor eax, eax
mov r9, rdi
mov r8d, esi
mov qword [rsp + 0x20], rax
call fcn.140027610
test eax, eax
je 0x140026405
mov r11, qword [r11]
test r11, r11
je 0x140026d50
mov rdx, qword [rbp - 0x70]
jmp 0x1400263d0
mov r9, qword [rbp - 0x70]
mov r10d, dword [rbp - 0x5c]
mov eax, ebx
mov esi, dword [rbp - 0x64]
mov r13d, dword [rbp - 0x60]
mov r12d, dword [rbp - 0x68]
mov byte [r9], 0x75
sub eax, dword [rdi + 0x28]
sar eax, 8
mov byte [r9 + 1], al
xor eax, eax
sub bl, byte [rdi + 0x28]
mov dword [rbp + 0x40], eax
mov eax, 0xffffffff
mov byte [r9 + 2], bl
add r9, 3
cmp r10d, 0xfffffffe
mov qword [rbp - 0x70], r9
cmove r10d, eax
mov eax, dword [rbp - 0x20]
mov dword [rbp - 0x5c], r10d
mov dword [rbp], eax
mov dword [rbp - 0x24], r10d
jmp 0x140026a55
test rdx, rdx
jne 0x1400265b0
cmp dword [r11 + 0xa8], edx
je 0x1400265b0
movsxd r11, dword [r11 + 0x64]
lea r10d, [rdx + 1]
mov edi, esi
inc esi
lea r14, [r11 + rcx]
cmp esi, r9d
jge 0x1400265b9
lea rbx, [rcx + 2]
nop
lea r8, [r14 + 2]
mov rax, rbx
sub r8, rbx
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400264b3
inc rax
test ecx, ecx
jne 0x1400264a0
test edx, edx
jne 0x1400264c4
inc r10d
add r14, r11
inc esi
cmp esi, r9d
jl 0x140026490
mov r11, qword [rbp + 0x1a0]
cmp r10d, 1
jle 0x1400265b0
mov rdx, qword [r11 + 0x40]
mov ecx, 0xffffffff
mov eax, dword [rbp - 0x5c]
cmp eax, 0xfffffffe
mov r12d, dword [rbp - 0x68]
mov r8, qword [rbp + 0x38]
cmove eax, ecx
mov rcx, qword [rbp - 0x70]
sub rdx, qword [r11 + 0x20]
mov r15, rcx
mov dword [rbp - 0x5c], eax
test r12b, 1
mov qword [rbp - 0x38], rcx
setne al
mov qword [rbp + 8], rdx
add al, 0x73
lea r9, [rcx + 5]
mov byte [rcx], al
mov eax, edi
shr eax, 8
mov byte [rcx + 1], al
mov eax, r10d
sar eax, 8
mov byte [rcx + 2], dil
mov byte [rcx + 3], al
mov byte [rcx + 4], r10b
mov qword [rbp - 0x70], r9
cmp r8, r14
jae 0x14002659a
mov edi, 1
nop dword [rax + rax]
movzx eax, byte [r8 + 1]
movzx edx, byte [r8]
shl edx, 8
or edx, eax
mov eax, edi
mov ecx, edx
shl eax, cl
cmp edx, 0x20
cmovae eax, edi
or dword [r11 + 0x80], eax
cmp edx, dword [r11 + 0x7c]
jle 0x14002656b
mov dword [r11 + 0x7c], edx
mov rcx, qword [r11 + 0x48]
test rcx, rcx
je 0x14002658a
movzx eax, word [rcx + 8]
cmp eax, edx
je 0x140026586
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140026574
jmp 0x14002658a
mov word [rcx + 0xa], di
movsxd rax, dword [r11 + 0x64]
add r8, rax
cmp r8, r14
jb 0x140026540
mov qword [rbp + 0x38], r8
mov esi, dword [rbp - 0x64]
jmp 0x140026a55
test r12d, r12d
jns 0x140026668
neg r12d
jmp 0x1400265c0
mov esi, dword [rbp - 0x64]
mov r10d, dword [rbp - 0x5c]
jmp 0x1400265c7
mov esi, dword [rbp - 0x64]
mov r10d, dword [rbp - 0x5c]
mov r11, qword [rbp + 0x1a0]
cmp r10d, 0xfffffffe
jne 0x1400265d8
mov eax, 0xffffffff
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x24], eax
mov r9, qword [rbp - 0x70]
mov edi, 1
mov rax, qword [r11 + 0x40]
mov r15, r9
sub rax, qword [r11 + 0x20]
test byte [rbp - 0x68], 1
mov qword [rbp + 8], rax
setne al
mov qword [rbp - 0x38], r9
add al, 0x71
mov byte [r9], al
mov eax, r12d
sar eax, 8
mov byte [r9 + 1], al
mov eax, edi
mov byte [r9 + 2], r12b
add r9, 3
mov qword [rbp - 0x70], r9
cmp r12d, 0x20
jge 0x140026623
mov ecx, r12d
shl eax, cl
or dword [r11 + 0x80], eax
cmp r12d, dword [r11 + 0x7c]
jle 0x140026634
mov dword [r11 + 0x7c], r12d
mov rcx, qword [r11 + 0x48]
test rcx, rcx
je 0x140023e7e
movzx eax, word [rcx + 8]
cmp eax, r12d
je 0x14002665b
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140026641
mov r12d, dword [rbp - 0x68]
jmp 0x140026a55
mov r12d, dword [rbp - 0x68]
mov word [rcx + 0xa], di
jmp 0x140026a55
lea eax, [r12 - 0xf]
cmp eax, 1
jbe 0x140026728
lea eax, [r12 - 4]
cmp eax, 1
jbe 0x140026686
cmp r12d, 1
jne 0x14002669e
mov r11, qword [rbp + 0x1a0]
cmp dword [r11 + 0x78], r15d
jne 0x1400266a5
mov eax, 1
mov dword [r11 + 0x78], eax
jmp 0x1400266a5
mov r11, qword [rbp + 0x1a0]
mov r9, qword [rbp - 0x70]
lea ecx, [r12 - 0x1d]
mov r8d, dword [rbp - 0x78]
cmp ecx, 5
ja 0x1400266e4
mov rax, qword [rbp - 0x80]
mov r15, qword [rbp - 0x38]
inc rax
mov r12d, dword [rbp - 0x68]
mov qword [rbp + 0x10], rax
movsxd rax, ecx
lea rcx, [0x140000000]
mov rbx, qword [rcx + rax*8 + 0x22fd50]
dec rbx
jmp 0x140026a5d
mov r10, qword [r11 + 0x40]
lea eax, [r12 - 6]
cmp eax, 0x10
cmovbe r15, r9
sub r10, qword [r11 + 0x20]
mov qword [rbp - 0x38], r15
mov qword [rbp + 8], r10
test r8d, r8d
jne 0x140026711
cmp r12d, 0xe
jne 0x140026711
mov r12d, reloc.WS2_32.dll_listen
mov byte [r9], r12b
inc r9
mov rbx, qword [rbp - 0x80]
mov r12d, dword [rbp - 0x68]
mov qword [rbp - 0x70], r9
jmp 0x140026a5d
mov rbx, qword [rbp - 0x80]
inc rbx
movzx eax, byte [rbx]
test al, al
je 0x140026776
mov edi, r15d
cmp al, 0x7b
jne 0x14002678b
cmp byte [rbx + 1], 0x5e
lea rax, [rbx + 1]
mov rcx, r15
cmove rbx, rax
sete dil
movzx eax, byte [rbx + 1]
inc rbx
test al, al
je 0x14002676f
cmp al, 0x7d
je 0x140026781
mov byte [rbp + rcx + 0xe0], al
inc rcx
cmp rcx, 0x1f
jl 0x140026750
mov rdi, qword [rbp + 0x168]
mov dword [rdi], 0x2e
jmp 0x140026dfb
mov byte [rbp + rcx + 0xe0], r15b
jmp 0x140026798
mov byte [rbp + 0xe0], al
mov byte [rbp + 0xe1], dil
mov r9d, dword [0x1400f913c]
mov r10d, r15d
mov qword [rbp - 0x80], rbx
test r9d, r9d
jle 0x140026811
lea r14, [0x140000000]
lea r8d, [r9 + r10]
sar r8d, 1
movsxd rax, r8d
lea r11, [rax + rax*2]
movzx edx, word [r14 + r11*2 + 0xf96c0]
lea rax, [0x1400f91b0]
add rdx, rax
lea rax, [rbp + 0xe0]
sub rdx, rax
nop dword [rax]
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x1400267f4
inc rax
test cl, cl
jne 0x1400267e0
mov ecx, r15d
jmp 0x1400267f9
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x140026823
lea eax, [r8 + 1]
cmovle r9d, r8d
cmovle eax, r10d
mov r10d, eax
cmp eax, r9d
jl 0x1400267b2
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x2f
jmp 0x140026dfb
mov r8, qword [rbp - 0x70]
mov rax, qword [rbp + 0x1a0]
mov r15, r8
movzx edx, byte [r14 + r11*2 + 0xf96c2]
movzx ecx, byte [r14 + r11*2 + 0xf96c4]
lea r9, [r8 + 3]
mov qword [rbp - 0x38], r8
mov r10, qword [rax + 0x40]
sub r10, qword [rax + 0x20]
mov qword [rbp + 8], r10
xor r10d, r10d
cmp r12d, 0x10
mov qword [rbp - 0x70], r9
mov r12d, dword [rbp - 0x68]
mov eax, r10d
sete al
cmp eax, edi
mov rdi, qword [rbp + 0x168]
setne al
add al, 0xf
mov byte [r8], al
mov rax, qword [rbp + 0x10]
mov byte [r8 + 1], dl
mov edx, dword [rbp - 0x74]
mov byte [r8 + 2], cl
mov rbx, qword [rbp - 0x80]
mov r8d, dword [rbp - 0x78]
inc rbx
mov qword [rbp - 0x80], rbx
jmp 0x140022600
movzx eax, byte [rbp - 0xe]
and eax, 0x3f
shl ecx, 6
or ecx, eax
test dl, 0x10
jne 0x1400268bb
and edx, 0xf
mov eax, edx
shl eax, 0xc
jmp 0x140026905
movzx eax, byte [rbp - 0xd]
and eax, 0x3f
shl ecx, 6
or ecx, eax
test dl, 8
jne 0x1400268d6
and edx, 7
mov eax, edx
shl eax, 0x12
jmp 0x140026905
movzx eax, byte [rbp - 0xc]
and eax, 0x3f
shl ecx, 6
or ecx, eax
test dl, 4
jne 0x1400268f1
and edx, 3
mov eax, edx
shl eax, 0x18
jmp 0x140026905
movzx eax, byte [rbp - 0xb]
and edx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, edx
shl eax, 0x1e
mov edx, ecx
or edx, eax
mov r8d, edx
and r8d, 0x7f
test edx, edx
jns 0x14002691b
add edx, 0x7f
add r8d, 0xffffff80
sar edx, 7
lea r14, [0x140000000]
movsxd rax, edx
movzx eax, byte [rax + r14 + 0xfb890]
shl eax, 7
add eax, r8d
cdqe
movzx ecx, word [r14 + rax*2 + 0xfda90]
movzx edx, byte [r14 + rcx*8 + 0xfa213]
test dl, dl
je 0x14002697e
cmp dword [rbp - 0x5c], 0xfffffffe
lea r9, [r10 + 3]
mov word [r10], 0x910
mov qword [rbp - 0x70], r9
mov byte [r10 + 2], dl
jne 0x140026a55
mov r14d, 0xffffffff
mov dword [rbp - 0x24], r14d
mov dword [rbp - 0x5c], r14d
jmp 0x140026a55
test r12b, 1
setne al
add al, 0x1d
mov byte [r10], al
inc r10
mov qword [rbp - 0x70], r10
test r9d, r9d
je 0x1400269b7
lea rcx, [rbp - 0x10]
mov edx, r9d
nop dword [rax]
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
mov byte [r10], al
inc r10
sub rdx, 1
jne 0x1400269a0
mov qword [rbp - 0x70], r10
movzx eax, byte [rbp - 0x10]
cmp al, 0xd
je 0x1400269c3
cmp al, 0xa
jne 0x1400269ce
or dword [r11 + 0x94], 0x800
mov r10d, dword [rbp - 0x5c]
mov r13d, dword [rbp - 0x28]
mov esi, dword [rbp - 0x30]
mov ecx, dword [rbp + 0x18]
mov dword [rbp - 0x60], r13d
mov dword [rbp - 0x64], esi
cmp r10d, 0xfffffffe
jne 0x140026a24
mov r14d, 0xffffffff
mov dword [rbp - 0x24], r14d
cmp r9d, 1
je 0x140026a0b
test ecx, ecx
je 0x140026a0b
mov r9, qword [rbp - 0x70]
mov dword [rbp - 0x30], r14d
mov dword [rbp - 0x5c], r14d
jmp 0x140026a55
cmp r9d, 1
mov dword [rbp - 0x20], eax
mov r9, qword [rbp - 0x70]
mov dword [rbp - 0x5c], ecx
je 0x140026a55
mov ecx, dword [r11 + 0x98]
jmp 0x140026a49
mov eax, dword [rbp - 0x20]
mov dword [rbp], eax
mov dword [rbp - 0x24], r10d
cmp r9d, 1
je 0x140026a3e
test ecx, ecx
je 0x140026a3e
mov r9, qword [rbp - 0x70]
jmp 0x140026a55
mov r9, qword [rbp - 0x70]
or ecx, dword [r11 + 0x98]
movzx r10d, byte [r9 - 1]
mov dword [rbp - 0x28], r10d
mov dword [rbp - 0x30], ecx
mov rbx, qword [rbp - 0x80]
mov r8d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
mov rdi, qword [rbp + 0x168]
xor r10d, r10d
mov rax, qword [rbp + 0x10]
inc rbx
mov qword [rbp - 0x80], rbx
jmp 0x140022600
cmp r9, rcx
mov eax, 0x57
mov ecx, 0x34
cmovae eax, ecx
jmp 0x140026df9
mov dword [rdi], 0x40
jmp 0x140026dfb
cmp r9b, 0x3a
mov eax, 0x1f
mov ecx, reloc.WS2_32.dll_listen
cmove eax, ecx
jmp 0x140026df9
mov rcx, qword [rbp + 0x168]
mov eax, 0x1f
mov dword [rcx], eax
jmp 0x140026dfb
mov dword [r11], 7
jmp 0x140026dfb
mov rbx, qword [rbp - 0x80]
mov dword [r11], 0x47
jmp 0x140026dfb
mov dword [r11], 0x53
jmp 0x140026dfb
mov dword [r11], 8
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 6
jmp 0x140026dfb
mov dword [rdi], 9
jmp 0x140026dfb
mov dword [rdi], 0x4b
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x42
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x3b
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x3c
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x1c
jmp 0x140026dfb
cmp al, 0x30
jb 0x140026cc2
movzx eax, byte [rbx]
nop word [rax + rax]
cmp al, 0x39
ja 0x140026cc2
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x140026b80
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x3d
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x23
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
inc rbx
mov dword [rax], 0x18
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x26
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov ecx, 0x27
mov dword [rax], ecx
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x2b
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x41
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], reloc.WS2_32.dll_setsockopt
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x31
jmp 0x140026dfb
mov dword [rdi], 0x3f
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
dec rbx
mov dword [rax], ntohl
jmp 0x140026dfb
mov rbx, qword [rbp - 0x80]
mov dword [r14], gethostname
jmp 0x140026dfb
mov rbx, qword [rbp - 0x80]
mov dword [r14], 0x1b
jmp 0x140026dfb
mov eax, reloc.WS2_32.dll_ntohl
mov dword [r14], eax
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x52
jmp 0x140026dfb
cmp al, 0x30
jb 0x140026cc2
movzx eax, byte [rbx]
nop
cmp al, 0x39
ja 0x140026cc2
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x140026cb0
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x3d
jmp 0x140026dfb
mov dword [rdi], 0x3a
jmp 0x140026dfb
mov dword [rdi], reloc.WS2_32.dll_gethostname
jmp 0x140026dfb
mov dword [rdi], 0x45
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x54
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x30
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x2a
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov dword [rax], r9d
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], reloc.WS2_32.dll_ntohs
jmp 0x140026dfb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x28
jmp 0x140026dfb
mov rax, qword [rbp + 0x170]
mov ecx, dword [rbp - 0x20]
mov r11, qword [rbp + 0x160]
mov dword [rax], ecx
mov rax, qword [rbp + 0x178]
mov ecx, dword [rbp - 0x5c]
mov dword [rax], ecx
mov rax, qword [rbp + 0x180]
mov ecx, dword [rbp - 0x28]
mov dword [rax], ecx
mov rax, qword [rbp + 0x188]
mov ecx, dword [rbp - 0x30]
mov dword [rax], ecx
mov rax, qword [rbp + 0x158]
mov qword [rax], r9
mov qword [r11], rbx
test r8, r8
je 0x140026dd7
mov edx, dword [r8]
mov eax, 0x7fffffeb
mov r10, qword [rbp + 0x88]
sub eax, edx
movsxd rcx, eax
mov rax, r9
sub rax, r10
cmp rcx, rax
jl 0x140026de5
sub r9d, r10d
add r9d, edx
mov dword [r8], r9d
mov eax, 1
jmp 0x140026e07
mov r11, qword [rbp + 0x160]
mov rax, qword [rbp + 0x168]
mov dword [rax], setsockopt
jmp 0x140026e02
mov eax, 0x34
mov dword [rdi], eax
mov r11, qword [rbp + 0x160]
mov qword [r11], rbx
xor eax, eax
add rsp, 0x208
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret