Function at 0x14019af10
Capabilities:
Encode data using base64
Get hostname

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17c0]
mov eax, 0x18c0
call fcn.1401c66b0
sub rsp, rax
mov rax, qword [0x14024fa28]
xor rax, rsp
mov qword [rbp + 0x17b0], rax
mov qword [rbp + 0x18], r9
mov qword [rbp - 0x60], r8
mov qword [rbp - 0x38], rdx
mov r15, rcx
mov qword [rbp + 0x30], rcx
mov rax, qword [rbp + 0x1858]
mov rcx, qword [rbp + 0x1820]
mov qword [rbp + 0x20], rcx
mov rcx, qword [rbp + 0x1830]
mov qword [rbp + 0x38], rcx
mov rbx, qword [rbp + 0x1838]
mov rdi, qword [rbp + 0x1840]
lea rcx, [rbp + 0x28]
test rax, rax
cmovne rcx, rax
mov qword [rsp + 0x78], rcx
mov ecx, 0x1828
call fcn.1401c51ec
mov r14, rax
mov qword [rbp - 0x78], rax
mov qword [rbp + 0x28], rax
mov qword [rax + 0x800], 0xffffffffffffffff
lea r13, [rax + 0x808]
xor esi, esi
mov qword [r13], rsi
mov qword [rax + 0x810], rsi
mov byte [rax + 0x1818], sil
mov dword [rax + 0x181c], 0x3c
mov dword [rax + 0x1820], 0x3c
lea r12, [rax + 0x818]
mov qword [rbp - 0x80], r12
mov byte [r12], sil
mov qword [rbp + 0xd0], rax
mov dword [rbp - 0x54], esi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 0x100
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x20], rax
lea r9d, [rsi - 1]
mov r8, rbx
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov byte [rbp + 0x4af], sil
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], 0x100
lea rax, [rbp + 0x4b0]
mov qword [rsp + 0x20], rax
lea r9d, [rsi - 1]
mov r8, rdi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov byte [rbp + 0x5af], sil
mov edi, dword [rbp + 0x1848]
mov esi, dword [rbp + 0x1850]
mov rcx, r14
call fcn.14019ae90
mov r8d, 0x100
mov edx, edi
mov rcx, r15
call fcn.14018b700
mov rbx, rax
mov qword [r14 + 0x810], rax
test rax, rax
je 0x14019e753
nop
mov r8d, dword [rbx + 0x14]
mov edx, dword [rbx + 0x10]
mov ecx, dword [rbx + 0xc]
call qword [sym.imp.WS2_32.dll_socket]
mov qword [r14 + 0x800], rax
cmp rax, 0xffffffffffffffff
je 0x14019b120
mov r8d, 0xea60
mov rdx, rbx
mov rcx, rax
call fcn.14018be50
test eax, eax
je 0x14019b162
mov dword [rbp - 0x50], 0
mov dword [rbp - 0x4c], 4
movsxd rcx, dword [r14 + 0x800]
lea rax, [rbp - 0x4c]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x50]
mov edx, 0xffff
mov r8d, 0x1007
call qword [sym.imp.WS2_32.dll_getsockopt]
mov eax, dword [rbp - 0x50]
mov rcx, qword [rsp + 0x78]
mov dword [rcx], eax
mov rcx, qword [r14 + 0x800]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rbx, qword [rbx + 0x18]
test rbx, rbx
jne 0x14019b0a0
mov rbx, qword [r14 + 0x810]
test rbx, rbx
je 0x14019b154
mov rcx, qword [rbx + 0x18]
call fcn.14018ba90
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor edi, edi
mov qword [r14 + 0x810], rdi
jmp 0x14019e755
mov ebx, esi
and ebx, 3
cmp ebx, 3
jne 0x14019b174
cmp edi, 0x1d1
je 0x14019b17d
cmp ebx, 2
jne 0x14019b2de
mov rcx, r14
call fcn.14019a700
mov rdx, qword [r14 + 0x810]
test rdx, rdx
je 0x14019b4f0
mov eax, dword [reloc.WS2_32.dll_closesocket]
lea rax, [0x140009750]
mov qword [rbp + 0x40], rax
lea rax, [0x14000a480]
mov qword [rbp + 0x48], rax
lea rax, [0x1401920a0]
mov qword [rbp + 0x50], rax
movsxd rax, dword [reloc.WS2_32.dll_closesocket]
xor ecx, ecx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0x1f
xor r9d, r9d
xor r8d, r8d
mov rax, qword [rbp + rax*8 + 0x40]
call qword [case.0x14003c8e9.0]
test eax, eax
jne 0x14019b4f5
mov rcx, qword [r13]
lea rax, [0x140009900]
mov qword [rbp + 0x58], rax
lea rax, [0x14000a590]
mov qword [rbp + 0x60], rax
lea rax, [0x1401924a0]
mov qword [rbp + 0x68], rax
movsxd rax, dword [reloc.WS2_32.dll_closesocket]
mov rax, qword [rbp + rax*8 + 0x58]
call qword [case.0x14003c8e9.0]
test eax, eax
jne 0x14019b4f5
cmp ebx, 3
sete r8b
mov rdx, qword [rsp + 0x78]
mov rcx, r14
call fcn.14019a770
test al, al
jne 0x14019b2d5
mov rax, qword [rsp + 0x78]
mov dword [rax + 4], 2
cmp ebx, 2
je 0x14019b274
and esi, 0xfffffffd
mov dword [rbp + 0x1850], esi
jmp 0x14019b074
mov rcx, r14
call fcn.14019a700
mov rcx, qword [r14 + 0x800]
cmp rcx, 0xffffffffffffffff
je 0x14019b29a
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [r14 + 0x800], 0xffffffffffffffff
mov rbx, qword [r14 + 0x810]
test rbx, rbx
je 0x14019e7bd
mov rcx, qword [rbx + 0x18]
call fcn.14018ba90
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [r14 + 0x810], 0
jmp 0x14019e7bd
and esi, 0xfffffffe
mov dword [rbp + 0x1850], esi
xor ebx, ebx
mov rcx, r14
call fcn.14019ac60
mov dword [rbp - 0x70], eax
mov dword [rbp - 0x6c], 5
mov rcx, qword [rbp - 0x70]
mov r12, qword [rsp + 0x78]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d833
cmp eax, 0x190
jge 0x14019d98b
mov ecx, 0x1ff
mov r15d, 0x1000
cmp byte [rbp + 0x3b0], 0
je 0x14019d8ec
mov dword [rbp - 0x68], ebx
mov dword [rbp - 0x3c], 6
lea rsi, str.LOGIN
lea rbx, str.AUTH
lea rdi, [0x140009950]
mov byte [rbp + 0x1b0], 0
mov dword [rbp - 0x58], ecx
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x1b0]
call qword [sym.imp.KERNEL32.dll_GetComputerNameA]
lea rax, [rbp + 0x1b0]
mov qword [rsp + 0x20], rax
lea r9, str.EHLO__s_r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rax, [rbp + 0x5b0]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rax + rdx], 0
jne 0x14019b3a0
cmp byte [r14 + 0x1818], 0
je 0x14019b526
mov rcx, qword [r13]
lea rax, [0x140009ab0]
mov qword [rbp + 0x70], rax
lea rax, [0x14000a6d0]
mov qword [rbp + 0x78], rax
lea rax, [0x1401926a0]
mov qword [rbp + 0x80], rax
movsxd rax, dword [reloc.WS2_32.dll_closesocket]
movsxd r8, edx
lea rdx, [rbp + 0x5b0]
mov rax, qword [rbp + rax*8 + 0x70]
call qword [case.0x14003c8e9.0]
test eax, eax
jne 0x14019b54a
mov rcx, qword [r13]
mov qword [rbp - 0x30], rdi
lea r15, [0x14000a5d0]
mov qword [rbp - 0x28], r15
lea rax, [0x1401924e0]
mov qword [rbp - 0x20], rax
movsxd rax, dword [reloc.WS2_32.dll_closesocket]
mov rax, qword [rbp + rax*8 - 0x30]
call qword [case.0x14003c8e9.0]
test rax, rax
je 0x14019b54a
nop dword [rax]
mov qword [rbp - 0x48], 0x800
mov rcx, qword [r13]
lea rax, [0x140009a50]
mov qword [rbp + 0x88], rax
lea rax, [0x14000a690]
mov qword [rbp + 0x90], rax
lea rax, [0x140192570]
mov qword [rbp + 0x98], rax
movsxd rax, dword [reloc.WS2_32.dll_closesocket]
lea r8, [rbp - 0x48]
mov rdx, r14
mov rax, qword [rbp + rax*8 + 0x88]
call qword [case.0x14003c8e9.0]
mov eax, dword [r14 + 0x1820]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, dword [rbp - 0x48]
mov rdx, r14
mov rcx, qword [r14 + 0x800]
call fcn.14017da80
cmp eax, 0xffffffff
je 0x14019b54a
mov rcx, qword [r13]
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x28], r15
lea rax, [0x1401924e0]
mov qword [rbp - 0x20], rax
movsxd rax, dword [reloc.WS2_32.dll_closesocket]
mov rax, qword [rbp + rax*8 - 0x30]
call qword [case.0x14003c8e9.0]
test rax, rax
jne 0x14019b440
jmp 0x14019b54a
mov eax, 0xc8
mov rcx, qword [rsp + 0x78]
mov dword [rcx], eax
mov rcx, r14
call fcn.14019a700
mov rax, qword [rsp + 0x78]
mov dword [rax + 4], 1
cmp ebx, 3
jne 0x14019b274
xor ebx, ebx
mov dword [rbp + 0x1850], ebx
jmp 0x14019b2e0
mov eax, dword [r14 + 0x1820]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, edx
lea rdx, [rbp + 0x5b0]
mov rcx, qword [r14 + 0x800]
call fcn.14017da80
mov rcx, r14
call fcn.14019ac60
mov r15d, eax
mov dword [rbp - 0x40], eax
mov rcx, qword [rbp - 0x40]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d833
lea r11, [r14 + 0x818]
mov rdi, r11
cmp byte [rdi], 0
je 0x14019b5d5
mov r10, rdi
sub r10, rbx
nop
mov r9, rbx
movsx eax, byte [r9]
test al, al
je 0x14019b680
movsx ecx, byte [r9 + r10]
mov r8d, eax
lea eax, [rcx - 0x41]
lea edx, [rcx + 0x20]
cmp eax, 0x19
cmova edx, ecx
lea eax, [r8 - 0x41]
lea ecx, [r8 + 0x20]
cmp eax, 0x19
cmova ecx, r8d
cmp edx, ecx
jne 0x14019b5c0
inc r9
cmp byte [r9 + r10], 0
jne 0x14019b583
cmp byte [r9], 0
je 0x14019b680
inc rdi
inc r10
cmp byte [rdi], 0
jne 0x14019b580
xor r12d, r12d
cmp r15d, 0x190
jge 0x14019d8e1
mov esi, dword [rbp + 0x1850]
test sil, 1
je 0x14019bc84
mov rdi, r11
nop dword [rax + rax]
cmp byte [rdi], 0
je 0x14019bb0a
mov r10, rdi
lea rax, str.STARTTLS
sub r10, rax
nop word [rax + rax]
movsx ecx, byte [rax]
test cl, cl
je 0x14019baa8
movsx edx, byte [rax + r10]
mov r9d, ecx
lea ecx, [rdx - 0x41]
lea r8d, [rdx + 0x20]
cmp ecx, 0x19
cmova r8d, edx
lea ecx, [r9 - 0x41]
lea edx, [r9 + 0x20]
cmp ecx, 0x19
cmova edx, r9d
cmp r8d, edx
jne 0x14019b65f
inc rax
cmp byte [rax + r10], 0
jne 0x14019b620
cmp byte [rax], 0
je 0x14019baa8
inc rdi
inc r10
cmp byte [rdi], 0
je 0x14019bb0a
lea rax, str.STARTTLS
jmp 0x14019b620
cmp rdi, r11
jbe 0x14019b6e1
lfence
movsx edx, byte [rdi - 1]
lea rcx, [0x14020c678]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
je 0x14019b6da
lfence
movsx edx, byte [rdi + 4]
lea rcx, [0x14020c67c]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
jne 0x14019b6e9
lfence
lea r8d, [rax + 2]
lea rdx, [rdi + 4]
lea rcx, [0x1401f9fd0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x14019b6e9
lea rbx, str.AUTH
lea r11, [r14 + 0x818]
inc rdi
jmp 0x14019b573
mov r14d, 1
mov r12d, r14d
mov r11, qword [rbp - 0x80]
mov rdi, r11
nop dword [rax]
cmp byte [rdi], 0
je 0x14019b765
mov r10, rdi
sub r10, rsi
nop dword [rax + rax]
mov r9, rsi
movsx eax, byte [r9]
test al, al
je 0x14019b7f1
movsx ecx, byte [r9 + r10]
mov r8d, eax
lea eax, [rcx - 0x41]
lea edx, [rcx + 0x20]
cmp eax, 0x19
cmova edx, ecx
lea eax, [r8 - 0x41]
lea ecx, [r8 + 0x20]
cmp eax, 0x19
cmova ecx, r8d
cmp edx, ecx
jne 0x14019b750
inc r9
cmp byte [r9 + r10], 0
jne 0x14019b713
cmp byte [r9], 0
je 0x14019b7f1
inc rdi
inc r10
cmp byte [rdi], 0
jne 0x14019b710
xor ebx, ebx
mov dword [rbp - 0x68], ebx
mov rdi, r11
nop dword [rax]
cmp byte [rdi], 0
je 0x14019b8c8
mov r10, rdi
lea rax, str.PLAIN
sub r10, rax
nop word [rax + rax]
mov r9, rax
movsx eax, byte [r9]
test al, al
je 0x14019b85d
movsx r8d, byte [r9 + r10]
mov ecx, eax
add eax, 0xffffffbf
lea edx, [rcx + 0x20]
cmp eax, 0x19
cmova edx, ecx
lea eax, [r8 - 0x41]
lea ecx, [r8 + 0x20]
cmp eax, 0x19
cmova ecx, r8d
cmp ecx, edx
jne 0x14019b7cf
inc r9
cmp byte [r9 + r10], 0
jne 0x14019b793
cmp byte [r9], 0
je 0x14019b85d
inc rdi
inc r10
cmp byte [rdi], 0
je 0x14019b8c8
lea rax, str.PLAIN
jmp 0x14019b790
cmp rdi, r11
jbe 0x14019b848
lfence
movsx edx, byte [rdi - 1]
lea rcx, [0x14020c678]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
je 0x14019b844
lfence
movsx edx, byte [rdi + 5]
lea rcx, [0x14020c67c]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
jne 0x14019b850
lfence
lea r8d, [rax + 2]
lea rdx, [rdi + 5]
lea rcx, [0x1401f9fd0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x14019b850
mov r11, qword [rbp - 0x80]
inc rdi
jmp 0x14019b700
mov dword [rbp - 0x68], r14d
mov r11, qword [rbp - 0x80]
jmp 0x14019b76a
cmp rdi, r11
jbe 0x14019b8b4
lfence
movsx edx, byte [rdi - 1]
lea rcx, [0x14020c678]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
je 0x14019b8b0
lfence
movsx edx, byte [rdi + 5]
lea rcx, [0x14020c67c]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
jne 0x14019b8bc
lfence
lea r8d, [rax + 2]
lea rdx, [rdi + 5]
lea rcx, [0x1401f9fd0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x14019b8bc
mov r11, qword [rbp - 0x80]
inc rdi
jmp 0x14019b770
mov r14d, 2
mov r11, qword [rbp - 0x80]
jmp 0x14019b8cd
xor ebx, ebx
mov r14d, ebx
mov rdi, r11
cmp byte [rdi], 0
je 0x14019b9b0
mov r10, rdi
lea rax, str.CRAM_MD5
sub r10, rax
nop word [rax + rax]
mov r9, rax
movsx eax, byte [r9]
test al, al
je 0x14019b946
movsx ecx, byte [r9 + r10]
mov r8d, eax
lea eax, [rcx - 0x41]
lea edx, [rcx + 0x20]
cmp eax, 0x19
cmova edx, ecx
lea eax, [r8 - 0x41]
lea ecx, [r8 + 0x20]
cmp eax, 0x19
cmova ecx, r8d
cmp edx, ecx
jne 0x14019b92c
inc r9
cmp byte [r9 + r10], 0
jne 0x14019b8f3
cmp byte [r9], 0
je 0x14019b946
inc rdi
inc r10
cmp byte [rdi], 0
je 0x14019b9b0
lea rax, str.CRAM_MD5
jmp 0x14019b8f0
cmp rdi, r11
jbe 0x14019b99d
lfence
movsx edx, byte [rdi - 1]
lea rcx, [0x14020c678]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
je 0x14019b999
lfence
movsx edx, byte [rdi + 8]
lea rcx, [0x14020c67c]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
jne 0x14019b9a5
lfence
lea r8d, [rax + 2]
lea rdx, [rdi + 8]
lea rcx, [0x1401f9fd0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x14019b9a5
mov r11, qword [rbp - 0x80]
inc rdi
jmp 0x14019b8d0
mov esi, 4
mov r11, qword [rbp - 0x80]
jmp 0x14019b9b4
xor ebx, ebx
mov esi, ebx
mov rdi, r11
cmp byte [rdi], 0
je 0x14019ba90
mov r10, rdi
lea rax, str.DIGEST_MD5
sub r10, rax
nop dword [rax]
mov r9, rax
movsx eax, byte [r9]
test al, al
je 0x14019ba26
movsx ecx, byte [r9 + r10]
mov r8d, eax
lea eax, [rcx - 0x41]
lea edx, [rcx + 0x20]
cmp eax, 0x19
cmova edx, ecx
lea eax, [r8 - 0x41]
lea ecx, [r8 + 0x20]
cmp eax, 0x19
cmova ecx, r8d
cmp edx, ecx
jne 0x14019ba0c
inc r9
cmp byte [r9 + r10], 0
jne 0x14019b9d3
cmp byte [r9], 0
je 0x14019ba26
inc rdi
inc r10
cmp byte [rdi], 0
je 0x14019ba90
lea rax, str.DIGEST_MD5
jmp 0x14019b9d0
cmp rdi, r11
jbe 0x14019ba7d
lfence
movsx edx, byte [rdi - 1]
lea rcx, [0x14020c678]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
je 0x14019ba79
lfence
movsx edx, byte [rdi + 0xa]
lea rcx, [0x14020c67c]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
jne 0x14019ba85
lfence
lea r8d, [rax + 2]
lea rdx, [rdi + 0xa]
lea rcx, [0x1401f9fd0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x14019ba85
mov r11, qword [rbp - 0x80]
inc rdi
jmp 0x14019b9b7
mov eax, 8
mov r11, qword [rbp - 0x80]
jmp 0x14019ba92
xor eax, eax
mov ebx, dword [rbp - 0x68]
or ebx, r14d
or ebx, esi
or ebx, eax
mov dword [rbp - 0x68], ebx
mov r14, qword [rbp - 0x78]
jmp 0x14019b5d8
cmp rdi, r11
jbe 0x14019bb02
lfence
movsx edx, byte [rdi - 1]
lea rcx, [0x14020c678]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
je 0x14019bafb
lfence
movsx edx, byte [rdi + 8]
lea rcx, [0x14020c67c]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
test rax, rax
jne 0x14019bb13
lfence
lea r8d, [rax + 2]
lea rdx, [rdi + 8]
lea rcx, [0x1401f9fd0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x14019bb13
lea r11, [r14 + 0x818]
inc rdi
jmp 0x14019b600
test r12d, r12d
jne 0x14019bc84
mov rcx, r14
call fcn.14019a700
mov rdx, qword [r14 + 0x810]
test rdx, rdx
je 0x14019bc67
mov eax, dword [reloc.WS2_32.dll_closesocket]
lea rax, [0x140009750]
mov qword [rbp + 0xa0], rax
lea rax, [0x14000a480]
mov qword [rbp + 0xa8], rax
lea rax, [0x1401920a0]
mov qword [rbp + 0xb0], rax
movsxd rax, dword [reloc.WS2_32.dll_closesocket]
xor ebx, ebx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0x1f
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
mov rax, qword [rbp + rax*8 + 0xa0]
call qword [case.0x14003c8e9.0]
test eax, eax
jne 0x14019bc6c
mov rcx, qword [r13]
lea rax, [0x140009900]
mov qword [rbp + 0xb8], rax
lea rax, [0x14000a590]
mov qword [rbp + 0xc0], rax
lea rax, [0x1401924a0]
mov qword [rbp + 0xc8], rax
movsxd rax, dword [reloc.WS2_32.dll_closesocket]
mov rax, qword [rbp + rax*8 + 0xb8]
call qword [case.0x14003c8e9.0]
mov rcx, r14
test eax, eax
jne 0x14019bc6f
lea r8d, [rbx + 0xa]
lea rdx, str.STARTTLS_r_n
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 7
mov rcx, qword [rsp + 0x70]
mov r12, qword [rsp + 0x78]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d833
cmp eax, 0x190
jge 0x14019bc62
xor r8d, r8d
mov rdx, r12
mov rcx, r14
call fcn.14019a770
test al, al
je 0x14019bc59
and esi, 0xfffffffe
mov dword [rbp + 0x1850], esi
mov ecx, 0x1ff
mov r15d, 0x1000
jmp 0x14019b335
mov dword [r12 + 4], 4
mov rbx, r12
jmp 0x14019bc89
mov eax, 0xc8
mov rcx, r14
mov rbx, qword [rsp + 0x78]
mov dword [rbx], eax
call fcn.14019a700
mov dword [rbx + 4], 3
jmp 0x14019bc89
mov rbx, qword [rsp + 0x78]
mov r12d, dword [rbp - 0x68]
test r12d, r12d
jne 0x14019bc9a
mov r12d, 1
jmp 0x14019bca4
test r12b, 1
je 0x14019c7b6
mov r8d, reloc.WS2_32.dll_inet_ntoa
lea rdx, str.AUTH_LOGIN_r_n
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov qword [rbx], rcx
cmp eax, 0x14e
jne 0x14019c7b6
mov rax, 0xffffffffffffffff
lea rdi, [r14 + 0x818]
nop
inc rax
cmp byte [rdi + rax], 0
jne 0x14019bcf0
cmp rax, 4
jbe 0x14019c7b6
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp byte [rdi + rbx], 0
jne 0x14019bd10
sub rbx, 4
add r14, 0x81c
je 0x14019c7b2
xor edx, edx
cmp rbx, 0xffffffffffffffff
jne 0x14019bd3b
inc rbx
cmp byte [r14 + rbx], dl
jne 0x14019bd32
lea rax, [rbx + r14]
cmp rax, r14
jb 0x14019c7b2
lea rax, [rbx + 3]
shr rax, 2
lea rax, [rax + rax*2]
cmp rax, 0x200
jbe 0x14019bd99
mov rcx, rbx
test rbx, rbx
je 0x14019bd72
cmp byte [rcx + r14 - 1], 0x3d
jne 0x14019bd72
sub rcx, 1
jne 0x14019bd64
mov rax, rcx
and eax, 3
jbe 0x14019c7b2
shr rcx, 2
lea rax, [rax + rcx*2]
dec rcx
add rcx, rax
cmp rcx, 0x200
ja 0x14019c7b2
mov esi, edx
mov r15d, edx
mov r11, rdx
mov r13, rdx
test rbx, rbx
je 0x14019c0ee
nop dword [rax]
mov edi, edx
mov r10d, edx
mov r9d, edx
mov r8d, edx
cmp r11, rbx
jae 0x14019c054
lfence
nop word [rax + rax]
movzx r8d, byte [r11 + r14]
inc r11
lea eax, [r8 - 0x2b]
movabs rcx, 0xffffffc07ff1
cmp eax, 0x2f
ja 0x14019bdf1
bt rcx, rax
jb 0x14019be30
lea eax, [r8 - 0x61]
cmp eax, 0x19
jbe 0x14019be30
cmp r8d, 0x3d
je 0x14019be26
cmp r8d, 0x20
ja 0x14019be16
movabs rdx, 0x100002600
bt rdx, r8
jb 0x14019be1b
mov esi, 1
cmp r11, rbx
jae 0x14019bf49
jmp 0x14019bdd0
mov edx, 1
mov r15d, edx
jmp 0x14019be35
mov edx, 1
cmp r11, rbx
jae 0x14019bf49
lfence
movzx r9d, byte [r11 + r14]
inc r11
lea eax, [r9 - 0x2b]
cmp eax, 0x2f
ja 0x14019be58
bt rcx, rax
jb 0x14019be92
lea eax, [r9 - 0x61]
cmp eax, 0x19
jbe 0x14019be92
cmp r9d, 0x3d
je 0x14019be8f
cmp r9d, 0x20
ja 0x14019be82
movabs rdx, 0x100002600
bt rdx, r9
mov edx, 1
jb 0x14019be84
mov esi, edx
cmp r11, rbx
jae 0x14019bf49
jmp 0x14019be41
mov r15d, edx
cmp r11, rbx
jae 0x14019bf49
lfence
nop
movzx r10d, byte [r11 + r14]
inc r11
lea eax, [r10 - 0x2b]
cmp eax, 0x2f
ja 0x14019beb7
bt rcx, rax
jb 0x14019beed
lea eax, [r10 - 0x61]
cmp eax, 0x19
jbe 0x14019beed
cmp r10d, 0x3d
je 0x14019beea
cmp r10d, 0x20
ja 0x14019bee1
movabs rdx, 0x100002600
bt rdx, r10
mov edx, 1
jb 0x14019bee3
mov esi, edx
cmp r11, rbx
jae 0x14019bf49
jmp 0x14019bea0
mov r15d, edx
cmp r11, rbx
jae 0x14019bf49
lfence
nop word [rax + rax]
movzx edi, byte [r11 + r14]
inc r11
lea eax, [rdi - 0x2b]
cmp eax, 0x2f
ja 0x14019bf16
bt rcx, rax
jb 0x14019bf49
lea eax, [rdi - 0x61]
cmp eax, 0x19
jbe 0x14019bf49
cmp edi, 0x3d
je 0x14019bf46
cmp edi, 0x20
ja 0x14019bf3d
movabs rdx, 0x100002600
bt rdx, rdi
mov edx, 1
jb 0x14019bf3f
mov esi, edx
cmp r11, rbx
jae 0x14019bf49
jmp 0x14019bf00
mov r15d, edx
lea eax, [r8 - 0x2b]
cmp eax, 0x2f
ja 0x14019bf58
bt rcx, rax
jb 0x14019bf65
lea eax, [r8 - 0x61]
cmp eax, 0x19
ja 0x14019c054
lea eax, [r9 - 0x2b]
cmp eax, 0x2f
ja 0x14019bf74
bt rcx, rax
jb 0x14019bf81
lea eax, [r9 - 0x61]
cmp eax, 0x19
ja 0x14019c054
lea eax, [r10 - 0x2b]
cmp eax, 0x2f
ja 0x14019bf90
bt rcx, rax
jb 0x14019bf9d
lea eax, [r10 - 0x61]
cmp eax, 0x19
ja 0x14019c054
lea eax, [rdi - 0x2b]
cmp eax, 0x2f
ja 0x14019bfab
bt rcx, rax
jb 0x14019bfb7
lea eax, [rdi - 0x61]
cmp eax, 0x19
ja 0x14019c054
lea rdx, [0x140000000]
movzx ecx, byte [r8 + rdx + 0x204270]
mov eax, r9d
movzx r8d, byte [rax + rdx + 0x204270]
mov eax, r10d
movzx r10d, byte [rax + rdx + 0x204270]
mov eax, edi
movzx edx, byte [rax + rdx + 0x204270]
mov r9d, r8d
shr r9d, 4
and r9d, 3
and ecx, 0x3f
shl ecx, 2
or r9d, ecx
mov eax, r10d
shr eax, 2
and eax, 0xf
and r8d, 0xf
shl r8d, 4
or eax, r8d
and r10d, 3
shl r10d, 6
and edx, 0x3f
or r10d, edx
mov byte [rbp + r13 + 0x1b0], r9b
mov byte [rbp + r13 + 0x1b1], al
mov byte [rbp + r13 + 0x1b2], r10b
add r13, 3
test r15d, r15d
jne 0x14019c0ea
cmp r11, rbx
jae 0x14019c0ea
xor edx, edx
jmp 0x14019bdb0
mov ecx, r8d
call fcn.14014f910
test eax, eax
je 0x14019c0ea
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14019c17b
mov ecx, r10d
call fcn.14014f910
test eax, eax
je 0x14019c17b
cmp edi, 0x3d
jne 0x14019c17b
mov eax, r8d
lea r11, [0x140000000]
movzx ecx, byte [rax + r11 + 0x204270]
mov eax, r9d
movzx edx, byte [rax + r11 + 0x204270]
mov r8d, edx
shr r8d, 4
and r8d, 3
and ecx, 0x3f
shl ecx, 2
or r8d, ecx
mov eax, r10d
movzx ecx, byte [rax + r11 + 0x204270]
shr ecx, 2
and ecx, 0xf
and edx, 0xf
shl edx, 4
or ecx, edx
mov byte [rbp + r13 + 0x1b0], r8b
mov byte [rbp + r13 + 0x1b1], cl
mov rdi, qword [rbp - 0x80]
test esi, esi
jne 0x14019c7b2
lea rax, [rbp + 0x3b0]
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], 0
jne 0x14019c104
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
mov r15d, 0x1000
mov r9d, r15d
lea r8, [rbp + 0x5b0]
lea rcx, [rbp + 0x3b0]
call fcn.14014f940
lea rax, [rbp + 0x5b0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x14019c140
lea rax, [rcx + 1]
cmp rax, r15
jae 0x14019c1fd
lea rax, [rcx + 3]
lea r8, [0x1401f9fd0]
mov rdx, r15
cmp rax, r15
ja 0x14019c1d7
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
jmp 0x14019c1fd
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14019c0ea
cmp r10d, 0x3d
jne 0x14019c0ea
cmp edi, r10d
mov rdi, qword [rbp - 0x80]
jne 0x14019c0ee
mov eax, r9d
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x204270]
shr dl, 4
and dl, 3
mov eax, r8d
movzx ecx, byte [rax + rcx + 0x204270]
shl cl, 2
xor dl, cl
mov byte [rbp + r13 + 0x1b0], dl
jmp 0x14019c0ee
lfence
mov r9d, 0xfff
sub r9, rcx
sub rdx, rcx
lea rax, [rbp + 0x5b0]
add rcx, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x15af], 0
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019c210
lea rdx, [rbp + 0x5b0]
mov rcx, qword [rbp - 0x78]
call fcn.14019aa70
mov rcx, qword [rbp - 0x78]
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov qword [rbx], rcx
cmp eax, 0x14e
jne 0x14019c7ac
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rdi + rax], 0
jne 0x14019c260
cmp rax, 4
jbe 0x14019c7ac
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp byte [rdi + rbx], 0
jne 0x14019c280
sub rbx, 4
xor edx, edx
cmp rbx, 0xffffffffffffffff
jne 0x14019c29e
inc rbx
cmp byte [r14 + rbx], dl
jne 0x14019c295
lea rax, [r14 + rbx]
cmp rax, r14
jb 0x14019c7a6
lea rax, [rbx + 3]
shr rax, 2
lea rax, [rax + rax*2]
cmp rax, 0x200
jbe 0x14019c2fc
mov rcx, rbx
test rbx, rbx
je 0x14019c2d5
cmp byte [r14 + rcx - 1], 0x3d
jne 0x14019c2d5
sub rcx, 1
jne 0x14019c2c7
mov rax, rcx
and eax, 3
jbe 0x14019c7a6
shr rcx, 2
lea rax, [rax + rcx*2]
dec rcx
add rcx, rax
cmp rcx, 0x200
ja 0x14019c7a6
mov esi, edx
mov r15d, edx
mov r11, rdx
mov r13, rdx
test rbx, rbx
je 0x14019c687
mov edi, edx
mov r10d, edx
mov r9d, edx
mov r8d, edx
cmp r11, rbx
jae 0x14019c5b4
lfence
nop word [rax + rax]
movzx r8d, byte [r14 + r11]
inc r11
lea eax, [r8 - 0x2b]
movabs rcx, 0xffffffc07ff1
cmp eax, 0x2f
ja 0x14019c351
bt rcx, rax
jb 0x14019c390
lea eax, [r8 - 0x61]
cmp eax, 0x19
jbe 0x14019c390
cmp r8d, 0x3d
je 0x14019c386
cmp r8d, 0x20
ja 0x14019c376
movabs rdx, 0x100002600
bt rdx, r8
jb 0x14019c37b
mov esi, 1
cmp r11, rbx
jae 0x14019c4a9
jmp 0x14019c330
mov edx, 1
mov r15d, edx
jmp 0x14019c395
mov edx, 1
cmp r11, rbx
jae 0x14019c4a9
lfence
movzx r9d, byte [r14 + r11]
inc r11
lea eax, [r9 - 0x2b]
cmp eax, 0x2f
ja 0x14019c3b8
bt rcx, rax
jb 0x14019c3f2
lea eax, [r9 - 0x61]
cmp eax, 0x19
jbe 0x14019c3f2
cmp r9d, 0x3d
je 0x14019c3ef
cmp r9d, 0x20
ja 0x14019c3e2
movabs rdx, 0x100002600
bt rdx, r9
mov edx, 1
jb 0x14019c3e4
mov esi, edx
cmp r11, rbx
jae 0x14019c4a9
jmp 0x14019c3a1
mov r15d, edx
cmp r11, rbx
jae 0x14019c4a9
lfence
nop
movzx r10d, byte [r14 + r11]
inc r11
lea eax, [r10 - 0x2b]
cmp eax, 0x2f
ja 0x14019c417
bt rcx, rax
jb 0x14019c44d
lea eax, [r10 - 0x61]
cmp eax, 0x19
jbe 0x14019c44d
cmp r10d, 0x3d
je 0x14019c44a
cmp r10d, 0x20
ja 0x14019c441
movabs rdx, 0x100002600
bt rdx, r10
mov edx, 1
jb 0x14019c443
mov esi, edx
cmp r11, rbx
jae 0x14019c4a9
jmp 0x14019c400
mov r15d, edx
cmp r11, rbx
jae 0x14019c4a9
lfence
nop word [rax + rax]
movzx edi, byte [r14 + r11]
inc r11
lea eax, [rdi - 0x2b]
cmp eax, 0x2f
ja 0x14019c476
bt rcx, rax
jb 0x14019c4a9
lea eax, [rdi - 0x61]
cmp eax, 0x19
jbe 0x14019c4a9
cmp edi, 0x3d
je 0x14019c4a6
cmp edi, 0x20
ja 0x14019c49d
movabs rdx, 0x100002600
bt rdx, rdi
mov edx, 1
jb 0x14019c49f
mov esi, edx
cmp r11, rbx
jae 0x14019c4a9
jmp 0x14019c460
mov r15d, edx
lea eax, [r8 - 0x2b]
cmp eax, 0x2f
ja 0x14019c4b8
bt rcx, rax
jb 0x14019c4c5
lea eax, [r8 - 0x61]
cmp eax, 0x19
ja 0x14019c5b4
lea eax, [r9 - 0x2b]
cmp eax, 0x2f
ja 0x14019c4d4
bt rcx, rax
jb 0x14019c4e1
lea eax, [r9 - 0x61]
cmp eax, 0x19
ja 0x14019c5b4
lea eax, [r10 - 0x2b]
cmp eax, 0x2f
ja 0x14019c4f0
bt rcx, rax
jb 0x14019c4fd
lea eax, [r10 - 0x61]
cmp eax, 0x19
ja 0x14019c5b4
lea eax, [rdi - 0x2b]
cmp eax, 0x2f
ja 0x14019c50b
bt rcx, rax
jb 0x14019c517
lea eax, [rdi - 0x61]
cmp eax, 0x19
ja 0x14019c5b4
lea rdx, [0x140000000]
movzx ecx, byte [r8 + rdx + 0x204270]
mov eax, r9d
movzx r8d, byte [rax + rdx + 0x204270]
mov eax, r10d
movzx r10d, byte [rax + rdx + 0x204270]
mov eax, edi
movzx edx, byte [rax + rdx + 0x204270]
mov r9d, r8d
shr r9d, 4
and r9d, 3
and ecx, 0x3f
shl ecx, 2
or r9d, ecx
mov eax, r10d
shr eax, 2
and eax, 0xf
and r8d, 0xf
shl r8d, 4
or eax, r8d
and r10d, 3
shl r10d, 6
and edx, 0x3f
or r10d, edx
mov byte [rbp + r13 + 0x1b0], r9b
mov byte [rbp + r13 + 0x1b1], al
mov byte [rbp + r13 + 0x1b2], r10b
add r13, 3
test r15d, r15d
jne 0x14019c687
cmp r11, rbx
jae 0x14019c687
xor edx, edx
jmp 0x14019c310
mov ecx, r8d
call fcn.14014f910
test eax, eax
je 0x14019c687
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14019c640
mov ecx, r10d
call fcn.14014f910
test eax, eax
je 0x14019c640
cmp edi, 0x3d
jne 0x14019c640
mov eax, r8d
lea r11, [0x140000000]
movzx ecx, byte [rax + r11 + 0x204270]
mov eax, r9d
movzx edx, byte [rax + r11 + 0x204270]
mov r8d, edx
shr r8d, 4
and r8d, 3
and ecx, 0x3f
shl ecx, 2
or r8d, ecx
mov eax, r10d
movzx ecx, byte [rax + r11 + 0x204270]
shr ecx, 2
and ecx, 0xf
and edx, 0xf
shl edx, 4
or ecx, edx
mov byte [rbp + r13 + 0x1b0], r8b
mov byte [rbp + r13 + 0x1b1], cl
jmp 0x14019c687
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14019c687
cmp r10d, 0x3d
jne 0x14019c687
cmp edi, r10d
jne 0x14019c687
mov eax, r9d
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x204270]
shr dl, 4
and dl, 3
mov eax, r8d
movzx ecx, byte [rax + rcx + 0x204270]
shl cl, 2
xor dl, cl
mov byte [rbp + r13 + 0x1b0], dl
test esi, esi
jne 0x14019c7b2
lea rax, [rbp + 0x4b0]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rax + rdx], 0
jne 0x14019c6a0
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
mov r15d, 0x1000
mov r9d, r15d
lea r8, [rbp + 0x5b0]
lea rcx, [rbp + 0x4b0]
call fcn.14014f940
lea rax, [rbp + 0x5b0]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14019c6e0
lea rax, [rcx + 1]
cmp rax, r15
jae 0x14019c73a
lea rax, [rcx + 3]
lea r8, [0x1401f9fd0]
mov rdx, r15
cmp rax, r15
ja 0x14019c714
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
jmp 0x14019c73a
lfence
mov r9d, 0xfff
sub r9, rcx
sub rdx, rcx
lea rax, [rbp + 0x5b0]
add rcx, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x15af], 0
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019c750
lea rdx, [rbp + 0x5b0]
mov r14, qword [rbp - 0x78]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov qword [rbx], rcx
cmp eax, 0xffffffff
je 0x14019d833
cmp eax, 0x190
jge 0x14019c7c1
mov r12, rbx
jmp 0x14019d9f3
mov r14, qword [rbp - 0x78]
jmp 0x14019c7bc
mov r14, qword [rbp - 0x78]
jmp 0x14019c7c1
mov r14, qword [rbp - 0x78]
mov r15d, 0x1000
mov rbx, qword [rsp + 0x78]
test r12b, 2
je 0x14019ca0e
lea rcx, [rbp + 0x3b0]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14019c7e0
lea rsi, [rax + 1]
lea r8, [rbp + 0x3b0]
mov edx, 0x200
lea rcx, [rbp + 0x1b0]
cmp rax, rdx
jae 0x14019c80d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
jmp 0x14019c820
mov r9d, 0x1ff
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x3af], 0
mov ebx, 0x200
sub rbx, rsi
lea rdi, [rbp + 0x1b0]
lea rdi, [rdi + rsi]
je 0x14019c878
lea rcx, [rbp + 0x1b0]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x14019c843
lfence
lea r8, [rbp + 0x1b0]
mov rdx, rbx
mov rcx, rdi
cmp rax, rbx
jae 0x14019c869
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
jmp 0x14019c878
lea r9, [rbx - 1]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rdi + rbx - 1], 0
add rsi, rsi
mov ebx, 0x200
sub rbx, rsi
lea rdi, [rbp + 0x1b0]
lea rdi, [rdi + rsi]
je 0x14019c8d5
lea rcx, [rbp + 0x4b0]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x14019c8a0
lfence
lea r8, [rbp + 0x4b0]
mov rdx, rbx
mov rcx, rdi
cmp rax, rbx
jae 0x14019c8c6
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
jmp 0x14019c8d5
lea r9, [rbx - 1]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rdi + rbx - 1], 0
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rdi + rax], 0
jne 0x14019c8e0
add rsi, rax
lea r8, str.AUTH_PLAIN
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
lea rcx, [rbp + 0x5b0]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x14019c911
mov r9, r15
sub r9, rax
lea r8, [rbp + 0x5b0]
add r8, rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
mov rdx, rsi
lea rcx, [rbp + 0x1b0]
call fcn.14014f940
lea rax, [rbp + 0x5b0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x14019c950
lea rax, [rcx + 1]
cmp rax, r15
jae 0x14019c9aa
lea rax, [rcx + 3]
lea r8, [0x1401f9fd0]
mov rdx, r15
cmp rax, r15
ja 0x14019c984
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
jmp 0x14019c9aa
lfence
mov r9d, 0xfff
sub r9, rcx
sub rdx, rcx
lea rax, [rbp + 0x5b0]
add rcx, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x15af], 0
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019c9c0
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov qword [rbx], rcx
cmp eax, 0xffffffff
je 0x14019d833
cmp eax, 0x190
jl 0x14019c79e
test r12b, 8
je 0x14019d100
mov r8d, reloc.WS2_32.dll_recvfrom
lea rdx, str.AUTH_DIGEST_MD5_r_n
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov qword [rbx], rcx
cmp eax, 0x14e
jne 0x14019d100
mov rdi, 0xffffffffffffffff
nop dword [rax + rax]
inc rdi
cmp byte [r14 + rdi + 0x818], 0
jne 0x14019ca60
cmp rdi, 4
jbe 0x14019d0c0
add rdi, 0xfffffffffffffffc
lea rsi, [r14 + 0x81c]
test rsi, rsi
je 0x14019d0c0
xor edx, edx
cmp rdi, 0xffffffffffffffff
jne 0x14019ca9c
inc rdi
cmp byte [rsi + rdi], dl
jne 0x14019ca94
lea rax, [rsi + rdi]
cmp rax, rsi
jb 0x14019d0c0
lea rax, [rdi + 3]
shr rax, 2
lea rax, [rax + rax*2]
cmp rax, r15
jbe 0x14019caf2
mov rcx, rdi
test rdi, rdi
je 0x14019cacf
cmp byte [rsi + rcx - 1], 0x3d
jne 0x14019cacf
sub rcx, 1
jne 0x14019cac2
mov rax, rcx
and eax, 3
jbe 0x14019d0c0
shr rcx, 2
lea rax, [rax + rcx*2]
dec rcx
add rcx, rax
cmp rcx, r15
ja 0x14019d0c0
mov r14d, edx
mov r15d, edx
mov r11, rdx
mov r13, rdx
test rdi, rdi
je 0x14019ce66
nop word [rax + rax]
mov ebx, edx
mov r10d, edx
mov r9d, edx
mov r8d, edx
cmp r11, rdi
jae 0x14019cdc5
lfence
nop word [rax + rax]
movzx r8d, byte [r11 + rsi]
inc r11
lea eax, [r8 - 0x2b]
movabs rcx, 0xffffffc07ff1
cmp eax, 0x2f
ja 0x14019cb51
bt rcx, rax
jb 0x14019cb91
lea eax, [r8 - 0x61]
cmp eax, 0x19
jbe 0x14019cb91
cmp r8d, 0x3d
je 0x14019cb87
cmp r8d, 0x20
ja 0x14019cb76
movabs rdx, 0x100002600
bt rdx, r8
jb 0x14019cb7c
mov r14d, 1
cmp r11, rdi
jae 0x14019ccba
jmp 0x14019cb30
mov edx, 1
mov r15d, edx
jmp 0x14019cb96
mov edx, 1
cmp r11, rdi
jae 0x14019ccba
lfence
nop dword [rax]
nop word [rax + rax]
movzx r9d, byte [r11 + rsi]
inc r11
lea eax, [r9 - 0x2b]
cmp eax, 0x2f
ja 0x14019cbc7
bt rcx, rax
jb 0x14019cc02
lea eax, [r9 - 0x61]
cmp eax, 0x19
jbe 0x14019cc02
cmp r9d, 0x3d
je 0x14019cbff
cmp r9d, 0x20
ja 0x14019cbf1
movabs rdx, 0x100002600
bt rdx, r9
mov edx, 1
jb 0x14019cbf4
mov r14d, edx
cmp r11, rdi
jae 0x14019ccba
jmp 0x14019cbb0
mov r15d, edx
cmp r11, rdi
jae 0x14019ccba
lfence
nop
movzx r10d, byte [r11 + rsi]
inc r11
lea eax, [r10 - 0x2b]
cmp eax, 0x2f
ja 0x14019cc27
bt rcx, rax
jb 0x14019cc5e
lea eax, [r10 - 0x61]
cmp eax, 0x19
jbe 0x14019cc5e
cmp r10d, 0x3d
je 0x14019cc5b
cmp r10d, 0x20
ja 0x14019cc51
movabs rdx, 0x100002600
bt rdx, r10
mov edx, 1
jb 0x14019cc54
mov r14d, edx
cmp r11, rdi
jae 0x14019ccba
jmp 0x14019cc10
mov r15d, edx
cmp r11, rdi
jae 0x14019ccba
lfence
nop word [rax + rax]
movzx ebx, byte [r11 + rsi]
inc r11
lea eax, [rbx - 0x2b]
cmp eax, 0x2f
ja 0x14019cc86
bt rcx, rax
jb 0x14019ccba
lea eax, [rbx - 0x61]
cmp eax, 0x19
jbe 0x14019ccba
cmp ebx, 0x3d
je 0x14019ccb7
cmp ebx, 0x20
ja 0x14019ccad
movabs rdx, 0x100002600
bt rdx, rbx
mov edx, 1
jb 0x14019ccb0
mov r14d, edx
cmp r11, rdi
jae 0x14019ccba
jmp 0x14019cc70
mov r15d, edx
lea eax, [r8 - 0x2b]
cmp eax, 0x2f
ja 0x14019ccc9
bt rcx, rax
jb 0x14019ccd6
lea eax, [r8 - 0x61]
cmp eax, 0x19
ja 0x14019cdc5
lea eax, [r9 - 0x2b]
cmp eax, 0x2f
ja 0x14019cce5
bt rcx, rax
jb 0x14019ccf2
lea eax, [r9 - 0x61]
cmp eax, 0x19
ja 0x14019cdc5
lea eax, [r10 - 0x2b]
cmp eax, 0x2f
ja 0x14019cd01
bt rcx, rax
jb 0x14019cd0e
lea eax, [r10 - 0x61]
cmp eax, 0x19
ja 0x14019cdc5
lea eax, [rbx - 0x2b]
cmp eax, 0x2f
ja 0x14019cd1c
bt rcx, rax
jb 0x14019cd28
lea eax, [rbx - 0x61]
cmp eax, 0x19
ja 0x14019cdc5
lea rdx, [0x140000000]
movzx ecx, byte [r8 + rdx + 0x204270]
mov eax, r9d
movzx r8d, byte [rax + rdx + 0x204270]
mov eax, r10d
movzx r10d, byte [rax + rdx + 0x204270]
mov eax, ebx
movzx edx, byte [rax + rdx + 0x204270]
mov r9d, r8d
shr r9d, 4
and r9d, 3
and ecx, 0x3f
shl ecx, 2
or r9d, ecx
mov eax, r10d
shr eax, 2
and eax, 0xf
and r8d, 0xf
shl r8d, 4
or eax, r8d
and r10d, 3
shl r10d, 6
and edx, 0x3f
or r10d, edx
mov byte [rbp + r13 + 0x5b0], r9b
mov byte [rbp + r13 + 0x5b1], al
mov byte [rbp + r13 + 0x5b2], r10b
add r13, 3
xor edx, edx
test r15d, r15d
jne 0x14019cfac
cmp r11, rdi
jae 0x14019cfac
jmp 0x14019cb10
mov ecx, r8d
call fcn.14014f910
test eax, eax
je 0x14019ce5f
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14019cf4e
mov ecx, r10d
call fcn.14014f910
test eax, eax
je 0x14019cf4e
cmp ebx, 0x3d
jne 0x14019cf4e
mov eax, r8d
lea r11, [0x140000000]
movzx ecx, byte [rax + r11 + 0x204270]
mov eax, r9d
movzx edx, byte [rax + r11 + 0x204270]
mov r8d, edx
shr r8d, 4
and r8d, 3
and ecx, 0x3f
shl ecx, 2
or r8d, ecx
mov eax, r10d
movzx ecx, byte [rax + r11 + 0x204270]
shr ecx, 2
and ecx, 0xf
and edx, 0xf
shl edx, 4
or ecx, edx
mov byte [rbp + r13 + 0x5b0], r8b
mov byte [rbp + r13 + 0x5b1], cl
add r13, 2
mov rbx, qword [rsp + 0x78]
xor edx, edx
test r14d, r14d
jne 0x14019d0bc
mov r15d, 0x1000
cmp r13, r15
jae 0x14019e83f
mov byte [rbp + r13 + 0x5b0], r14b
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rdx
mov dword [rsp + 0x28], 0x200
lea rax, [rbp + 0x1b0]
mov qword [rsp + 0x20], rax
lea r9d, [r14 - 1]
mov r8, qword [rbp + 0x30]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov byte [rbp + 0x3af], r14b
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x18], xmm0
xor r13d, r13d
mov qword [rbp - 8], r13
movdqu xmmword [rbp], xmm0
mov qword [rbp + 0x10], r13
lea rax, [rbp + 0x5b0]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x5b0]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x4b0]
lea r8, [rbp + 0x3b0]
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp - 0x18]
call fcn.140199590
movzx ebx, al
mov rcx, qword [rbp]
test rcx, rcx
je 0x14019cfc7
mov rdx, qword [rbp + 0x10]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, r15
jb 0x14019cfb6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14019cfb6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14019ce5f
cmp r10d, 0x3d
jne 0x14019cfaa
cmp ebx, r10d
mov rbx, qword [rsp + 0x78]
jne 0x14019ce64
mov eax, r9d
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x204270]
shr dl, 4
and dl, 3
mov eax, r8d
movzx ecx, byte [rax + rcx + 0x204270]
shl cl, 2
xor dl, cl
mov byte [rbp + r13 + 0x5b0], dl
inc r13
jmp 0x14019ce64
xor edx, edx
mov rbx, qword [rsp + 0x78]
jmp 0x14019ce66
call fcn.140007ea0
xorps xmm0, xmm0
movdqu xmmword [rbp], xmm0
mov qword [rbp + 0x10], r13
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x14019d00c
mov rdx, qword [rbp - 8]
sub rdx, rcx
mov rax, rcx
cmp rdx, r15
jb 0x14019cffb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14019cffb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140007ea0
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], r13
test bl, bl
je 0x14019d287
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14019d022
lea rdx, [rbp + 0x5b0]
mov r14, qword [rbp - 0x78]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov qword [rbx], rcx
cmp eax, 0xffffffff
je 0x14019d836
cmp eax, 0x14e
jne 0x14019d100
mov r8d, 2
lea rdx, [0x1401f9fd0]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov qword [rbx], rcx
cmp eax, 0xffffffff
je 0x14019d836
xor ebx, ebx
cmp eax, 0x190
jge 0x14019d102
mov r12d, ebx
jmp 0x14019d102
mov r14, qword [rbp - 0x78]
mov r8d, 2
lea rdx, [0x1401f9fd0]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov qword [rbx], rcx
cmp eax, 0xffffffff
je 0x14019d833
mov r15d, 0x1000
xor ebx, ebx
test r12b, 4
je 0x14019d9ee
mov r8d, reloc.WS2_32.dll_ntohs
lea rdx, str.AUTH_CRAM_MD5_r_n
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov r12, qword [rsp + 0x78]
mov qword [r12], rcx
cmp eax, 0x14e
jne 0x14019d9f3
mov rdi, 0xffffffffffffffff
nop word [rax + rax]
inc rdi
cmp byte [r14 + rdi + 0x818], 0
jne 0x14019d160
cmp rdi, 4
jbe 0x14019d89b
add rdi, 0xfffffffffffffffc
lea rsi, [r14 + 0x81c]
test rsi, rsi
je 0x14019d89b
cmp rdi, 0xffffffffffffffff
jne 0x14019d19b
inc rdi
cmp byte [rsi + rdi], 0
jne 0x14019d192
lea rax, [rdi + rsi]
cmp rax, rsi
jb 0x14019d89b
lea rax, [rdi + 3]
shr rax, 2
lea rdx, [rax + rax*2]
cmp rdx, r15
jbe 0x14019d1f5
mov rcx, rdi
test rdi, rdi
je 0x14019d1ce
cmp byte [rsi + rcx - 1], 0x3d
jne 0x14019d1ce
sub rcx, 1
jne 0x14019d1c1
mov rax, rcx
and eax, 3
jbe 0x14019d89b
shr rcx, 2
lea rdx, [rcx*2 - 1]
add rdx, rax
add rdx, rcx
cmp rdx, r15
ja 0x14019d89b
mov r14d, ebx
mov r15d, ebx
mov r11, rbx
mov r13, rbx
test rdi, rdi
je 0x14019d59f
nop word [rax + rax]
xor eax, eax
mov r10d, eax
mov r9d, eax
mov r8d, eax
cmp r11, rdi
jae 0x14019d4c5
lfence
nop word [rax + rax]
movzx r8d, byte [r11 + rsi]
inc r11
lea eax, [r8 - 0x2b]
movabs rcx, 0xffffffc07ff1
cmp eax, 0x2f
ja 0x14019d251
bt rcx, rax
jb 0x14019d29a
lea eax, [r8 - 0x61]
cmp eax, 0x19
jbe 0x14019d29a
cmp r8d, 0x3d
je 0x14019d290
cmp r8d, 0x20
ja 0x14019d276
movabs rdx, 0x100002600
bt rdx, r8
jb 0x14019d27c
mov r14d, 1
cmp r11, rdi
jae 0x14019d3ba
jmp 0x14019d230
mov r14, qword [rbp - 0x78]
jmp 0x14019d100
mov edx, 1
mov r15d, edx
jmp 0x14019d29f
mov edx, 1
cmp r11, rdi
jae 0x14019d3ba
lfence
nop dword [rax + rax]
movzx r9d, byte [r11 + rsi]
inc r11
lea eax, [r9 - 0x2b]
cmp eax, 0x2f
ja 0x14019d2c7
bt rcx, rax
jb 0x14019d302
lea eax, [r9 - 0x61]
cmp eax, 0x19
jbe 0x14019d302
cmp r9d, 0x3d
je 0x14019d2ff
cmp r9d, 0x20
ja 0x14019d2f1
movabs rdx, 0x100002600
bt rdx, r9
mov edx, 1
jb 0x14019d2f4
mov r14d, edx
cmp r11, rdi
jae 0x14019d3ba
jmp 0x14019d2b0
mov r15d, edx
cmp r11, rdi
jae 0x14019d3ba
lfence
nop
movzx r10d, byte [r11 + rsi]
inc r11
lea eax, [r10 - 0x2b]
cmp eax, 0x2f
ja 0x14019d327
bt rcx, rax
jb 0x14019d35e
lea eax, [r10 - 0x61]
cmp eax, 0x19
jbe 0x14019d35e
cmp r10d, 0x3d
je 0x14019d35b
cmp r10d, 0x20
ja 0x14019d351
movabs rdx, 0x100002600
bt rdx, r10
mov edx, 1
jb 0x14019d354
mov r14d, edx
cmp r11, rdi
jae 0x14019d3ba
jmp 0x14019d310
mov r15d, edx
cmp r11, rdi
jae 0x14019d3ba
lfence
nop word [rax + rax]
movzx ebx, byte [r11 + rsi]
inc r11
lea eax, [rbx - 0x2b]
cmp eax, 0x2f
ja 0x14019d386
bt rcx, rax
jb 0x14019d3ba
lea eax, [rbx - 0x61]
cmp eax, 0x19
jbe 0x14019d3ba
cmp ebx, 0x3d
je 0x14019d3b7
cmp ebx, 0x20
ja 0x14019d3ad
movabs rdx, 0x100002600
bt rdx, rbx
mov edx, 1
jb 0x14019d3b0
mov r14d, edx
cmp r11, rdi
jae 0x14019d3ba
jmp 0x14019d370
mov r15d, edx
lea eax, [r8 - 0x2b]
cmp eax, 0x2f
ja 0x14019d3c9
bt rcx, rax
jb 0x14019d3d6
lea eax, [r8 - 0x61]
cmp eax, 0x19
ja 0x14019d4c5
lea eax, [r9 - 0x2b]
cmp eax, 0x2f
ja 0x14019d3e5
bt rcx, rax
jb 0x14019d3f2
lea eax, [r9 - 0x61]
cmp eax, 0x19
ja 0x14019d4c5
lea eax, [r10 - 0x2b]
cmp eax, 0x2f
ja 0x14019d401
bt rcx, rax
jb 0x14019d40e
lea eax, [r10 - 0x61]
cmp eax, 0x19
ja 0x14019d4c5
lea eax, [rbx - 0x2b]
cmp eax, 0x2f
ja 0x14019d41c
bt rcx, rax
jb 0x14019d428
lea eax, [rbx - 0x61]
cmp eax, 0x19
ja 0x14019d4c5
lea rdx, [0x140000000]
movzx ecx, byte [r8 + rdx + 0x204270]
mov eax, r9d
movzx r8d, byte [rax + rdx + 0x204270]
mov eax, r10d
movzx r10d, byte [rax + rdx + 0x204270]
mov eax, ebx
movzx edx, byte [rax + rdx + 0x204270]
mov r9d, r8d
shr r9d, 4
and r9d, 3
and ecx, 0x3f
shl ecx, 2
or r9d, ecx
mov eax, r10d
shr eax, 2
and eax, 0xf
and r8d, 0xf
shl r8d, 4
or eax, r8d
and r10d, 3
shl r10d, 6
and edx, 0x3f
or r10d, edx
mov byte [rbp + r13 + 0x5b0], r9b
mov byte [rbp + r13 + 0x5b1], al
mov byte [rbp + r13 + 0x5b2], r10b
add r13, 3
test r15d, r15d
jne 0x14019d59f
cmp r11, rdi
jae 0x14019d59f
xor ebx, ebx
jmp 0x14019d210
mov ecx, r8d
call fcn.14014f910
test eax, eax
je 0x14019d59f
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14019d555
mov ecx, r10d
call fcn.14014f910
test eax, eax
je 0x14019d555
cmp ebx, 0x3d
jne 0x14019d555
mov eax, r8d
lea r11, [0x140000000]
movzx ecx, byte [rax + r11 + 0x204270]
mov eax, r9d
movzx edx, byte [rax + r11 + 0x204270]
mov r8d, edx
shr r8d, 4
and r8d, 3
and ecx, 0x3f
shl ecx, 2
or r8d, ecx
mov eax, r10d
movzx ecx, byte [rax + r11 + 0x204270]
shr ecx, 2
and ecx, 0xf
and edx, 0xf
shl edx, 4
or ecx, edx
mov byte [rbp + r13 + 0x5b0], r8b
mov byte [rbp + r13 + 0x5b1], cl
add r13, 2
jmp 0x14019d59f
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14019d59f
cmp r10d, 0x3d
jne 0x14019d59f
cmp ebx, r10d
jne 0x14019d59f
mov eax, r9d
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x204270]
shr dl, 4
and dl, 3
mov eax, r8d
movzx ecx, byte [rax + rcx + 0x204270]
shl cl, 2
xor dl, cl
mov byte [rbp + r13 + 0x5b0], dl
inc r13
test r14d, r14d
jne 0x14019d897
lea rcx, [rbp + 0x4b0]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x14019d5b6
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x4b0]
mov r8, r13
lea rdx, [rbp + 0x5b0]
lea rcx, [rbp + 0x1a0]
call fcn.14019ede0
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x1b0]
call fcn.14019f070
lea rcx, [rbp + 0x3b0]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x14019d602
mov r15d, 0x1000
lea r8, [rbp + 0x3b0]
mov edx, r15d
lea rcx, [rbp + 0x5b0]
cmp rax, r15
jae 0x14019d633
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
lea ebx, [r15 - 1]
jmp 0x14019d648
mov ebx, 0xfff
mov r9d, ebx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x15af], 0
lea rax, [rbp + 0x5b0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x14019d656
lea rax, [rcx + 1]
cmp rax, r15
jae 0x14019d6ad
lea rax, [rcx + 2]
lea r8, [0x1401fdd6c]
mov rdx, r15
cmp rax, r15
ja 0x14019d68a
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
jmp 0x14019d6ad
lfence
mov r9, rbx
sub r9, rcx
sub rdx, rcx
lea rax, [rbp + 0x5b0]
add rcx, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x15af], 0
lea rax, [rbp + 0x5b0]
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14019d6c0
lea rax, [rbp + 0x1b0]
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rax + rdx], 0
jne 0x14019d6d7
lea rax, [rcx + 1]
cmp rax, r15
jae 0x14019d731
lea rax, [rcx + 1]
add rax, rdx
lea r8, [rbp + 0x1b0]
mov rdx, r15
cmp rax, r15
ja 0x14019d70e
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
jmp 0x14019d731
lfence
mov r9, rbx
sub r9, rcx
sub rdx, rcx
lea rax, [rbp + 0x5b0]
add rcx, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x15af], 0
lea rax, [rbp + 0x5b0]
mov rdx, 0xffffffffffffffff
nop
inc rdx
cmp byte [rax + rdx], 0
jne 0x14019d740
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 0x200
lea r8, [rbp + 0x1b0]
lea rcx, [rbp + 0x5b0]
call fcn.14014f940
lea rax, [rbp + 0x1b0]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14019d780
lea rax, [rcx + 1]
cmp rax, 0x200
jae 0x14019d7df
lea rax, [rcx + 3]
lea r8, [0x1401f9fd0]
mov edx, 0x200
cmp rax, rdx
ja 0x14019d7b9
lea rcx, [rbp + 0x1b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
jmp 0x14019d7df
lfence
mov r9d, 0x1ff
sub r9, rcx
sub rdx, rcx
lea rax, [rbp + 0x1b0]
add rcx, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x3af], 0
lea rax, [rbp + 0x1b0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019d7f0
lea rdx, [rbp + 0x1b0]
mov r14, qword [rbp - 0x78]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov qword [r12], rcx
cmp eax, 0xffffffff
jne 0x14019d9f3
xor r13d, r13d
mov rcx, r14
call fcn.14019a700
mov rcx, qword [r14 + 0x800]
cmp rcx, 0xffffffffffffffff
je 0x14019d85c
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [r14 + 0x800], 0xffffffffffffffff
mov rbx, qword [r14 + 0x810]
test rbx, rbx
je 0x14019d88a
mov rcx, qword [rbx + 0x18]
call fcn.14018ba90
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [r14 + 0x810], r13
mov byte [r14 + 0x818], 0
jmp 0x14019e7c2
mov r14, qword [rbp - 0x78]
mov r8d, 2
lea rdx, [0x1401f9fd0]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 6
mov rcx, qword [rsp + 0x70]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d833
mov r15d, 0x1000
jmp 0x14019d9f3
mov r15d, 0x1000
mov r12, qword [rsp + 0x78]
mov byte [rbp + 0x1b0], 0
mov r13d, 0x1ff
mov dword [rbp - 0x58], r13d
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x1b0]
call qword [sym.imp.KERNEL32.dll_GetComputerNameA]
lea rax, [rbp + 0x1b0]
mov qword [rsp + 0x20], rax
lea r9, str.HELO__s_r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14019d945
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 8
mov rcx, qword [rsp + 0x70]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d833
cmp eax, 0x190
jl 0x14019d9f9
mov rcx, r14
call fcn.14019a700
mov rcx, qword [r14 + 0x800]
cmp rcx, 0xffffffffffffffff
je 0x14019d9b1
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [r14 + 0x800], 0xffffffffffffffff
mov rbx, qword [r14 + 0x810]
test rbx, rbx
je 0x14019d9e1
mov rcx, qword [rbx + 0x18]
call fcn.14018ba90
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor eax, eax
mov qword [r14 + 0x810], rax
mov byte [r14 + 0x818], 0
jmp 0x14019e7c2
mov r12, qword [rsp + 0x78]
mov r13d, 0x1ff
mov rax, qword [rbp - 0x38]
mov qword [rsp + 0x20], rax
lea r9, str.MAIL_FROM:___S__r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
mov edx, 0x25
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
mov rbx, rax
test rax, rax
je 0x14019da93
nop dword [rax]
inc rbx
lea rdx, [0x14020d83c]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcspn]
mov rdi, rax
cmp byte [rax + rbx], 0x25
jne 0x14019da78
test rax, rax
je 0x14019da75
movsx ecx, byte [rbx]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov byte [rbx], al
inc rbx
sub rdi, 1
jne 0x14019da61
inc rbx
cmp byte [rbx], 0
je 0x14019da93
mov edx, 0x25
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_strchr]
mov rbx, rax
test rax, rax
jne 0x14019da40
lea rdx, str._COMPUTERNAME_
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
mov rdi, rax
lea rax, [rbp + 0x1b0]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x14019dac0
test rdi, rdi
je 0x14019db35
nop
lea rcx, [rbp + 0x15b0]
sub rcx, rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x14019dae1
sub r8, 0xd
lea rax, [rsi + r8]
cmp rax, rcx
ja 0x14019db35
lfence
lea rbx, [rsi + rdi]
lea rdx, [rdi + 0xe]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov r8, rsi
lea rdx, [rbp + 0x1b0]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
lea rdx, str._COMPUTERNAME_
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_strstr]
mov rdi, rax
test rax, rax
jne 0x14019dad0
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14019db43
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 9
mov rcx, qword [rsp + 0x70]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d833
cmp eax, 0x190
jge 0x14019d98b
mov rax, qword [rbp - 0x60]
mov rbx, rax
movzx eax, word [rax]
xor esi, esi
cmp si, ax
je 0x14019d98b
mov edi, esi
nop dword [rax]
nop dword [rax + rax]
movzx edx, ax
lea rcx, [0x14020c8a0]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
je 0x14019dbe9
nop word [rax + rax]
add rbx, 2
movzx edx, word [rbx]
lea rcx, [0x14020c8a0]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
jne 0x14019dbd0
cmp si, word [rbx]
je 0x14019dce3
lea rdx, [0x14020c8a0]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscspn]
add rax, rax
lea rsi, [rbx + rax]
sar rax, 1
mov ecx, 0xff
cmp rax, rcx
cmova rax, rcx
lea rdi, [rax + rax]
mov r8, rdi
mov rdx, rbx
lea rcx, [rbp + 0x15b0]
call sub.VCRUNTIME140.dll_memcpy
cmp rdi, 0x200
jae 0x14019e83f
xor eax, eax
mov word [rbp + rdi + 0x15b0], ax
lea rax, [rbp + 0x15b0]
mov qword [rsp + 0x20], rax
lea r9, str.RCPT_TO:___S__r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019dc80
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], 0xa
mov rcx, qword [rsp + 0x70]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d833
mov edi, dword [rbp - 0x54]
cmp eax, 0x190
mov eax, 1
cmovl edi, eax
mov dword [rbp - 0x54], edi
mov rbx, rsi
movzx eax, word [rsi]
xor esi, esi
cmp si, ax
jne 0x14019dbb0
test edi, edi
je 0x14019d98b
mov r8d, 6
lea rdx, str.DATA_r_n
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], reloc.WS2_32.dll_inet_addr
mov rcx, qword [rsp + 0x70]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d833
cmp eax, 0x190
jge 0x14019d98b
mov rax, qword [rbp - 0x38]
mov qword [rsp + 0x20], rax
lea r9, str.From:__S_r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rcx, [rbp + 0x5b0]
call fcn.1401af480
lea rdx, str._COMPUTERNAME_
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
mov rdi, rax
lea rax, [rbp + 0x1b0]
mov rsi, 0xffffffffffffffff
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x14019dd90
test rdi, rdi
je 0x14019de05
nop
lea rcx, [rbp + 0x15b0]
sub rcx, rdi
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x14019ddb1
sub r8, 0xd
lea rax, [rsi + r8]
cmp rax, rcx
ja 0x14019de05
lfence
lea rbx, [rsi + rdi]
lea rdx, [rdi + 0xe]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov r8, rsi
lea rdx, [rbp + 0x1b0]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
lea rdx, str._COMPUTERNAME_
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_strstr]
mov rdi, rax
test rax, rax
jne 0x14019dda0
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14019de13
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
mov r8, qword [rbp - 0x60]
mov qword [rsp + 0x20], r8
lea r9, str.To:__S_r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14019de60
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
lea rcx, [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
lea rcx, [rbp + 0xf0]
call qword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
mov r9d, dword [rbp + 0xf0]
cmp eax, 1
jne 0x14019dea8
add r9d, dword [rbp + 0x144]
jmp 0x14019deb4
cmp eax, 2
jne 0x14019debb
add r9d, dword [rbp + 0x198]
mov dword [rbp + 0xf0], r9d
mov eax, 0x88888889
imul r9d
lea r8d, [r9 + rdx]
sar r8d, 5
mov ecx, r8d
shr ecx, 0x1f
add r8d, ecx
imul ecx, r8d, 0x3c
mov eax, r9d
sub eax, ecx
cdq
mov esi, eax
xor esi, edx
sub esi, edx
mov eax, r8d
cdq
mov edi, eax
xor edi, edx
sub edi, edx
movzx ecx, word [rbp + 0xe2]
lea rax, [0x140000000]
mov rbx, qword [rax + rcx*8 + 0x20cb50]
movzx ecx, word [rbp + 0xe4]
mov r11, qword [rax + rcx*8 + 0x20cb10]
mov eax, 0x2b
mov r10d, 0x2d
test r9d, r9d
cmovs r10d, eax
movzx eax, word [rbp + 0xec]
movzx ecx, word [rbp + 0xea]
movzx edx, word [rbp + 0xe8]
movzx r8d, word [rbp + 0xe0]
movzx r9d, word [rbp + 0xe6]
mov dword [rsp + 0x68], esi
mov dword [rsp + 0x60], edi
mov dword [rsp + 0x58], r10d
mov dword [rsp + 0x50], eax
mov dword [rsp + 0x48], ecx
mov dword [rsp + 0x40], edx
mov dword [rsp + 0x38], r8d
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x20], r11
lea r9, str.Date:__s___d__s__d__02d:_02d:_02d__c_02d_02d_r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14019dfa2
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
mov esi, dword [rbp + 0x1828]
mov ebx, esi
and ebx, 8
je 0x14019e00f
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x20], rax
lea r9, str.MIME_Version:_1.0_r_nContent_Type:_multipart_mixed__r_n_tboundary__s__r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019e000
jmp 0x14019e17a
test sil, 4
je 0x14019e04f
lea r8, str.MIME_Version:_1.0_r_nContent_Type:_text_plain__charsetiso_2022_jp_r_nContent_Transfer_Encoding:_7bit_r_n
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019e040
jmp 0x14019e17a
test sil, 1
je 0x14019e13c
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x1402574c8], eax
jg 0x14019e7fb
call qword [sym.imp.KERNEL32.dll_GetACP]
mov edx, eax
call fcn.140198ef0
test rax, rax
je 0x14019e094
lea rcx, [rax + 0x8c]
jmp 0x14019e097
mov rcx, rax
lea rax, [0x1401ef380]
test rcx, rcx
cmovne rax, rcx
mov qword [rsp + 0x20], rax
lea r9, str.MIME_Version:_1.0_r_nContent_Type:_text_plain__charset_ls_r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14019e0d5
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
mov rdx, r15
lea rcx, [rbp + 0x5b0]
test sil, 2
je 0x14019e113
lea r9, str.Content_Transfer_Encoding:_quoted_printable_r_n
mov r8, 0xffffffffffffffff
call fcn.14004ac60
jmp 0x14019e120
lea r8, str.Content_Transfer_Encoding:_8bit_r_n
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14019e130
jmp 0x14019e17a
test sil, 0x20
je 0x14019e189
lea r9, str.MIME_Version:_1.0_r_nContent_Type:_text_plain__charsetutf_8_r_nContent_Transfer_Encoding:_8bit_r_n
mov r8, 0xffffffffffffffff
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call fcn.14004ac60
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019e170
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
lea r8, [rbp + 0x1b0]
mov r9, qword [rbp + 0x18]
movzx edx, word [r9]
test dx, dx
je 0x14019e30e
movzx eax, dx
test eax, 0x7fffff80
jne 0x14019e1c5
cmp r13, 1
jb 0x14019e1c5
mov byte [r8], dl
mov eax, 1
add r8, rax
sub r13, rax
add r9, 2
jmp 0x14019e194
test eax, 0x7ffff800
jne 0x14019e1fa
cmp r13, 2
jb 0x14019e1fa
movzx eax, dx
shr ax, 6
and al, 0x1f
or al, 0xc0
mov byte [r8], al
and dl, 0x3f
or dl, 0x80
mov byte [r8 + 1], dl
mov eax, 2
add r8, rax
sub r13, rax
add r9, rax
jmp 0x14019e194
cmp r13, 3
jb 0x14019e239
movzx eax, dx
shr ax, 0xc
or al, 0xe0
mov byte [r8], al
movzx eax, dx
shr ax, 6
and al, 0x3f
or al, 0x80
mov byte [r8 + 1], al
and dl, 0x3f
or dl, 0x80
mov byte [r8 + 2], dl
mov eax, 3
add r8, rax
sub r13, rax
add r9, 2
jmp 0x14019e194
cmp r13, 4
jb 0x14019e27d
mov byte [r8], 0xf0
movzx eax, dx
shr ax, 0xc
or al, 0x80
mov byte [r8 + 1], al
movzx eax, dx
shr ax, 6
and al, 0x3f
or al, 0x80
mov byte [r8 + 2], al
and dl, 0x3f
or dl, 0x80
mov byte [r8 + 3], dl
mov eax, 4
add r8, rax
sub r13, rax
add r9, 2
jmp 0x14019e194
cmp r13, 5
jb 0x14019e2c3
mov word [r8], 0x80f8
movzx eax, dx
shr ax, 0xc
or al, 0x80
mov byte [r8 + 2], al
movzx eax, dx
shr ax, 6
and al, 0x3f
or al, 0x80
mov byte [r8 + 3], al
and dl, 0x3f
or dl, 0x80
mov byte [r8 + 4], dl
mov eax, 5
add r8, rax
sub r13, rax
add r9, 2
jmp 0x14019e194
cmp r13, 6
jb 0x14019e30e
mov word [r8], 0x80fc
mov byte [r8 + 2], 0x80
movzx eax, dx
shr ax, 0xc
or al, 0x80
mov byte [r8 + 3], al
movzx eax, dx
shr ax, 6
and al, 0x3f
or al, 0x80
mov byte [r8 + 4], al
and dl, 0x3f
or dl, 0x80
mov byte [r8 + 5], dl
mov eax, 6
add r8, rax
sub r13, rax
add r9, 2
jmp 0x14019e194
mov byte [r8], 0
lea r8, str.Subject:__UTF_8_B_
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
xor edx, edx
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.VCRUNTIME140.dll_strchr]
lea rdx, [rbp + 0x5b0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], 0
jne 0x14019e346
mov r9, r15
sub r9, rcx
lea rcx, [rbp + 0x1b0]
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rcx + rdx], 0
jne 0x14019e363
lea rcx, [rbp + 0xd8]
mov qword [rsp + 0x20], rcx
mov r8, rax
lea rcx, [rbp + 0x1b0]
call fcn.14014f940
test al, al
je 0x14019e429
lea rax, [rbp + 0x5b0]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14019e3a0
lea rax, [rcx + 1]
cmp rax, r15
jae 0x14019e3fd
lea rax, [rcx + 7]
lea r8, str.__r_n_r_n
cmp rax, r15
ja 0x14019e3d4
mov rdx, r15
lea rcx, [rbp + 0x5b0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
jmp 0x14019e3fd
lfence
mov r9d, 0xfff
sub r9, rcx
sub r15, rcx
lea rax, [rbp + 0x5b0]
add rcx, rax
mov rdx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov byte [rbp + 0x15af], 0
lea rax, [rbp + 0x5b0]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14019e410
lea rdx, [rbp + 0x5b0]
mov rcx, r14
call fcn.14019aa70
mov r15, qword [rbp + 0x20]
test r15, r15
je 0x14019e66e
test ebx, ebx
je 0x14019e45b
mov r8, 0xffffffffffffffff
inc r8
cmp byte [r15 + r8], 0
jne 0x14019e441
mov rdx, r15
mov rcx, r14
call fcn.14019a170
jmp 0x14019e66e
test sil, 4
je 0x14019e502
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
lea r9d, [r13 - 1]
mov r8, r15
xor edx, edx
mov ecx, 0xc42c
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd rdi, eax
test eax, eax
je 0x14019e671
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
test rax, rax
je 0x14019e671
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rax
lea r9d, [r13 - 1]
mov r8, r15
xor edx, edx
mov ecx, 0xc42c
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], r13b
jne 0x14019e4e0
mov rdx, rbx
mov rcx, r14
call fcn.14019a170
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14019e671
test sil, 1
je 0x14019e5b7
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
lea r9d, [r13 - 1]
mov r8, r15
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd rdi, eax
test eax, eax
je 0x14019e671
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rax
lea r9d, [r13 - 1]
mov r8, r15
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test sil, 2
je 0x14019e58e
mov rdx, rbx
mov rcx, r14
call fcn.14019a360
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14019e671
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], r13b
jne 0x14019e595
mov rdx, rbx
mov rcx, r14
call fcn.14019a170
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14019e671
test sil, 0x20
je 0x14019e60c
xor r8d, r8d
xor edx, edx
mov rcx, r15
call fcn.1401af550
test eax, eax
je 0x14019e66e
movsxd rdi, eax
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
test rax, rax
je 0x14019e66e
mov r8, rdi
mov rdx, rax
mov rcx, r15
call fcn.1401af550
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x14019e600
jmp 0x14019e65a
mov rax, 0xffffffffffffffff
lea rax, [rax + 1]
cmp word [r15 + rax*2], 0
jne 0x14019e613
lea rdi, [rax*2 + 1]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
test rax, rax
je 0x14019e66e
mov r8, rdi
mov rdx, rax
mov rcx, r15
call fcn.1401af1b0
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x14019e650
mov rdx, rbx
mov rcx, r14
call fcn.14019a170
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor r13d, r13d
mov r8d, 5
lea rdx, str._r_n._r_n
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rbp - 0x60], eax
mov dword [rbp - 0x5c], reloc.WS2_32.dll_inet_ntoa
mov rcx, qword [rbp - 0x60]
mov qword [r12], rcx
cmp eax, 0xffffffff
je 0x14019d836
cmp eax, 0x190
jge 0x14019d98b
mov r8d, 6
lea rdx, str.QUIT_r_n
mov rcx, r14
call fcn.14019aa70
mov rcx, r14
call fcn.14019ac60
mov dword [rbp - 0x60], eax
mov dword [rbp - 0x5c], reloc.WS2_32.dll_listen
mov rax, qword [rbp - 0x60]
mov qword [r12], rax
mov rcx, r14
call fcn.14019a700
mov rcx, qword [r14 + 0x800]
cmp rcx, 0xffffffffffffffff
je 0x14019e709
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [r14 + 0x800], 0xffffffffffffffff
mov rbx, qword [r14 + 0x810]
test rbx, rbx
je 0x14019e737
mov rcx, qword [rbx + 0x18]
call fcn.14018ba90
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [r14 + 0x810], r13
mov byte [r14 + 0x818], 0
mov edx, 0x1828
mov rcx, r14
call fcn.140007ea0
mov eax, 1
jmp 0x14019e7d1
xor edi, edi
lea rbx, [r14 + 0x800]
mov rcx, rbx
mov rax, 0xffffffffffffffff
mov qword [rbx], rax
mov rax, qword [rsp + 0x78]
mov dword [rax + 4], edi
mov rcx, r14
call fcn.14019a700
mov rcx, qword [rbx]
cmp rcx, 0xffffffffffffffff
je 0x14019e78f
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [rbx], 0xffffffffffffffff
mov rbx, qword [r14 + 0x810]
test rbx, rbx
je 0x14019e7bd
mov rcx, qword [rbx + 0x18]
call fcn.14018ba90
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [r14 + 0x810], rdi
mov byte [r12], 0
mov edx, 0x1828
mov rcx, r14
call fcn.140007ea0
xor eax, eax
mov rcx, qword [rbp + 0x17b0]
xor rcx, rsp
call fcn.1401c5190
mov rbx, qword [rsp + 0x1918]
add rsp, 0x18c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rcx, [0x1402574c8]
call fcn.1401c5a18
cmp dword [0x1402574c8], 0xffffffff
jne 0x14019e079
lea rcx, [0x140256ae0]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [0x1401e4a30]
call fcn.1401c5870
nop
lea rcx, [0x1402574c8]
call fcn.1401c59b8
jmp 0x14019e079
call fcn.1401c54a4
int3