Function at 0x140048100
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 0x140048200
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 0x14004821d
test rax, rax
je 0x14004821d
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 0x140048301
lea rax, [rcx - 0x64]
cmp r9, rax
ja 0x14004c67a
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 0x14004c9de
mov eax, r9d
sub eax, dword [rbp + 0x88]
add eax, edx
mov dword [r10], eax
test r15, r15
je 0x1400482ea
mov rcx, qword [rbp + 0x98]
cmp r15, rcx
jbe 0x1400482f5
mov r8, r9
mov rdx, r15
sub r8, r15
call fcn.140025b30
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 0x14004830b
mov r9, qword [rbp + 0x98]
mov qword [rbp - 0x70], r9
mov edx, dword [rbp - 0x74]
mov qword [rbp + 0x88], r9
jmp 0x14004830b
cmp qword [r11 + 0x40], rcx
ja 0x14004c9f4
test r14d, r14d
je 0x1400483d9
cmp r14d, 0x5c
jne 0x140048343
cmp byte [rbx + 1], 0x45
jne 0x140048343
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 0x140048200
test edx, edx
je 0x1400483bb
mov rdx, qword [rbp + 0x50]
test rdx, rdx
je 0x14004837d
test r10, r10
jne 0x140048377
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.0x1400486e4.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 0x1400487c0
cmp r14d, 0x5c
jne 0x1400483d9
cmp byte [rbx + 1], 0x51
jne 0x1400483d9
mov ecx, 1
inc rbx
mov edx, ecx
mov dword [rbp - 0x74], ecx
jmp 0x14004c660
mov r15d, r12d
and r15d, 8
je 0x140048503
mov rcx, qword [r11 + 0x18]
mov rsi, rbx
mov rdx, rbx
test byte [r14 + rcx], 1
je 0x140048415
nop word [rax + rax]
inc rbx
mov qword [rbp - 0x80], rbx
mov rdx, rbx
movzx r14d, byte [rbx]
test byte [r14 + rcx], 1
jne 0x140048400
cmp r14d, 0x23
jne 0x1400484ec
lea rbx, [rdx + 1]
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0
je 0x1400484ec
mov edx, dword [r11 + 0xb4]
lea rdi, [r11 + 0xb8]
mov rcx, qword [r11 + 0x38]
test edx, edx
je 0x140048480
cmp rbx, rcx
jae 0x14004846d
mov dword [rsp + 0x20], r8d
mov r9, rdi
mov r8, rcx
mov rcx, rbx
call fcn.140050b70
mov rbx, qword [rbp - 0x80]
test eax, eax
je 0x14004846d
mov eax, 1
jmp 0x14004846f
xor eax, eax
mov r11, qword [rbp + 0x1a0]
test eax, eax
jne 0x1400484db
mov r8d, dword [rbp - 0x78]
jmp 0x1400484a9
movsxd rdx, dword [rdi]
sub rcx, rdx
cmp rbx, rcx
ja 0x1400484a9
movzx eax, byte [r11 + 0xbc]
cmp byte [rbx], al
jne 0x1400484a9
cmp edx, 1
je 0x1400484db
movzx eax, byte [r11 + 0xbd]
cmp byte [rbx + 1], al
je 0x1400484db
inc rbx
mov qword [rbp - 0x80], rbx
test r8d, r8d
je 0x1400484d0
movzx eax, byte [rbx]
and al, 0xc0
cmp al, 0x80
jne 0x1400484d0
nop
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
and al, 0xc0
cmp al, 0x80
je 0x1400484c0
cmp byte [rbx], 0
jne 0x140048430
jmp 0x1400484e5
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 0x1400481f0
cmp r14d, 0x28
jne 0x14004855b
cmp byte [rbx + 1], 0x3f
jne 0x1400485fd
cmp byte [rbx + 2], 0x23
jne 0x1400485fd
add rbx, 3
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
je 0x140048542
nop dword [rax]
cmp al, 0x29
je 0x14004854d
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
jne 0x140048530
mov dword [rdi], setsockopt
jmp 0x14004c9fb
cmp byte [rbx], 0
je 0x140048542
mov r15, qword [rbp - 0x38]
jmp 0x14004c659
cmp r14d, 0x2a
je 0x140048666
cmp r14d, 0x2b
je 0x140048666
cmp r14d, 0x3f
je 0x140048666
cmp r14d, 0x7b
jne 0x1400485fd
movzx eax, byte [rbx + 1]
lea rcx, [rbx + 1]
sub al, 0x30
cmp al, 9
ja 0x1400485fd
movzx eax, byte [rcx + 1]
inc rcx
cmp al, 0x30
jb 0x1400485b6
movzx edx, al
nop dword [rax + rax]
movzx eax, dl
cmp dl, 0x39
ja 0x1400485b6
movzx eax, byte [rcx + 1]
inc rcx
movzx edx, al
cmp al, 0x30
jae 0x1400485a0
cmp al, 0x7d
je 0x140048666
cmp al, 0x2c
jne 0x1400485fd
movzx eax, byte [rcx + 1]
cmp al, 0x7d
je 0x140048666
sub al, 0x30
cmp al, 9
ja 0x1400485fd
movzx eax, byte [rcx + 2]
add rcx, 2
cmp al, 0x30
jb 0x1400485f9
movzx edx, al
movzx eax, dl
cmp dl, 0x39
ja 0x1400485f9
movzx eax, byte [rcx + 1]
inc rcx
movzx edx, al
cmp al, 0x30
jae 0x1400485e3
cmp al, 0x7d
je 0x140048666
mov r10, qword [rbp + 0x50]
xor r8d, r8d
mov rax, qword [rbp + 0x10]
mov edx, r8d
test r10, r10
je 0x14004866f
mov r8, qword [rbp + 0x1a8]
test rax, rax
jne 0x140048676
mov ecx, dword [rbp + 0x4c]
mov eax, ecx
dec ecx
mov dword [rbp + 0x4c], ecx
test eax, eax
jg 0x1400486e6
test r8, r8
jne 0x140048659
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 0x140048679
mov rax, qword [rbp + 0x10]
mov edx, 1
mov r8, qword [rbp + 0x1a8]
xor r10d, r10d
bt r12d, 0xe
jae 0x1400486b9
test edx, edx
jne 0x1400486b9
test rax, rax
jne 0x1400486b9
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.0x1400486e4.12
lea rcx, [0x140000000]
movzx eax, byte [rcx + r14 + 0x4ca50]
mov ecx, dword [rcx + rax*4 + 0x4ca1c]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rax, qword [rbp + 0x10]
jmp 0x140048676
mov qword [rbp - 0x38], r10
mov r15, r10
test r12b, 2
je 0x140048710
cmp dword [rbp - 0x5c], 0xfffffffe
jne 0x14004870a
mov eax, 0xffffffff
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x24], eax
mov byte [r9], 0x1c
jmp 0x140048714
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 0x140048200
test r12b, 2
mov qword [rbp - 0x38], r10
mov r15, r10
setne al
add al, 0x19
mov byte [r9], al
jmp 0x140048714
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 0x14004c655
test dword [r11 + 0x90], 0x2000000
jne 0x14004c68f
mov r10, qword [rbp - 0x70]
mov ecx, dword [rbp - 0x78]
mov r9d, 1
mov byte [rbp - 0x10], r14b
test ecx, ecx
je 0x140049a0a
cmp r14d, 0xc0
jb 0x140049a0a
movzx eax, byte [rbx + 1]
and al, 0xc0
cmp al, 0x80
jne 0x140049a0a
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 0x1400487f0
mov r14, qword [r11 + 0x40]
mov r15, r10
sub r14, qword [r11 + 0x20]
mov qword [rbp + 8], r14
mov qword [rbp - 0x38], r10
jmp 0x140049a25
lea rcx, [rbx + 1]
mov r8d, 6
lea rdx, [0x1400e5400]
call fcn.14007b420
test eax, eax
jne 0x140048849
lea rbx, str._b__w_
jmp 0x14004886d
mov rcx, qword [rbp - 0x80]
lea rdx, str._:_:__
inc rcx
mov r8d, 6
call fcn.14007b420
test eax, eax
jne 0x14004888d
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 0x1400481f4
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 0x140048914
movabs rcx, 0x2400400000000000
bt rcx, r9
jae 0x140048914
movzx ecx, byte [rbx + 2]
lea rdx, [rbx + 2]
test cl, cl
je 0x140048914
cmp cl, 0x5c
jne 0x1400488ea
movzx eax, byte [rdx + 1]
sub al, cl
cmp al, 1
ja 0x1400488fa
inc rdx
jmp 0x140048909
cmp cl, 0x5b
jne 0x1400488f5
cmp byte [rdx + 1], r9b
jmp 0x1400488f8
cmp cl, 0x5d
je 0x140048914
cmp cl, r9b
jne 0x140048909
cmp byte [rdx + 1], 0x5d
je 0x14004c69a
movzx ecx, byte [rdx + 1]
inc rdx
test cl, cl
jne 0x1400488d6
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 0x140048964
cmp byte [rbx + 1], 0x45
lea rcx, [rbx + 1]
jne 0x140048941
mov ecx, dword [rbp - 0x54]
inc rbx
jmp 0x140048920
mov r8d, 3
lea rdx, [0x1400e5410]
call fcn.14007b420
mov rbx, qword [rbp - 0x80]
test eax, eax
jne 0x1400489ce
mov ecx, dword [rbp - 0x54]
add rbx, 3
jmp 0x14004891b
test ecx, ecx
jne 0x140048974
cmp edi, 0x5e
jne 0x140048974
mov ecx, eax
mov dword [rbp - 0x54], eax
jmp 0x140048920
cmp edi, 0x5d
jne 0x1400489ce
mov r11, qword [rbp + 0x1a0]
test dword [r11 + 0x90], 0x2000000
je 0x1400489d5
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 0x14004c655
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 0x14004c6f7
mov r10d, dword [rbp - 0x78]
nop word [rax + rax]
mov esi, r13d
mov r15d, r12d
mov r14d, r12d
test r10d, r10d
je 0x140048b12
cmp edi, 0xc0
jb 0x140048b12
movzx edi, byte [rbx]
cmp edi, 0xc0
jb 0x140048b12
test dil, 0x20
jne 0x140048a6e
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 0x140048b0e
movzx ecx, byte [rbx + 1]
and ecx, 0x3f
shl ecx, 6
test dil, 0x10
jne 0x140048a95
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 0x140048b07
movzx eax, byte [rbx + 2]
and eax, 0x3f
or ecx, eax
shl ecx, 6
test dil, 8
jne 0x140048abe
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 0x140048b07
movzx eax, byte [rbx + 3]
and eax, 0x3f
or ecx, eax
shl ecx, 6
test dil, 4
jne 0x140048ae7
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 0x140048b07
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 0x140048b40
cmp rax, r9
jbe 0x140048b40
sub eax, r9d
mov qword [rbp - 0x48], r9
add dword [rcx], eax
mov edx, dword [rbp - 0x74]
test edx, edx
je 0x140048b6b
cmp edi, 0x5c
jne 0x140049464
cmp byte [rbx + 1], 0x45
jne 0x140049464
xor r11d, r11d
mov ecx, r11d
inc rbx
mov dword [rbp - 0x74], ecx
jmp 0x14004978c
cmp edi, 0x5b
jne 0x140048f3b
movzx r9d, byte [rbx + 1]
movabs r13, 0x2400400000000000
cmp r9b, 0x3d
ja 0x140049457
bt r13, r9
jae 0x140049457
movzx edx, byte [rbx + 2]
lea r13, [rbx + 2]
mov r8, r13
test dl, dl
je 0x140048be7
cmp dl, 0x5c
jne 0x140048bbb
movzx eax, byte [r8 + 1]
sub al, dl
cmp al, 1
ja 0x140048bcb
inc r8
jmp 0x140048bdb
cmp dl, 0x5b
jne 0x140048bc6
cmp byte [r8 + 1], r9b
jmp 0x140048bc9
cmp dl, 0x5d
je 0x140048be7
cmp dl, r9b
jne 0x140048bdb
cmp byte [r8 + 1], 0x5d
je 0x140048c99
movzx edx, byte [r8 + 1]
inc r8
test dl, dl
jne 0x140048ba6
mov rcx, qword [rbp + 0x28]
xor edx, edx
mov eax, edx
lea r8d, [rdx + 1]
test eax, eax
je 0x14004944a
mov r15, qword [r11 + 0x10]
cmp r9b, 0x3a
jne 0x14004c6b0
mov qword [rbp - 0x80], r13
movzx r12d, byte [r13]
cmp r12b, 0x5e
jne 0x140048c23
inc r13
mov dword [rbp - 0x3c], r8d
mov qword [rbp - 0x80], r13
mov r14d, ecx
lea rdi, str.alpha
sub r14d, r13d
lea rcx, [0x140000000]
mov ebx, edx
mov rsi, rdx
nop dword [rax]
movzx eax, byte [rsi + rcx + 0xe40c8]
cmp r14d, eax
jne 0x140048c66
mov r8d, r14d
mov rdx, rdi
mov rcx, r13
call fcn.14007b420
test eax, eax
je 0x140048cb0
lea rcx, [0x140000000]
movzx eax, byte [rsi + rcx + 0xe40c8]
inc rdi
inc rsi
add rdi, rax
inc ebx
cmp byte [rsi + rcx + 0xe40c8], 0
jne 0x140048c40
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x1e
mov rbx, qword [rbp - 0x80]
jmp 0x14004c9fb
mov rcx, r8
xor edx, edx
mov r8d, 1
mov qword [rbp + 0x28], rcx
mov eax, r8d
jmp 0x140048bf3
test ebx, ebx
js 0x140048c83
mov edx, dword [rbp - 0x68]
xor edi, edi
test dl, 1
je 0x140048cc7
cmp ebx, 2
jg 0x140048cc7
mov ebx, edi
mov esi, edi
bt edx, 0x1d
jae 0x140048e07
cmp r12b, 0x5e
mov eax, edi
mov ecx, recv
cmove eax, ecx
lea rcx, [0x140000000]
add eax, ebx
cdqe
mov rcx, qword [rcx + rax*8 + 0x129d50]
test rcx, rcx
je 0x140048d25
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 0x14004978f
sub ebx, 8
je 0x140048d9c
sub ebx, 1
je 0x140048d95
cmp ebx, 1
je 0x140048d8e
mov r14, qword [rbp + 0x28]
cmp r12b, 0x5e
jne 0x140048e0b
cmp dword [rbp - 0x60], 0
jne 0x140048d53
cmp byte [r14 + 2], 0x5d
je 0x140048e0b
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.140051600
mov rdx, qword [rbp - 0x48]
mov ecx, 0x10ffff
mov eax, eax
add rdx, rax
mov qword [rbp - 0x48], rdx
call fcn.140051600
mov eax, eax
add qword [rbp - 0x48], rax
jmp 0x140048e0b
mov edx, reloc.WS2_32.dll_listen
jmp 0x140048da1
mov edx, recv
jmp 0x140048da1
mov edx, reloc.WS2_32.dll_inet_addr
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 0x140049799
mov r14, qword [rbp + 0x28]
lea rcx, [rsi + rsi*2]
lea rdx, [0x140000000]
movsxd rax, dword [rdx + rcx*4 + 0xe4140]
mov r9d, dword [rdx + rcx*4 + 0xe4144]
mov r10d, dword [rdx + rcx*4 + 0xe4148]
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 0x140048ea0
mov r8d, edi
test r10d, r10d
js 0x140048e80
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 0x140048e60
jmp 0x140048ea8
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 0x140048e80
jmp 0x140048ea5
test r10d, r10d
jns 0x140048ea8
neg r10d
cmp r10d, 1
jne 0x140048eb7
and byte [rbp + 0xa1], 0xc3
jmp 0x140048ec4
cmp r10d, 2
jne 0x140048ec4
and byte [rbp + 0xab], 0x7f
mov rcx, rdi
mov edx, 0x20
cmp r12b, 0x5e
jne 0x140048ef0
movzx eax, byte [rbp + rcx + 0xa0]
lea rcx, [rcx + 1]
not al
or byte [rbp + rcx + 0x57], al
sub rdx, 1
jne 0x140048ed2
jmp 0x140048f06
movzx eax, byte [rbp + rcx + 0xa0]
or byte [rbp + rcx + 0x58], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140048ef0
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 0x140049795
cmp edi, 0x5c
jne 0x140049464
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.1400469a0
mov r11, qword [rbp + 0x168]
mov edi, eax
cmp dword [r11], 0
jne 0x140048c90
test eax, eax
jne 0x140048f96
mov edi, dword [rbp + 0x48]
mov rbx, qword [rbp - 0x80]
mov r10d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
jmp 0x14004946b
cmp edi, 5
jne 0x140048fb0
mov rbx, qword [rbp - 0x80]
mov edi, 8
mov r10d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
jmp 0x14004946b
cmp edi, 0xc
je 0x14004c6cf
cmp edi, 0x1a
jne 0x140048ffa
mov rbx, qword [rbp - 0x80]
cmp byte [rbx + 1], 0x5c
jne 0x140048fd7
cmp byte [rbx + 2], 0x45
jne 0x140048fd7
add rbx, 2
jmp 0x14004977a
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 0x140049795
cmp edi, 0x19
je 0x140049776
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.0x14004903d.12
lea r9, [0x140000000]
cdqe
mov ecx, dword [r9 + rax*4 + 0x4cad0]
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 + 0x129d20]
dec rbx
jmp 0x14004977a
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 0x140049080
jmp 0x140049776
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 0x1400490b0
mov rbx, qword [rbp - 0x80]
jmp 0x140048f21
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 0x1400490e0
jmp 0x140049776
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 0x140049112
mov rbx, qword [rbp - 0x80]
jmp 0x140048f21
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 0x140049150
jmp 0x140049776
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 0x140049180
mov rbx, qword [rbp - 0x80]
jmp 0x140048f21
mov edx, dword [reloc.WS2_32.dll_htons]
lea rdi, [0x1400f7bf0]
cmp edx, 0xffffffff
jae 0x140049776
mov r14d, dword [rbp - 0x68]
mov r13, r8
xor r11d, r11d
nop dword [rax + rax]
mov rbx, r11
cmp edx, 0xffffffff
je 0x140049201
lea rcx, [rdi + 4]
lea eax, [rdx + 1]
cmp dword [rcx], eax
jne 0x1400491e0
inc eax
lea rcx, [rcx + 4]
inc rbx
cmp dword [rcx], eax
je 0x1400491d3
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.140045cc0
xor r11d, r11d
lea rdi, [rdi + rbx*4]
add rdi, 4
mov edx, dword [rdi]
cmp edx, 0xffffffff
jb 0x1400491c0
mov r13d, dword [rbp - 0x58]
mov rbx, qword [rbp - 0x80]
jmp 0x14004977d
lea rax, [0x1400f7bf0]
mov r9, r8
mov qword [rsp + 0x20], rax
mov r8d, ebx
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0x58]
call fcn.140045890
jmp 0x140049776
mov edx, dword [0x1400f7c40]
lea rdi, [0x1400f7c40]
cmp edx, 0xffffffff
jae 0x140049776
mov r14d, dword [rbp - 0x68]
mov r13, r8
xor r11d, r11d
mov rbx, r11
cmp edx, 0xffffffff
je 0x1400492ae
lea rcx, [rdi + 4]
lea eax, [rdx + 1]
cmp dword [rcx], eax
jne 0x14004928d
nop dword [rax]
nop dword [rax + rax]
inc eax
lea rcx, [rcx + 4]
inc rbx
cmp dword [rcx], eax
je 0x140049280
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.140045cc0
xor r11d, r11d
lea rdi, [rdi + rbx*4]
add rdi, 4
mov edx, dword [rdi]
cmp edx, 0xffffffff
jb 0x140049261
mov r13d, dword [rbp - 0x58]
mov rbx, qword [rbp - 0x80]
jmp 0x14004977d
lea rax, [0x1400f7c40]
jmp 0x140049224
mov rbx, qword [rbp - 0x80]
inc rbx
movzx eax, byte [rbx]
test al, al
je 0x140049320
xor r15d, r15d
mov esi, r15d
cmp al, 0x7b
jne 0x140049336
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 0x140049320
cmp al, 0x7d
je 0x14004932c
mov byte [rbp + rcx + 0xc0], al
inc rcx
cmp rcx, 0x1f
jl 0x140049301
mov dword [r11], gethostbyname
jmp 0x14004c9fb
mov byte [rbp + rcx + 0xc0], r15b
jmp 0x140049343
mov byte [rbp + 0xc0], al
mov byte [rbp + 0xc1], sil
mov r9d, dword [0x1400f71bc]
mov r10d, r15d
mov qword [rbp - 0x80], rbx
test r9d, r9d
jle 0x1400493c8
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 + 0xf7740]
lea rax, [0x1400f7230]
add rdx, rax
lea rax, [rbp + 0xc0]
sub rdx, rax
nop dword [rax + rax]
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x1400493a4
inc rax
test cl, cl
jne 0x140049390
mov ecx, r15d
jmp 0x1400493a9
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x1400493d4
lea eax, [r8 + 1]
cmovle r9d, r8d
cmovle eax, r10d
mov r10d, eax
cmp eax, r9d
jl 0x140049360
mov r11, qword [rbp + 0x168]
mov dword [r11], gethostbyname
jmp 0x14004c9fb
movzx edx, byte [r12 + r11*2 + 0xf7742]
cmp edi, 0x10
movzx r8d, byte [r12 + r11*2 + 0xf7744]
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 0x140048ddf
mov r12d, dword [rbp - 0x68]
mov rbx, qword [rbp - 0x80]
test r12b, 0x40
jne 0x14004c6c3
movzx edi, byte [rbx]
mov r10d, dword [rbp - 0x78]
mov edx, dword [rbp - 0x74]
jmp 0x14004946f
mov edx, dword [rbp - 0x74]
movabs r13, 0x2400400000000000
mov r11, qword [rbp + 0x168]
mov r12d, dword [rbp - 0x68]
jmp 0x140049479
mov r11, qword [rbp + 0x168]
mov r12d, dword [rbp - 0x68]
movabs r13, 0x2400400000000000
cmp byte [rbx + 1], 0x5c
jne 0x14004949d
xor ecx, ecx
cmp byte [rbx + 2], 0x45
lea rax, [rbx + 2]
jne 0x14004949a
mov qword [rbp - 0x80], rax
mov edx, ecx
cmp byte [rax + 1], 0x5c
mov rbx, rax
je 0x140049481
mov dword [rbp - 0x74], edx
mov rcx, rbx
cmp edi, 0xd
je 0x1400494aa
cmp edi, 0xa
jne 0x1400494be
mov r14, qword [rbp + 0x1a0]
or dword [r14 + 0x94], 0x800
jmp 0x1400494c5
mov r14, qword [rbp + 0x1a0]
test edx, edx
jne 0x140049725
cmp byte [rbx + 1], 0x2d
jne 0x140049725
add rbx, 2
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x5c
jne 0x1400494f7
cmp byte [rbx + 1], 0x45
jne 0x14004954c
add rbx, 2
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x5c
je 0x1400494e4
mov r8d, 1
movzx eax, byte [rbx]
test al, al
je 0x14004971e
test edx, edx
jne 0x140049514
cmp al, 0x5d
je 0x14004971e
mov dword [rbp - 0x50], eax
mov r9d, eax
test r10d, r10d
je 0x14004962b
cmp eax, 0xc0
jb 0x14004962b
test r9b, 0x20
jne 0x14004958d
movzx eax, byte [rbx + 1]
inc rbx
and r9d, 0x1f
mov qword [rbp - 0x80], rbx
shl r9d, 6
jmp 0x14004961e
cmp byte [rbx], 0x5c
jne 0x1400494f7
cmp byte [rbx + 1], 0x51
jne 0x1400494f7
add rbx, 2
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x5c
jne 0x14004957c
cmp byte [rbx + 1], 0x45
jne 0x14004957c
add rbx, 2
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x5c
je 0x140049551
jmp 0x1400494f7
mov r8d, 1
mov edx, r8d
mov dword [rbp - 0x74], edx
jmp 0x1400494fd
movzx ecx, byte [rbx + 1]
and ecx, 0x3f
shl ecx, 6
test r9b, 0x10
jne 0x1400495ad
and r9d, 0xf
lea rdx, [rbx + 2]
mov eax, r9d
shl eax, 0xc
jmp 0x14004960b
movzx eax, byte [rbx + 2]
and eax, 0x3f
or ecx, eax
shl ecx, 6
test r9b, 8
jne 0x1400495cf
and r9d, 7
lea rdx, [rbx + 3]
mov eax, r9d
shl eax, 0x12
jmp 0x14004960b
movzx eax, byte [rbx + 3]
and eax, 0x3f
or ecx, eax
shl ecx, 6
test r9b, 4
jne 0x1400495f1
and r9d, 3
lea rdx, [rbx + 4]
mov eax, r9d
shl eax, 0x18
jmp 0x14004960b
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 0x1400496eb
cmp eax, 0x5c
jne 0x140049684
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.1400469a0
mov r11, qword [rbp + 0x168]
cmp dword [r11], 0
jne 0x140048c90
mov rbx, qword [rbp - 0x80]
test eax, eax
je 0x14004967e
cmp eax, 5
jne 0x14004c6df
lea r9d, [rax + 3]
jmp 0x1400496e4
mov r9d, dword [rbp - 0x50]
jmp 0x1400496e4
cmp eax, 0x5b
jne 0x1400496eb
movzx r10d, byte [rbx + 1]
cmp r10b, 0x3d
ja 0x1400496e7
bt r13, r10
jae 0x1400496e7
movzx ecx, byte [rbx + 2]
lea rdx, [rbx + 2]
test cl, cl
je 0x1400496e4
cmp cl, 0x5c
jne 0x1400496ba
movzx eax, byte [rdx + 1]
sub al, cl
cmp al, 1
ja 0x1400496ca
inc rdx
jmp 0x1400496d9
cmp cl, 0x5b
jne 0x1400496c5
cmp byte [rdx + 1], r10b
jmp 0x1400496c8
cmp cl, 0x5d
je 0x1400496e4
cmp cl, r10b
jne 0x1400496d9
cmp byte [rdx + 1], 0x5d
je 0x14004c6df
movzx ecx, byte [rdx + 1]
inc rdx
test cl, cl
jne 0x1400496a6
mov edx, dword [rbp - 0x74]
mov r10d, dword [rbp - 0x78]
cmp r9d, edi
jb 0x14004c6eb
je 0x140049725
mov r13d, 2
mov dword [rbp - 0x58], r13d
cmp r9d, 0xd
je 0x14004970c
cmp r9d, 0xa
jne 0x140049717
or dword [r14 + 0x94], 0x800
mov dword [rsp + 0x28], r9d
jmp 0x140049757
mov rbx, rcx
mov qword [rbp - 0x80], rcx
mov dword [rbp - 0x58], esi
mov r13d, esi
cmp esi, 2
jge 0x140049738
lea r13d, [rsi + 1]
mov dword [rbp - 0x58], r13d
test edx, edx
jne 0x140049753
cmp dword [rbp - 0x64], edx
jne 0x140049753
cmp r13d, 1
jne 0x140049753
inc rbx
cmp byte [rbx], 0x5d
je 0x14004990b
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.140045cc0
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 0x1400497cb
test rsi, rsi
je 0x14004c6f7
lea rbx, [rsi + 1]
mov qword [rbp + 0x10], r11
mov qword [rbp - 0x80], rbx
movzx edi, byte [rbx]
test edi, edi
je 0x14004c6f7
mov r11, qword [rbp + 0x1a0]
cmp edi, 0x5d
jne 0x140048a20
test ecx, ecx
jne 0x140048a20
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 0x140049a87
test r15d, r15d
jne 0x140049834
test r10d, r10d
je 0x140049834
bt edx, 0x1d
jae 0x140049a87
cmp dword [rbp - 0x78], 0
mov r14d, dword [rbp - 0x54]
je 0x140049887
test r10d, r10d
je 0x140049887
test r14d, r14d
jne 0x140049887
bt edx, 0x1d
jb 0x140049887
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.140051600
mov rdx, qword [rbp - 0x48]
mov ecx, 0x10ffff
mov eax, eax
add rdx, rax
mov qword [rbp - 0x48], rdx
call fcn.140051600
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], 0x70
setne al
mov byte [rcx + 3], al
test r15d, r15d
je 0x1400498ac
or al, 4
mov byte [rcx + 3], al
test r12d, r12d
jle 0x140049a5c
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.140025b30
test r14d, r14d
je 0x1400498ef
test r15d, r15d
jne 0x1400498ef
lea rcx, [rbp + 0x58]
mov edx, 0x20
not byte [rcx]
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1400498e3
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 0x140049a60
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 0x1400499e1
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 0x1400499a3
test r12b, 1
je 0x1400499a7
mov edx, edi
mov eax, edi
and edx, 0x7f
test edi, edi
jns 0x14004995c
lea eax, [rdi + 0x7f]
add edx, 0xffffff80
sar eax, 7
lea r8, [0x140000000]
cdqe
movzx eax, byte [rax + r8 + 0xe6ca0]
shl eax, 7
add eax, edx
cdqe
movzx ecx, word [r8 + rax*2 + 0xe8ea0]
movzx edx, byte [r8 + rcx*8 + 0xe5623]
test dl, dl
je 0x1400499a3
mov rax, qword [rbp - 0x70]
mov word [rax], 0x90f
lea r9, [rax + 3]
mov byte [rax + 2], dl
jmp 0x140049af9
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 0x1400499d5
cmp edi, 0x7f
jbe 0x1400499d5
mov rdx, rbx
mov ecx, edi
call fcn.140051600
mov r9d, eax
add r9, rbx
jmp 0x140049af9
mov byte [rbx], dil
lea r9, [rbx + 1]
jmp 0x140049af9
test r10d, r10d
je 0x1400499f2
cmp edi, 0x7f
jbe 0x1400499f2
mov ecx, edi
jmp 0x14004b73c
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 0x14004c57e
test r12b, 1
je 0x14004c582
movzx edx, byte [rbp - 0x10]
cmp edx, 0xc0
jb 0x14004c509
movzx ecx, byte [rbp - 0xf]
and ecx, 0x3f
test dl, 0x20
jne 0x14004c4a0
and edx, 0x1f
mov eax, edx
shl eax, 6
jmp 0x14004c505
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 0x14004c655
mov rcx, qword [rbp + 0x1a8]
test rcx, rcx
je 0x140049ab0
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 0x140049af1
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 0x140049ae0
lea rcx, [rbp + 0x58]
mov edx, 0x20
not byte [rcx]
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x140049ad4
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 0x14004c655
test edx, edx
je case.0x1400486e4.12
movzx eax, byte [rbx + 1]
inc rbx
mov r8d, r10d
mov edx, 0xffffffff
cmp al, 0x30
jb 0x140049bb0
nop dword [rax]
cmp al, 0x39
ja 0x140049bb0
lea r8d, [r8 + r8*4]
movzx eax, al
lea r8d, [r8 - 0x18]
inc rbx
lea r8d, [rax + r8*2]
cmp r8d, 0xffff
jg 0x140049ba8
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x140049b40
movzx eax, byte [rbx + 1]
inc rbx
cmp al, 0x7d
je 0x140049bb7
mov edx, r10d
cmp al, 0x30
jb 0x140049b9a
cmp al, 0x39
ja 0x140049b9a
lea edx, [rdx + rdx*4]
movzx eax, al
lea edx, [rdx - 0x18]
inc rbx
lea edx, [rax + rdx*2]
cmp edx, 0xffff
jg 0x140049ba8
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x140049b78
cmp edx, r8d
jge 0x140049bb7
mov eax, 4
mov dword [rdi], eax
jmp 0x140049bbe
mov dword [rdi], 5
jmp 0x140049bbe
cmp al, 0x7d
jne 0x140049b66
mov edx, r8d
mov dword [rbp - 0x2c], r8d
mov dword [rbp - 0x40], edx
cmp dword [rdi], 0
mov qword [rbp - 0x80], rbx
jne 0x14004c9fb
mov r14d, dword [rbp - 0x40]
mov r12d, 1
mov edx, dword [rbp - 0x2c]
jmp 0x140049c14
mov eax, 0xffffffff
mov r14d, eax
mov dword [rbp - 0x40], eax
lea r12d, [rax + 2]
jmp 0x140049c0e
mov eax, 0xffffffff
mov r12d, 1
mov edx, r12d
mov dword [rbp - 0x40], eax
mov r14d, eax
jmp 0x140049c11
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 0x14004c709
test edx, edx
jne 0x140049c38
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 0x140049d54
inc rbx
mov rcx, qword [r11 + 0x18]
movzx eax, byte [rbx]
test byte [rax + rcx], 1
je 0x140049c7d
nop
movzx eax, byte [rbx + 1]
inc rbx
test byte [rax + rcx], 1
jne 0x140049c70
cmp al, 0x23
jne 0x140049d3b
inc rbx
cmp byte [rbx], r13b
je 0x140049c61
nop dword [rax]
mov edx, dword [r11 + 0xb4]
lea rdi, [r11 + 0xb8]
mov rcx, qword [r11 + 0x38]
test edx, edx
je 0x140049cdd
cmp rbx, rcx
jae 0x140049cc7
mov eax, dword [rbp - 0x78]
mov r8, rcx
mov rcx, rbx
mov dword [rsp + 0x20], eax
mov r9, rdi
call fcn.140050b70
test eax, eax
mov eax, r12d
jne 0x140049cca
mov eax, r13d
mov r11, qword [rbp + 0x1a0]
test eax, eax
je 0x140049d06
movsxd rax, dword [rdi]
add rbx, rax
jmp 0x140049c61
movsxd rdx, dword [rdi]
sub rcx, rdx
cmp rbx, rcx
ja 0x140049d06
movzx eax, byte [r11 + 0xbc]
cmp byte [rbx], al
jne 0x140049d06
cmp edx, 1
je 0x140049cd5
movzx eax, byte [r11 + 0xbd]
cmp byte [rbx + 1], al
je 0x140049cd5
inc rbx
cmp dword [rbp - 0x78], r13d
je 0x140049d2d
movzx eax, byte [rbx]
and al, 0xc0
cmp al, 0x80
jne 0x140049d2d
nop dword [rax + rax]
movzx eax, byte [rbx + 1]
inc rbx
and al, 0xc0
cmp al, 0x80
je 0x140049d20
cmp byte [rbx], r13b
jne 0x140049c90
jmp 0x140049c61
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 0x140049da6
cmp byte [rbx + 2], 0x3f
jne 0x140049da6
cmp byte [rbx + 3], 0x23
jne 0x140049da6
add rbx, 4
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
je 0x140048542
nop dword [rax]
cmp al, 0x29
je 0x140049d9d
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
jne 0x140049d80
mov dword [rdi], setsockopt
jmp 0x14004c9fb
cmp byte [rbx], r13b
je 0x140048542
movzx ecx, byte [rbx + 1]
lea rax, [rbx + 1]
cmp cl, 0x2b
jne 0x140049dca
mov r12d, r13d
mov dword [rbp - 0x54], r13d
mov dword [rbp - 0x58], 1
mov rbx, rax
mov qword [rbp - 0x80], rax
jmp 0x140049de7
cmp cl, 0x3f
jne 0x140049ddf
mov r12d, dword [rbp + 0x80]
mov rbx, rax
mov qword [rbp - 0x80], rax
jmp 0x140049de3
mov r12d, dword [rbp + 0x7c]
mov dword [rbp - 0x54], r12d
cmp byte [r10], 0x75
jne 0x140049ea6
lea rcx, [r10 + 3]
mov r8d, 3
mov rdx, r10
call fcn.140025b30
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 0x140049e9d
mov r9, qword [rbp + 0x1a0]
mov rax, qword [r9 + 0x20]
mov r8, qword [r9 + 0x40]
add rax, 2
cmp r8, rax
jb 0x140049e99
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 0x140049e99
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 0x140049eb4
mov r9, qword [rbp - 0x70]
mov rbx, qword [rbp - 0x80]
mov edx, dword [rbp - 0x2c]
jmp 0x140049ead
mov r11, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x1a0]
movzx esi, byte [r10]
lea eax, [rsi - 0x1d]
cmp al, 3
jbe 0x14004a64e
cmp sil, 0x17
jae 0x140049eda
mov r11d, dword [rbp - 0x78]
mov r14d, reloc.WS2_32.dll_gethostbyname
mov edi, esi
jmp 0x14004a6f6
lea eax, [rsi - 0x6e]
cmp al, 6
jbe 0x14004a585
lea eax, [rsi - 0x7d]
cmp al, 0xa
ja 0x14004a570
mov r14, qword [rbp + 8]
xor eax, eax
mov r12d, r9d
mov rdi, r14
sub r12d, r10d
mov r15d, eax
cmp sil, 0x87
jne 0x140049f0f
cmp byte [r10 + 3], 0x91
je 0x140049f8c
cmp sil, 0x81
jae 0x140049f2c
test edx, edx
jg 0x140049f8c
mov esi, dword [rbp - 0x40]
mov ecx, 1
cmp esi, 1
cmova esi, ecx
mov dword [rbp - 0x40], esi
jmp 0x140049f34
mov esi, dword [rbp - 0x40]
mov ecx, 1
test edx, edx
jne 0x14004a025
mov byte [r9], al
mov r9, r8
mov r8d, dword [rbp - 0x78]
mov qword [rsp + 0x20], r14
cmp esi, 1
jg 0x140049fd6
mov edx, ecx
mov rcx, r10
call fcn.140045ff0
mov rsi, qword [rbp - 0x38]
movsxd r8, r12d
mov rdx, rsi
lea rbx, [rsi + 1]
mov rcx, rbx
call fcn.140025b30
mov r9, qword [rbp - 0x70]
inc r9
mov qword [rbp - 0x70], r9
cmp dword [rbp - 0x40], r13d
jne 0x140049fb7
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 0x14004871f
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 0x14004a1ac
mov edx, 4
mov rcx, r10
call fcn.140045ff0
mov rbx, qword [rbp - 0x38]
movsxd r8, r12d
mov rdx, rbx
lea rcx, [rbx + 4]
call fcn.140025b30
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 0x14004a1ac
cmp edx, 1
jle 0x14004a1a2
test r11, r11
je 0x14004a080
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 [0x1400e54d0]
ja 0x14004c9de
mov ecx, dword [r11]
mov eax, 0x7fffffeb
sub eax, ecx
cmp eax, edx
jl 0x14004c9de
lea eax, [rdx + rcx]
mov edx, dword [rbp - 0x2c]
mov dword [r11], eax
jmp 0x14004a1a2
cmp dword [rbp + 0x40], eax
je 0x14004a096
cmp dword [rbp - 0x30], eax
jge 0x14004a096
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.140025b30
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 0x14004a12e
nop dword [rax + rax]
mov rcx, r9
call fcn.14004d9a0
mov rcx, qword [rbp + 0x168]
mov dword [rcx], eax
test eax, eax
jne 0x140048c90
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 0x14004a0f0
lea rdx, [rcx + rdi]
lea rax, [rbx + rcx]
cmp rdx, rax
jae 0x14004a17c
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 0x14004a140
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 0x14004a0b0
mov rbx, qword [rbp - 0x80]
mov esi, dword [rbp - 0x40]
mov r14d, dword [rbp - 0x54]
test esi, esi
jle 0x14004a1b1
sub esi, edx
mov dword [rbp - 0x40], esi
test esi, esi
js 0x14004a3f1
mov r8, qword [rbp + 0x1a8]
mov r14d, dword [rbp - 0x40]
test r8, r8
je 0x14004a262
test r14d, r14d
jle 0x14004a262
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 [0x1400e54d0]
ja 0x14004c9de
mov edx, dword [r8]
mov eax, 0x7fffffeb
sub eax, edx
cmp eax, ecx
jl 0x14004c9de
lea eax, [rcx + rdx]
mov dword [r8], eax
mov r9, qword [rbp - 0x70]
test r13, r13
je 0x14004a5b2
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 0x14004a3b5
xor eax, eax
mov r13d, eax
jmp 0x14004a3bf
lea esi, [r14 - 1]
test esi, esi
js 0x14004a21e
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 0x14004a2c3
mov byte [r9], 0x83
lea rdx, [r9 + 1]
test r13, r13
jne 0x14004a2a9
xor eax, eax
mov ecx, eax
jmp 0x14004a2ae
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.140025b30
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 0x14004a327
mov rcx, r15
call fcn.14004d9a0
mov rcx, qword [rbp + 0x168]
mov dword [rcx], eax
test eax, eax
jne 0x140048c90
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 0x14004a2f0
lea rdx, [rcx + rdi]
lea rax, [rbx + rcx]
cmp rdx, rax
jae 0x14004a392
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 0x14004a350
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 0x14004a280
mov rbx, qword [rbp - 0x80]
jmp 0x14004a222
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 0x14004a230
jmp 0x14004a5ae
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 0x14004a424
test r12d, r12d
je 0x14004a424
mov byte [rdi], 0x83
movzx esi, byte [rdi]
lea eax, [rsi + 0x7f]
cmp al, 1
jbe 0x14004a563
cmp qword [rbp + 0x1a8], 0
mov r13, qword [rbp + 0x1a0]
jne 0x14004a494
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.14004d2c0
test eax, eax
jne 0x14004a489
movzx ecx, byte [r11 + 1]
movzx eax, byte [r11 + 2]
shl rcx, 8
or rcx, rax
add r11, rcx
cmp byte [r11], 0x77
je 0x14004a450
jmp 0x14004a490
add sil, 5
mov byte [rdi], sil
mov r9, qword [rbp - 0x70]
cmp byte [rdi], 0x87
jne 0x14004a4b1
movzx ecx, byte [rdi + 1]
movzx eax, byte [rdi + 2]
shl rcx, 8
or rcx, rax
cmp byte [rcx + rdi], 0x77
je 0x14004a4b1
mov byte [rdi], 0x8c
test r12d, r12d
je 0x14004a553
movzx eax, byte [rdi]
cmp al, 0x87
je 0x14004a4ce
cmp al, 0x8c
je 0x14004a4ce
inc al
mov byte [rdi], al
mov byte [rbx], 0x7b
jmp 0x14004a539
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.140045ff0
movsxd r8, ebx
lea rcx, [rdi + 3]
mov rdx, rdi
call fcn.140025b30
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 0x14004a542
mov byte [r15], 0x94
cmp dword [rbp - 0x2c], 2
mov rbx, qword [rbp - 0x80]
jge 0x14004a5c6
xor eax, eax
mov r12d, eax
jmp 0x14004a5bd
add r14b, 0x79
mov byte [rbx], r14b
mov rbx, qword [rbp - 0x80]
jmp 0x140049f93
add r14b, 0x79
mov byte [rbx], r14b
mov rbx, qword [rbp - 0x80]
jmp 0x14004a5b6
cmp sil, 0x9d
je 0x140049f8c
mov dword [rdi], reloc.WS2_32.dll_inet_addr
jmp 0x14004c9fb
test r14d, r14d
jne 0x14004a596
mov r9, r10
mov qword [rbp - 0x70], r10
jmp 0x140049f8c
test edx, edx
jne 0x14004a606
cmp r14d, 0xffffffff
jne 0x14004a5fa
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 0x140049f93
mov rax, qword [rbp - 8]
lea r10, [0x140000000]
movzx r8d, byte [rax]
lea eax, [r8 - 0x1d]
cmp eax, 0x53
ja case.0x14004a5f8.33
cdqe
movzx eax, byte [r10 + rax + 0x4cb58]
mov ecx, dword [r10 + rax*4 + 0x4cb44]
add rcx, r10
jmp rcx
cmp r14d, 1
jne 0x14004a617
add r12b, 0x66
jmp 0x14004a5a4
cmp edx, 1
jne 0x14004a617
cmp r14d, 0xffffffff
jne 0x14004a617
add r12b, 0x64
jmp 0x14004a5a4
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 0x14004a5aa
mov ecx, esi
sub ecx, 0x1d
je 0x14004a67a
sub ecx, 1
je 0x14004a672
sub ecx, 1
je 0x14004a66a
cmp ecx, 1
jne 0x14004a67a
lea r14d, [rcx + 0x26]
jmp 0x14004a67d
mov r14d, 0x1a
jmp 0x14004a67d
mov r14d, reloc.WS2_32.dll_listen
jmp 0x14004a67d
mov r14d, r13d
mov r11d, dword [rbp - 0x78]
test r11d, r11d
je 0x14004a6cf
movzx eax, byte [r9 - 1]
lea rdx, [r9 - 1]
and al, 0xc0
cmp al, 0x80
jne 0x14004a6cf
nop word [rax + rax]
movzx eax, byte [rdx - 1]
dec rdx
and al, 0xc0
cmp al, 0x80
je 0x14004a6a0
mov edi, r9d
lea rcx, [rbp + 0x90]
sub edi, edx
mov r8d, edi
call fcn.140025b30
mov r10, qword [rbp - 0x38]
bts edi, 0x1c
mov r11d, dword [rbp - 0x78]
jmp 0x14004a6f6
movzx edi, byte [r9 - 1]
cmp sil, 0x1e
ja 0x14004a6f6
mov r13d, dword [rbp - 0x2c]
cmp r13d, 1
jle 0x14004a6fa
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 0x14004a710
mov eax, 0xffffffff
mov r15d, eax
mov esi, eax
jmp 0x14004a71a
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 0x140049f8c
add r12d, r14d
test r13d, r13d
jne 0x14004a785
mov r14d, dword [rbp - 0x40]
cmp r14d, 0xffffffff
jne 0x14004a751
add r12b, 0x21
lea r9, [r10 + 1]
mov byte [r10], r12b
jmp 0x14004a8d5
cmp r14d, 1
jne 0x14004a767
add r12b, 0x25
lea r9, [r10 + 1]
mov byte [r10], r12b
jmp 0x14004a8d5
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 0x14004a8d5
cmp r13d, 1
jne 0x14004a7d7
mov r14d, dword [rbp - 0x40]
cmp r14d, 0xffffffff
jne 0x14004a7a5
add r12b, 0x23
lea r9, [r10 + 1]
mov byte [r10], r12b
jmp 0x14004a8d5
mov qword [rbp - 0x70], rcx
mov r9, rcx
cmp r14d, 1
je 0x140049f8c
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 0x14004a8d5
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 0x14004a85a
test r11d, r11d
je 0x14004a839
bt edi, 0x1c
jae 0x14004a839
mov ebx, edi
lea rdx, [rbp + 0x90]
and ebx, 7
mov rcx, r9
mov r8d, ebx
call fcn.140025b30
mov r9, qword [rbp - 0x70]
add r12b, 0x21
mov r11d, dword [rbp - 0x78]
add r9, rbx
mov byte [r9], r12b
inc r9
jmp 0x14004a8d5
mov byte [r9], dil
inc r9
test esi, esi
js 0x14004a84e
mov byte [r9], sil
mov byte [r9 + 1], r15b
add r9, 2
add r12b, 0x21
mov byte [r9], r12b
inc r9
jmp 0x14004a8d5
cmp r14d, r13d
je 0x14004a8d9
test r11d, r11d
je 0x14004a88e
bt edi, 0x1c
jae 0x14004a88e
mov ebx, edi
lea rdx, [rbp + 0x90]
and ebx, 7
mov rcx, r9
mov r8d, ebx
call fcn.140025b30
mov r9, qword [rbp - 0x70]
mov r11d, dword [rbp - 0x78]
add r9, rbx
jmp 0x14004a894
mov byte [r9], dil
inc r9
test esi, esi
js 0x14004a8a3
mov byte [r9], sil
mov byte [r9 + 1], r15b
add r9, 2
sub r14d, r13d
mov dword [rbp - 0x40], r14d
cmp r14d, 1
jne 0x14004a8bc
add r12b, 0x25
mov byte [r9], r12b
inc r9
jmp 0x14004a8d5
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 0x14004a904
bt edi, 0x1c
jae 0x14004a904
mov ebx, edi
lea rdx, [rbp + 0x90]
and ebx, 7
mov rcx, r9
mov r8d, ebx
call fcn.140025b30
mov r9, qword [rbp - 0x70]
add r9, rbx
jmp 0x14004a90a
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 0x14004a92c
mov byte [r9], sil
mov byte [r9 + 1], r15b
add r9, 2
mov qword [rbp - 0x70], r9
mov rbx, qword [rbp - 0x80]
jmp 0x14004a5bd
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 + 0xf7b40]
add rax, rcx
add qword [rbp - 8], rax
jmp case.0x14004a5f8.33
movzx eax, byte [r8 + r10 + 0xf7b40]
mov rdx, qword [rbp - 8]
mov r8d, dword [rbp - 0x78]
add rdx, rax
mov qword [rbp - 8], rdx
test r8d, r8d
je 0x14004a9b9
movzx eax, byte [rdx - 1]
cmp al, 0xc0
jb 0x14004a9b9
and eax, 0x3f
movzx eax, byte [rax + r10 + 0xf71f0]
add qword [rbp - 8], rax
jmp 0x14004a9b9
add qword [rbp - 8], 0x21
jmp case.0x14004a5f8.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 0x140049f93
movzx eax, byte [rdx]
cmp al, 0x76
jae 0x14004a9e9
movzx ecx, byte [rax + r10 + 0xe5360]
test cl, cl
je 0x14004a9e9
mov byte [rdx], cl
mov rbx, qword [rbp - 0x80]
jmp 0x140049f93
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.140045ff0
mov rdx, qword [rbp - 8]
movsxd r8, edi
lea rcx, [rdx + 3]
call fcn.140025b30
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 0x140049f93
inc rbx
lea r9, [r11 + 0x18]
mov qword [rbp - 0x80], rbx
movzx edx, byte [rbx]
cmp dl, 0x2a
jne 0x14004acfc
movzx eax, byte [rbx + 1]
lea r13, [rbx + 1]
cmp al, 0x3a
je 0x14004aa8a
mov ecx, eax
mov rax, qword [r9]
test byte [rcx + rax], 2
je 0x14004acfc
mov rcx, qword [r9]
lea rsi, [0x1400e3ff8]
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 0x14004aad0
nop dword [rax]
nop word [rax + rax]
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test byte [rax + rcx], 2
jne 0x14004aac0
mov r14d, ebx
sub r14d, r13d
cmp byte [rbx], 0x3a
jne 0x14004ab15
inc rbx
mov qword [rbp - 0x80], rbx
mov rdx, rbx
mov qword [rbp - 0x18], rbx
movzx eax, byte [rbx]
test al, al
je 0x14004ab02
cmp al, 0x29
je 0x14004ab02
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test al, al
jne 0x14004aaf0
mov r15d, ebx
sub r15d, edx
cmp r15d, 0xff
ja 0x14004c714
cmp byte [rbx], 0x29
jne 0x14004c74b
mov r12d, r10d
lea rbx, [0x1400e4030]
mov rdi, r10
nop dword [rax + rax]
cmp r14d, dword [rbx]
jne 0x14004ab47
movsxd r8, r14d
mov rdx, rsi
mov rcx, r13
call fcn.14007b420
test eax, eax
je 0x14004ab6b
mov eax, dword [rbx]
inc r12d
inc eax
inc rdi
cdqe
add rbx, 0xc
add rsi, rax
lea rax, [0x1400e409c]
cmp rbx, rax
jl 0x14004ab30
jmp case.default.0x14004acc1
lea rcx, [rdi + rdi*2]
lea rdx, [0x1400e4030]
mov eax, dword [rdx + rcx*4 + 4]
cmp eax, 0x9e
jne 0x14004ac20
test r15d, r15d
jne 0x14004c735
mov rdx, qword [rbp + 0x1a0]
mov r8d, 1
mov rcx, qword [rdx + 0x48]
mov dword [rdx + 0x9c], r8d
test rcx, rcx
je 0x14004abef
mov rdx, qword [rbp - 0x70]
mov rax, qword [rbp + 0x1a8]
test rax, rax
je 0x14004abc0
add dword [rax], 3
jmp 0x14004abdc
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 0x14004abb6
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 0x14004aca0
test r15d, r15d
jne 0x14004ac3c
test eax, eax
js 0x14004c71f
mov rcx, qword [rbp - 0x70]
mov byte [rcx], al
inc rcx
mov qword [rbp - 0x70], rcx
jmp 0x14004ac93
mov esi, dword [rdx + rcx*4 + 8]
test esi, esi
js 0x14004c735
mov rax, qword [rbp - 0x70]
mov rcx, qword [rbp + 0x1a8]
mov byte [rax], sil
lea rdi, [rax + 2]
test rcx, rcx
je 0x14004ac6b
add dword [rcx], r15d
mov byte [rax + 1], 0
mov rax, rdi
jmp 0x14004ac85
mov rdx, qword [rbp - 0x18]
mov rcx, rdi
movsxd rbx, r15d
mov r8, rbx
mov byte [rax + 1], r15b
call fcn.140025b30
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.0x14004acc1
lea r9, [0x140000000]
cdqe
mov ecx, dword [r9 + rax*4 + 0x4cbac]
add rcx, r9
jmp rcx
or dword [rdx + 0x94], 0x1000
jmp case.default.0x14004acc1
mov dword [rdx + 0xa0], r8d
mov rbx, qword [rbp - 0x80]
cmp r12d, 9
jge 0x14004c74b
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 0x14004c659
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 0x14004b6d0
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
add eax, 0xffffffdf
cmp eax, 0x5b
ja case.0x14004ad61.46
lea rdx, [0x140000000]
cdqe
mov r8, r9
movzx eax, byte [rdx + rax + 0x4cbfc]
mov ecx, dword [rdx + rax*4 + 0x4cbc4]
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 0x14004b032
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 0x14004adf9
cmp byte [rbx + 2], 0x43
mov qword [rbp + 0x28], rbx
jne 0x14004adf9
cmp byte [rbx + 3], 0x30
mov edx, r8d
mov ecx, r8d
jb 0x14004add8
movzx eax, byte [rbx + 3]
cmp al, 0x39
ja 0x14004add8
movzx eax, byte [rcx + rbx + 1]
inc rcx
inc edx
cmp al, 0x30
jae 0x14004adc6
cmp byte [rcx + rbx], 0x29
mov qword [rbp + 0x28], rbx
jne 0x14004adef
lea eax, [rdx + 1]
movsxd r14, eax
add r14, rbx
mov qword [rbp + 0x28], r14
cmp byte [r14], 0x28
jne 0x14004c75d
cmp byte [r14 + 1], 0x3f
jne 0x14004ae3d
movzx eax, byte [r14 + 2]
cmp al, 0x3d
je 0x14004ae1e
cmp al, 0x21
je 0x14004ae1e
cmp al, 0x3c
jne 0x14004ae3d
movzx eax, byte [r14 + 3]
cmp al, 0x3d
je 0x14004ae1e
cmp al, 0x21
jne 0x14004ae3d
mov rsi, qword [rbp - 0x70]
mov eax, 1
mov r9, qword [rbp + 0x1a8]
mov ecx, r15d
mov dword [r11 + 0xb0], eax
jmp 0x14004b035
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 0x14004ae8d
cmp byte [rbx + 1], 0x26
jne 0x14004af60
lea rax, [rbx + 2]
mov r15d, r8d
mov qword [rbp - 0x80], rax
mov byte [rsi + 3], 0x8f
mov rbx, qword [rbp - 0x80]
jmp 0x14004aea3
cmp cl, 0x3c
jne 0x14004af50
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 0x14004c8f5
mov rcx, qword [r11 + 0x18]
test byte [rdx + rcx], 0x10
je 0x14004c75d
mov r13, rbx
inc rbx
mov qword [rbp - 0x80], rbx
mov r14d, ebx
movzx eax, byte [rbx]
test byte [rax + rcx], 0x10
je 0x14004aef3
nop dword [rax]
inc rbx
mov qword [rbp - 0x80], rbx
mov r14, rbx
movzx eax, byte [rbx]
test byte [rax + rcx], 0x10
jne 0x14004aee0
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 0x14004afc3
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 0x14004afc1
mov rax, qword [rbp + 0x168]
dec rbx
mov dword [rax], 0x1a
jmp 0x14004c9fb
cmp cl, 0x27
jne 0x14004af60
mov r15d, 0x27
jmp 0x14004ae9c
lea eax, [rcx - 0x2b]
mov dword [rbp - 0x50], r15d
test al, 0xfd
je 0x14004af7e
sub cl, 0x30
cmp cl, 9
ja 0x14004aea3
xor eax, eax
mov r8d, eax
jmp 0x14004af88
inc rbx
mov r8d, ecx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
cmp al, 0x30
jb 0x14004afba
nop
cmp al, 0x39
ja 0x14004afba
cmp edx, 0xccccccb
jg 0x14004c76f
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 0x14004af90
mov r9, qword [rbp + 0x1a8]
xor ecx, ecx
movzx eax, byte [rbx]
inc rbx
mov qword [rbp - 0x80], rbx
cmp al, 0x29
jne 0x14004af3b
test r9, r9
jne 0x14004b02e
test r8d, r8d
js 0x14004b080
test edx, edx
jle 0x14004c7a8
test r8d, r8d
je 0x14004b00b
mov eax, dword [r11 + 0x70]
cmp r8d, 0x2d
jne 0x14004b001
sub eax, edx
lea edx, [rax + 1]
jmp 0x14004b003
add edx, eax
test edx, edx
jle 0x14004b8fe
cmp edx, dword [r11 + 0x74]
jg 0x14004b8fe
mov eax, edx
mov byte [rsi + 5], dl
shr eax, 8
mov byte [rsi + 4], al
cmp edx, dword [r11 + 0x7c]
jle 0x14004b02a
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 0x14004c895
cmp r13d, 0x80
ja 0x14004ba16
cmp dword [r11 + 0xb0], 0
je 0x14004ba16
xor edx, edx
mov r15d, edx
mov qword [rbp - 0x38], rdx
mov dword [r11 + 0xb0], edx
jmp 0x14004ba2a
cmp dword [r11 + 0x60], 0
mov edi, ecx
mov rax, qword [r11 + 0x58]
mov qword [rbp + 0x38], rax
movsxd rsi, r14d
jle 0x14004b0e9
mov r15, rax
nop word [rax + rax]
lea rdx, [r15 + 2]
mov r8, rsi
mov rcx, r13
call fcn.14007b420
test eax, eax
jne 0x14004b0ba
cmp byte [rsi + r15 + 2], al
je 0x14004b0d6
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 0x14004b0a0
jmp 0x14004b0dd
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 0x14004b1a5
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 0x14004b118
mov dword [r11 + 0x7c], r14d
cmp edi, ecx
jge 0x14004b18b
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.14007b420
test eax, eax
jne 0x14004b152
cmp byte [rsi + r15 + 2], al
jne 0x14004b152
mov r11, qword [rbp + 0x1a0]
inc ebx
inc edi
cmp edi, dword [r11 + 0x60]
jl 0x14004b120
mov qword [rbp + 0x38], r15
mov r15d, dword [rbp - 0x50]
cmp ebx, 1
jle 0x14004b18b
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 0x14004b246
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 0x14004b246
test r15d, r15d
jne 0x14004b8fe
cmp byte [r13], 0x52
jne 0x14004b216
xor eax, eax
mov ecx, eax
mov eax, 1
mov edx, eax
cmp rax, rsi
jge 0x14004b1f8
movzx r8d, byte [rdx + r13]
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x14004b8fe
cmp ecx, 0xccccccb
jg 0x14004c8c2
lea ecx, [rcx + rcx*4]
inc rdx
lea ecx, [rcx - 0x18]
lea ecx, [r8 + rcx*2]
cmp rdx, rsi
jl 0x14004b1c5
test ecx, ecx
jne 0x14004b1fd
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 0x14004b246
cmp r14d, 6
jne 0x14004b8fe
mov r8d, r14d
lea rdx, str.DEFINE
mov rcx, r13
call fcn.14007b420
test eax, eax
jne 0x14004c93a
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 0x14004b02e
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 0x14004b035
inc rbx
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x29
jne 0x14004b2f3
movzx ecx, byte [rbx + 1]
lea eax, [rcx - 0x2a]
cmp al, 1
jbe 0x14004b2f3
cmp cl, 0x3f
je 0x14004b2f3
cmp cl, 0x7b
jne 0x14004b2b6
lea rcx, [rbx + 2]
call fcn.14004ef20
test eax, eax
jne 0x14004b2f3
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 0x140048200
inc dword [r11 + 0x8c]
mov r13d, 0x7e
mov rsi, qword [rbp - 0x70]
mov ecx, r15d
mov r9, qword [rbp + 0x1a8]
jmp 0x14004b035
movzx eax, byte [rbx + 1]
cmp al, 0x21
je 0x14004b447
cmp al, 0x3d
je 0x14004b43f
mov ecx, eax
lea r8, [r11 + 0x18]
mov rax, qword [r8]
test byte [rcx + rax], 0x10
je 0x14004c7ba
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 0x14004b35d
mov r8, r9
cmp al, 0x39
jbe 0x14004c8f5
mov rcx, qword [r8]
test byte [rax + rcx], 0x10
je 0x14004b380
nop word [rax + rax]
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test byte [rax + rcx], 0x10
jne 0x14004b370
mov r14d, ebx
sub r14d, edx
cmp qword [rbp + 0x1a8], r15
je 0x14004b649
mov r15d, dword [r11 + 0x70]
mov eax, 0x27
inc r15d
mov ecx, 0x3e
cmp r10b, 0x3c
cmove eax, ecx
cmp byte [rbx], al
jne 0x14004c919
mov ecx, dword [r11 + 0x60]
cmp ecx, 0x2710
jge 0x14004c836
lea eax, [r14 + 3]
cmp eax, dword [r11 + 0x64]
jle 0x14004b3db
mov dword [r11 + 0x64], eax
cmp r14d, 0x20
jg 0x14004c907
mov rdi, qword [r11 + 0x50]
xor eax, eax
mov esi, eax
test ecx, ecx
jle 0x14004b59c
nop dword [rax + rax]
cmp r14d, dword [rdi + 8]
jne 0x14004b575
mov rdx, qword [rdi]
mov rcx, r12
movsxd r8, r14d
call fcn.14007b420
test eax, eax
jne 0x14004b56e
cmp dword [rdi + 0xc], r15d
je 0x14004b591
test dword [rbp - 0x68], 0x80000
je 0x14004c7f4
mov r11, qword [rbp + 0x1a0]
mov eax, 1
mov dword [r11 + 0xa8], eax
jmp 0x14004b57f
mov r13d, 0x7f
jmp 0x14004b44d
mov r13d, pe_nt_image_headers64
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 0x14004b035
mov r13d, 0x81
jmp 0x14004b26e
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 0x14004b4cb
movzx eax, byte [rbx]
cmp al, 0x39
ja 0x14004b4cb
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 0x14004c7cf
cmp byte [rbx], 0x30
jae 0x14004b4a3
cmp byte [rbx], 0x29
jne 0x14004c7e1
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 0x140048200
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
cmp al, 0x3d
je 0x14004b559
cmp al, 0x3e
je 0x14004b55b
cmp al, 0x3c
je case.0x14004ad61.35
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x29
jmp 0x14004c9fb
cmp al, 0x3e
mov r13d, dword [rbp - 0x60]
sete r15b
mov r8d, 0x29
jmp 0x14004bd39
mov r11, qword [rbp + 0x1a0]
cmp dword [rdi + 0xc], r15d
je 0x14004c80a
inc esi
add rdi, 0x10
cmp esi, dword [r11 + 0x60]
jl 0x14004b3f0
jmp 0x14004b598
mov r11, qword [rbp + 0x1a0]
mov rbx, qword [rbp - 0x80]
mov eax, dword [r11 + 0x60]
cmp esi, eax
jl 0x14004b645
mov ecx, dword [r11 + 0x68]
cmp eax, ecx
jl 0x14004b60e
lea edi, [rcx + rcx]
movsxd rcx, edi
shl rcx, 4
call qword [0x140129d00]
mov rbx, rax
test rax, rax
je 0x14004c820
mov rax, qword [rbp + 0x1a0]
mov rcx, rbx
movsxd r8, dword [rax + 0x68]
mov rdx, qword [rax + 0x50]
shl r8, 4
call fcn.140025b30
mov r11, qword [rbp + 0x1a0]
cmp dword [r11 + 0x68], 0x14
jle 0x14004b606
mov rcx, qword [r11 + 0x50]
call qword [0x140129d08]
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 0x14004b032
mov r13d, dword [rbp - 0x60]
mov r8d, 0x29
lea r15d, [r8 - 0x28]
jmp 0x14004bd39
inc rbx
mov r12d, r15d
mov qword [rbp - 0x80], rbx
cmp byte [rbx], 0x29
je 0x14004bee3
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x1d
jmp 0x14004c9fb
mov rdi, qword [rbp + 0x168]
mov r8d, 0x29
jmp 0x14004b84f
test dword [rbp - 0x68], 0x1000
je 0x14004b654
mov rsi, qword [rbp - 0x70]
mov r13d, 0x83
mov r9, qword [rbp + 0x1a8]
mov ecx, r15d
jmp 0x14004b035
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.1400469a0
mov r12d, eax
cmp dword [rdi], r15d
jne 0x140048c90
test eax, eax
jne 0x14004b78c
mov ecx, dword [rbp - 0x78]
mov eax, dword [rbp + 0x48]
test ecx, ecx
je 0x14004b76f
cmp eax, 0x7f
jbe 0x14004b76f
mov ecx, eax
lea rdx, [rbp - 0x10]
call fcn.140051600
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 0x140049a25
mov r11, qword [rbp + 0x1a0]
mov r9d, 1
mov r10, qword [rbp - 0x70]
mov r12d, dword [rbp - 0x68]
mov byte [rbp - 0x10], al
jmp 0x140049a0a
mov r10d, dword [rbp - 0x5c]
cmp r10d, 0xfffffffe
jne 0x14004b7a9
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 0x14004bcdd
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 0x14004bcd5
movabs rcx, 0x3ff280000000000
bt rcx, rax
jae 0x14004bcd5
movzx eax, byte [rbx + 2]
lea rcx, [rbx + 2]
cmp al, 0x30
jb 0x14004b83f
nop
cmp al, 0x39
ja 0x14004b83f
movzx eax, byte [rcx + 1]
inc rcx
cmp al, 0x30
jae 0x14004b830
cmp byte [rcx], r8b
jne 0x14004c8df
mov rbx, rdx
mov qword [rbp - 0x80], rdx
movzx edx, byte [rbx]
cmp dl, 0x2b
jne 0x14004b870
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
sub al, 0x30
cmp al, 9
ja 0x14004c848
mov r12d, r15d
jmp 0x14004b89b
movzx eax, dl
cmp dl, 0x2d
jne 0x14004b894
movzx eax, byte [rbx + 1]
lea rcx, [rbx + 1]
sub al, 0x30
cmp al, 9
ja case.0x14004ad61.46
mov qword [rbp - 0x80], rcx
mov rbx, rcx
movzx eax, byte [rcx]
mov r12d, r15d
cmp al, 0x30
jb 0x14004b8cf
movzx eax, byte [rbx]
nop
cmp al, 0x39
ja 0x14004b8cf
cmp r12d, 0xccccccb
jg 0x14004c8a7
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 0x14004b8a0
cmp byte [rbx], r8b
jne 0x14004b6ac
cmp dl, 0x2d
jne 0x14004bcba
test r12d, r12d
je 0x14004c8d4
mov eax, dword [r11 + 0x70]
sub eax, r12d
lea r12d, [rax + 1]
test r12d, r12d
jg 0x14004bee3
mov rax, qword [rbp + 0x168]
mov dword [rax], recv
jmp 0x14004c9fb
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 0x14004b9a7
lea r8, [0x140000000]
movzx eax, byte [rbx]
cmp al, 0x3a
je 0x14004b9a0
inc rbx
sub eax, 0x2d
mov qword [rbp - 0x80], rbx
cmp eax, 0x4b
ja case.0x14004b961.53
cdqe
movzx eax, byte [r8 + rax + 0x4cc7c]
mov ecx, dword [r8 + rax*4 + 0x4cc58]
add rcx, r8
jmp rcx
lea rdx, [rbp - 0x3c]
jmp 0x14004b99b
or dword [rdx], 0x80000
or dword [r11 + 0x94], 0x400
jmp 0x14004b99b
or dword [rdx], 1
jmp 0x14004b99b
or dword [rdx], 2
jmp 0x14004b99b
or dword [rdx], 4
jmp 0x14004b99b
or dword [rdx], 8
jmp 0x14004b99b
or dword [rdx], 0x200
jmp 0x14004b99b
or dword [rdx], 0x40
cmp byte [rbx], 0x29
jne 0x14004b931
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 0x14004b9f2
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 0x14004c659
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 0x14004b035
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.14004ccd0
test eax, eax
je 0x140048c90
mov r11, qword [rbp + 0x1a0]
dec dword [r11 + 0x88]
cmp r13d, 0x81
jne 0x14004bb68
cmp dword [r11 + 0x70], ebx
ja 0x14004baf9
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 0x14004c888
mov r9, qword [rbp + 0x1a8]
test r9, r9
je 0x14004bc00
mov r8d, dword [rbp + 0x20]
mov ecx, 0x7fffffeb
mov edx, dword [r9]
sub ecx, edx
lea eax, [r8 - 6]
cmp ecx, eax
jl 0x14004c9de
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 0x14004c655
cmp r13d, 0x80
ja 0x14004bb7d
dec dword [r11 + 0x8c]
jmp 0x14004baf9
cmp r13d, 0x87
jne 0x14004baf9
cmp qword [rbp + 0x1a8], 0
jne 0x14004baf9
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 0x14004bba0
cmp byte [rsi + 3], 0x91
jne 0x14004bbd5
cmp r8d, 1
jg 0x14004c868
mov r13d, 0x91
jmp 0x14004baf9
cmp r8d, 2
jg 0x14004c878
cmp r8d, 1
jne 0x14004baf9
mov r8d, 0xffffffff
mov eax, r8d
mov ecx, r8d
mov dword [rbp + 0x1c], eax
mov dword [rbp + 0x30], ecx
jmp 0x14004bb05
mov r9, qword [rbp - 8]
mov qword [rbp - 0x70], r9
cmp r13d, 0x91
je 0x14004bcaa
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 0x14004bc9c
cmp r10d, 0xfffffffe
jne 0x14004bc6a
test ecx, ecx
js 0x14004bc60
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 0x14004bc82
mov dword [rbp - 0x5c], r8d
mov dword [rbp - 0x24], r8d
jmp 0x14004bc82
test ecx, ecx
js 0x14004bc82
test eax, eax
jns 0x14004bc86
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 0x14004bc8f
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 0x14004c659
cmp r13d, 0x7d
jne 0x14004bc8f
test eax, eax
js 0x14004bc8f
test ecx, ecx
jmp 0x14004bc84
mov esi, dword [rbp - 0x64]
mov r13d, dword [rbp - 0x60]
mov r12d, dword [rbp - 0x68]
jmp 0x14004c659
cmp dl, 0x2b
jne 0x14004bee3
test r12d, r12d
je 0x14004c8d4
add r12d, dword [r11 + 0x70]
jmp 0x14004bee3
mov r15d, 1
jmp 0x14004bd3f
cmp r12d, 0x1c
jne 0x14004c1a2
mov rbx, qword [rbp - 0x80]
movzx ecx, byte [rbx + 1]
lea rax, [rbx + 1]
cmp cl, 0x3c
je 0x14004bd06
cmp cl, 0x27
je 0x14004bd06
cmp cl, 0x7b
jne 0x14004c8ea
mov r11, qword [rbp + 0x1a0]
mov rbx, rax
mov qword [rbp - 0x80], rax
movzx ecx, byte [rax]
cmp cl, 0x3c
jne 0x14004bd27
mov r9d, 0x3e
mov r8d, r9d
jmp 0x14004bd3f
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 0x14004bd5c
cmp al, 0x39
jbe 0x14004c8f5
mov rcx, qword [r11 + 0x18]
test byte [rax + rcx], 0x10
je 0x14004bd80
nop word [rax + rax]
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
test byte [rax + rcx], 0x10
jne 0x14004bd70
mov edi, ebx
sub edi, edx
mov rdx, qword [rbp + 0x1a8]
test rdx, rdx
je 0x14004be5b
xor ecx, ecx
mov r12d, ecx
test edi, edi
je 0x14004c92b
cmp byte [rbx], r8b
jne 0x14004c919
cmp edi, 0x20
jg 0x14004c907
test r15d, r15d
jne 0x14004bdbf
inc dword [r11 + 0x84]
mov eax, dword [rdx]
add eax, 0xe
mov dword [rdx], eax
cmp dword [r11 + 0xac], ecx
je 0x14004bdd4
add eax, 0xc
mov dword [rdx], eax
mov r9d, dword [r11 + 0x60]
mov esi, ecx
mov rbx, qword [r11 + 0x50]
test r9d, r9d
jle 0x14004be52
cmp edi, dword [rbx + 8]
jne 0x14004be3c
mov rdx, qword [rbx]
mov rcx, r14
movsxd r8, edi
call fcn.14007b420
test eax, eax
jne 0x14004be35
mov r12d, dword [rbx + 0xc]
test r15d, r15d
jne 0x14004bee3
mov r11, qword [rbp + 0x1a0]
mov rcx, qword [r11 + 0x48]
test rcx, rcx
je 0x14004be3c
movzx eax, word [rcx + 8]
cmp eax, r12d
je 0x14004be2a
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14004be17
jmp 0x14004be3c
mov eax, 1
mov word [rcx + 0xa], ax
jmp 0x14004be3c
mov r11, qword [rbp + 0x1a0]
mov r9d, dword [r11 + 0x60]
inc esi
add rbx, 0x10
cmp esi, r9d
jl 0x14004bde3
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x38]
jmp 0x14004beda
mov r12, qword [r11 + 0x58]
xor eax, eax
mov esi, eax
mov qword [rbp + 0x38], r12
cmp dword [r11 + 0x60], eax
jle 0x14004beb9
movsxd rbx, edi
lea rdx, [r12 + 2]
mov r8, rbx
mov rcx, r14
call fcn.14007b420
test eax, eax
jne 0x14004be8b
cmp byte [rbx + r12 + 2], al
je 0x14004bea7
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 0x14004be70
jmp 0x14004beae
mov r11, qword [rbp + 0x1a0]
mov rbx, qword [rbp - 0x80]
mov rdx, qword [rbp + 0x1a8]
mov r9d, dword [r11 + 0x60]
cmp esi, r9d
jge 0x14004b8fe
movzx r12d, byte [r12]
mov rcx, qword [rbp + 0x38]
shl r12d, 8
movzx eax, byte [rcx + 1]
or r12d, eax
test r15d, r15d
je 0x14004c05c
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 0x14004c005
mov esi, dword [rbp - 0x78]
mov byte [rdx], 0
test r12d, r12d
je 0x14004bf32
mov rcx, qword [rdi + 0x28]
mov r8d, r12d
mov edx, esi
call fcn.140045510
mov rbx, rax
mov rdx, r15
test rbx, rbx
jne 0x14004bf9f
cmp r12d, dword [rdi + 0x74]
jg 0x14004c93a
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 0x14004bf73
mov rcx, rdi
call fcn.14004d9a0
mov rcx, qword [rbp + 0x168]
mov dword [rcx], eax
test eax, eax
jne 0x140048c90
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 0x14004c009
movzx ecx, byte [rbx + 1]
movzx eax, byte [rbx + 2]
shl ecx, 8
or ecx, eax
jne 0x14004c005
cmp dword [rbp + 0x198], ecx
jg 0x14004c005
mov rax, qword [rbp + 0x190]
mov r11, rax
test rax, rax
je 0x14004c950
nop dword [rax]
mov rcx, qword [r11 + 8]
cmp rcx, rbx
jb 0x14004c950
xor eax, eax
mov r9, rdi
mov r8d, esi
mov qword [rsp + 0x20], rax
call fcn.14004d2c0
test eax, eax
je 0x14004c005
mov r11, qword [r11]
test r11, r11
je 0x14004c950
mov rdx, qword [rbp - 0x70]
jmp 0x14004bfd0
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 0x14004c655
test rdx, rdx
jne 0x14004c1b0
cmp dword [r11 + 0xa8], edx
je 0x14004c1b0
movsxd r11, dword [r11 + 0x64]
lea r10d, [rdx + 1]
mov edi, esi
inc esi
lea r14, [r11 + rcx]
cmp esi, r9d
jge 0x14004c1b9
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 0x14004c0b3
inc rax
test ecx, ecx
jne 0x14004c0a0
test edx, edx
jne 0x14004c0c4
inc r10d
add r14, r11
inc esi
cmp esi, r9d
jl 0x14004c090
mov r11, qword [rbp + 0x1a0]
cmp r10d, 1
jle 0x14004c1b0
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 0x14004c19a
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 0x14004c16b
mov dword [r11 + 0x7c], edx
mov rcx, qword [r11 + 0x48]
test rcx, rcx
je 0x14004c18a
movzx eax, word [rcx + 8]
cmp eax, edx
je 0x14004c186
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14004c174
jmp 0x14004c18a
mov word [rcx + 0xa], di
movsxd rax, dword [r11 + 0x64]
add r8, rax
cmp r8, r14
jb 0x14004c140
mov qword [rbp + 0x38], r8
mov esi, dword [rbp - 0x64]
jmp 0x14004c655
test r12d, r12d
jns 0x14004c268
neg r12d
jmp 0x14004c1c0
mov esi, dword [rbp - 0x64]
mov r10d, dword [rbp - 0x5c]
jmp 0x14004c1c7
mov esi, dword [rbp - 0x64]
mov r10d, dword [rbp - 0x5c]
mov r11, qword [rbp + 0x1a0]
cmp r10d, 0xfffffffe
jne 0x14004c1d8
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 0x14004c223
mov ecx, r12d
shl eax, cl
or dword [r11 + 0x80], eax
cmp r12d, dword [r11 + 0x7c]
jle 0x14004c234
mov dword [r11 + 0x7c], r12d
mov rcx, qword [r11 + 0x48]
test rcx, rcx
je 0x140049a7e
movzx eax, word [rcx + 8]
cmp eax, r12d
je 0x14004c25b
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14004c241
mov r12d, dword [rbp - 0x68]
jmp 0x14004c655
mov r12d, dword [rbp - 0x68]
mov word [rcx + 0xa], di
jmp 0x14004c655
lea eax, [r12 - 0xf]
cmp eax, 1
jbe 0x14004c328
lea eax, [r12 - 4]
cmp eax, 1
jbe 0x14004c286
cmp r12d, 1
jne 0x14004c29e
mov r11, qword [rbp + 0x1a0]
cmp dword [r11 + 0x78], r15d
jne 0x14004c2a5
mov eax, 1
mov dword [r11 + 0x78], eax
jmp 0x14004c2a5
mov r11, qword [rbp + 0x1a0]
mov r9, qword [rbp - 0x70]
lea ecx, [r12 - 0x1d]
mov r8d, dword [rbp - 0x78]
cmp ecx, 5
ja 0x14004c2e4
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 + 0x129d20]
dec rbx
jmp 0x14004c65d
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 0x14004c311
cmp r12d, 0xe
jne 0x14004c311
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 0x14004c65d
mov rbx, qword [rbp - 0x80]
inc rbx
movzx eax, byte [rbx]
test al, al
je 0x14004c376
mov edi, r15d
cmp al, 0x7b
jne 0x14004c38b
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 0x14004c36f
cmp al, 0x7d
je 0x14004c381
mov byte [rbp + rcx + 0xe0], al
inc rcx
cmp rcx, 0x1f
jl 0x14004c350
mov rdi, qword [rbp + 0x168]
mov dword [rdi], 0x2e
jmp 0x14004c9fb
mov byte [rbp + rcx + 0xe0], r15b
jmp 0x14004c398
mov byte [rbp + 0xe0], al
mov byte [rbp + 0xe1], dil
mov r9d, dword [0x1400f71bc]
mov r10d, r15d
mov qword [rbp - 0x80], rbx
test r9d, r9d
jle 0x14004c411
lea r14, [0x140000000]
lea r8d, [r9 + r10]
sar r8d, 1
movsxd rax, r8d
lea r11, [rax + rax*2]
movzx edx, word [r14 + r11*2 + 0xf7740]
lea rax, [0x1400f7230]
add rdx, rax
lea rax, [rbp + 0xe0]
sub rdx, rax
nop dword [rax]
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x14004c3f4
inc rax
test cl, cl
jne 0x14004c3e0
mov ecx, r15d
jmp 0x14004c3f9
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x14004c423
lea eax, [r8 + 1]
cmovle r9d, r8d
cmovle eax, r10d
mov r10d, eax
cmp eax, r9d
jl 0x14004c3b2
mov rax, qword [rbp + 0x168]
mov dword [rax], gethostbyname
jmp 0x14004c9fb
mov r8, qword [rbp - 0x70]
mov rax, qword [rbp + 0x1a0]
mov r15, r8
movzx edx, byte [r14 + r11*2 + 0xf7742]
movzx ecx, byte [r14 + r11*2 + 0xf7744]
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 0x140048200
movzx eax, byte [rbp - 0xe]
and eax, 0x3f
shl ecx, 6
or ecx, eax
test dl, 0x10
jne 0x14004c4bb
and edx, 0xf
mov eax, edx
shl eax, 0xc
jmp 0x14004c505
movzx eax, byte [rbp - 0xd]
and eax, 0x3f
shl ecx, 6
or ecx, eax
test dl, 8
jne 0x14004c4d6
and edx, 7
mov eax, edx
shl eax, 0x12
jmp 0x14004c505
movzx eax, byte [rbp - 0xc]
and eax, 0x3f
shl ecx, 6
or ecx, eax
test dl, 4
jne 0x14004c4f1
and edx, 3
mov eax, edx
shl eax, 0x18
jmp 0x14004c505
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 0x14004c51b
add edx, 0x7f
add r8d, 0xffffff80
sar edx, 7
lea r14, [0x140000000]
movsxd rax, edx
movzx eax, byte [rax + r14 + 0xe6ca0]
shl eax, 7
add eax, r8d
cdqe
movzx ecx, word [r14 + rax*2 + 0xe8ea0]
movzx edx, byte [r14 + rcx*8 + 0xe5623]
test dl, dl
je 0x14004c57e
cmp dword [rbp - 0x5c], 0xfffffffe
lea r9, [r10 + 3]
mov word [r10], 0x910
mov qword [rbp - 0x70], r9
mov byte [r10 + 2], dl
jne 0x14004c655
mov r14d, 0xffffffff
mov dword [rbp - 0x24], r14d
mov dword [rbp - 0x5c], r14d
jmp 0x14004c655
test r12b, 1
setne al
add al, 0x1d
mov byte [r10], al
inc r10
mov qword [rbp - 0x70], r10
test r9d, r9d
je 0x14004c5b7
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 0x14004c5a0
mov qword [rbp - 0x70], r10
movzx eax, byte [rbp - 0x10]
cmp al, 0xd
je 0x14004c5c3
cmp al, 0xa
jne 0x14004c5ce
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 0x14004c624
mov r14d, 0xffffffff
mov dword [rbp - 0x24], r14d
cmp r9d, 1
je 0x14004c60b
test ecx, ecx
je 0x14004c60b
mov r9, qword [rbp - 0x70]
mov dword [rbp - 0x30], r14d
mov dword [rbp - 0x5c], r14d
jmp 0x14004c655
cmp r9d, 1
mov dword [rbp - 0x20], eax
mov r9, qword [rbp - 0x70]
mov dword [rbp - 0x5c], ecx
je 0x14004c655
mov ecx, dword [r11 + 0x98]
jmp 0x14004c649
mov eax, dword [rbp - 0x20]
mov dword [rbp], eax
mov dword [rbp - 0x24], r10d
cmp r9d, 1
je 0x14004c63e
test ecx, ecx
je 0x14004c63e
mov r9, qword [rbp - 0x70]
jmp 0x14004c655
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 0x140048200
cmp r9, rcx
mov eax, 0x57
mov ecx, reloc.WS2_32.dll_gethostbyname
cmovae eax, ecx
jmp 0x14004c9f9
mov dword [rdi], 0x40
jmp 0x14004c9fb
cmp r9b, 0x3a
mov eax, 0x1f
mov ecx, reloc.WS2_32.dll_listen
cmove eax, ecx
jmp 0x14004c9f9
mov rcx, qword [rbp + 0x168]
mov eax, 0x1f
mov dword [rcx], eax
jmp 0x14004c9fb
mov dword [r11], 7
jmp 0x14004c9fb
mov rbx, qword [rbp - 0x80]
mov dword [r11], 0x47
jmp 0x14004c9fb
mov dword [r11], 0x53
jmp 0x14004c9fb
mov dword [r11], 8
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], 6
jmp 0x14004c9fb
mov dword [rdi], 9
jmp 0x14004c9fb
mov dword [rdi], 0x4b
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x42
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x3b
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x3c
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x1c
jmp 0x14004c9fb
cmp al, 0x30
jb 0x14004c8c2
movzx eax, byte [rbx]
nop word [rax + rax]
cmp al, 0x39
ja 0x14004c8c2
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x14004c780
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x3d
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x23
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
inc rbx
mov dword [rax], 0x18
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x26
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov ecx, 0x27
mov dword [rax], ecx
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x2b
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x41
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], reloc.WS2_32.dll_setsockopt
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], gethostbyname
jmp 0x14004c9fb
mov dword [rdi], 0x3f
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
dec rbx
mov dword [rax], recv
jmp 0x14004c9fb
mov rbx, qword [rbp - 0x80]
mov dword [r14], 0x36
jmp 0x14004c9fb
mov rbx, qword [rbp - 0x80]
mov dword [r14], 0x1b
jmp 0x14004c9fb
mov eax, recv
mov dword [r14], eax
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x52
jmp 0x14004c9fb
cmp al, 0x30
jb 0x14004c8c2
movzx eax, byte [rbx]
nop
cmp al, 0x39
ja 0x14004c8c2
inc rbx
mov qword [rbp - 0x80], rbx
movzx eax, byte [rbx]
cmp al, 0x30
jae 0x14004c8b0
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x3d
jmp 0x14004c9fb
mov dword [rdi], 0x3a
jmp 0x14004c9fb
mov dword [rdi], 0x39
jmp 0x14004c9fb
mov dword [rdi], 0x45
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x54
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], gethostbyname
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], 0x2a
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov dword [rax], r9d
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], recv
jmp 0x14004c9fb
mov rax, qword [rbp + 0x168]
mov rbx, qword [rbp - 0x80]
mov dword [rax], 0x28
jmp 0x14004c9fb
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 0x14004c9d7
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 0x14004c9e5
sub r9d, r10d
add r9d, edx
mov dword [r8], r9d
mov eax, 1
jmp 0x14004ca07
mov r11, qword [rbp + 0x160]
mov rax, qword [rbp + 0x168]
mov dword [rax], setsockopt
jmp 0x14004ca02
mov eax, reloc.WS2_32.dll_gethostbyname
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