Function at 0x1800c0880
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3a0]
sub rsp, 0x4a0
mov rax, qword [0x18030b348]
xor rax, rsp
mov qword [rbp + 0x390], rax
mov r15, rcx
mov qword [rbp + 0x180], rcx
xor r13d, r13d
mov dword [rsp + 0x44], r13d
mov byte [0x18030d94d], 1
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
mov qword [rbp + 0x230], r13
mov qword [rbp + 0x238], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x220], r13b
movups xmmword [rbp + 0x240], xmm0
mov ebx, r13d
mov qword [rbp + 0x250], rbx
mov qword [rbp + 0x258], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x240], bl
mov r12d, r13d
mov qword [rbp + 0x260], r13
lea rax, [0x18030afd8]
mov r14, qword [0x18030afe8]
test r14, r14
jne 0x1800c098c
mov rdx, qword [0x18030d9a0]
lea rcx, [rbp + 0x220]
call fcn.1800aef90
lea rdx, [rbp + 0x220]
cmp qword [rbp + 0x238], 0x10
cmovae rdx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x230]
lea rcx, [0x18030afd8]
call fcn.18000a5a0
mov r12, qword [rbp + 0x260]
mov rbx, qword [rbp + 0x250]
mov r14, qword [0x18030afe8]
lea rax, [0x18030afd8]
cmp qword [rbp + 0x230], 0
jne 0x1800c0ac7
xor sil, sil
mov rdi, qword [0x18030d9a0]
mov rbx, rdi
mov r13, qword [0x18030d9a8]
cmp rdi, r13
je 0x1800c0a03
mov rdx, rax
cmp qword [reloc.WS2_32.dll_ntohs], 0x10
cmovae rdx, qword [0x18030afd8]
mov r8, qword [rbx + 0x10]
mov rcx, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x1800c09d7
mov rcx, qword [rbx]
cmp r8, r14
jne 0x1800c09ea
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800c09ea
mov sil, 1
jmp 0x1800c09f3
test sil, sil
jne 0x1800c0b36
add rbx, 0x48
cmp rbx, r13
lea rax, [0x18030afd8]
jne 0x1800c09b3
lea rsi, [0x18030afd8]
lea rax, [rbp + 0x220]
cmp rax, rdi
je 0x1800c0a3a
mov rdx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x1800c0a23
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
lea rcx, [rbp + 0x220]
call fcn.18000a5a0
mov r12, qword [rbp + 0x260]
lea rdx, [rdi + 0x20]
lea rax, [rbp + 0x240]
cmp rax, rdx
je 0x1800c0a6b
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1800c0a58
mov rdx, qword [rdx]
lea rcx, [rbp + 0x240]
call fcn.18000a5a0
mov r12, qword [rbp + 0x260]
test r12, r12
je 0x1800c0a7a
mov rax, qword [r12]
mov rcx, r12
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rdi + 0x40]
mov qword [rbp + 0x260], rcx
test rcx, rcx
je 0x1800c0a90
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
lea rdx, [rbp + 0x220]
cmp qword [rbp + 0x238], 0x10
cmovae rdx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x230]
mov rcx, rsi
call fcn.18000a5a0
mov r12, qword [rbp + 0x260]
xor r13d, r13d
mov rbx, qword [rbp + 0x250]
xorps xmm0, xmm0
movups xmmword [rbp + 0x198], xmm0
mov qword [rbp + 0x1a8], r13
mov qword [rbp + 0x1b0], r13
lea rsi, [rbp + 0x240]
cmp qword [rbp + 0x258], 0x10
cmovae rsi, qword [rbp + 0x240]
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x1800c1b9d
mov ecx, reloc.WLDAP32.dll_Ordinal_22
cmp rbx, 0x10
jae 0x1800c0b8b
mov qword [rbp + 0x1a8], rbx
mov ecx, reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x1b0], rcx
movups xmm0, xmmword [rsi]
movups xmmword [rbp + 0x198], xmm0
jmp 0x1800c0bf0
mov rdx, rbx
lea rcx, [rbp + 0x220]
call fcn.1800aef90
lea rsi, [0x18030afd8]
cmp rsi, rbx
je 0x1800c0b6a
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x1800c0b5f
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rsi
call fcn.18000a5a0
mov r12, qword [rbp + 0x260]
cmp qword [rbp + 0x230], 0
jne 0x1800c0abd
mov rdi, qword [0x18030d9a0]
jmp 0x1800c0a0a
mov qword [rbp + 0x1b0], reloc.WS2_32.dll_ntohs
mov rdi, rbx
or rdi, 0xf
cmp rdi, rax
jbe 0x1800c0ba7
mov rdi, rax
jmp 0x1800c0bae
cmp rdi, rcx
cmovb rdi, rcx
lea rdx, [rdi + 1]
lea rcx, [rbp + 0x198]
call fcn.18000a700
mov qword [rbp + 0x198], rax
mov qword [rbp + 0x1a8], rbx
mov qword [rbp + 0x1b0], rdi
lea r8, [rbx + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbp + 0x1b0]
mov rbx, qword [rbp + 0x1a8]
lea rax, [rbp + 0x198]
cmp rcx, 0x10
cmovae rax, qword [rbp + 0x198]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rbx
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x1b8]
call fcn.18009dd00
mov r14d, 1
lea rcx, [rbp + 0x1b8]
cmp qword [rbp + 0x1d0], 8
cmovae rcx, qword [rbp + 0x1b8]
mov r9d, 0xffffffff
lea r8d, [r14 + 2]
lea rdx, [rbp + 0x1f8]
call fcn.18011f344
mov edx, eax
lea edi, [r14 + 3]
mov esi, 0x1ff
mov r8d, 0x16d
test eax, eax
jne 0x1800c0caf
mov ecx, dword [rbp + 0x208]
test r14b, cl
mov eax, esi
cmovne eax, r8d
mov dword [rsp + 0x34], eax
bt ecx, 0xa
jae 0x1800c0ca1
mov eax, dword [rbp + 0x20c]
cmp eax, 0xa000000c
jne 0x1800c0c93
mov eax, edi
jmp 0x1800c0cd3
cmp eax, 0xa0000003
jne 0x1800c0ca1
mov eax, 0xa
jmp 0x1800c0cd3
movzx eax, cl
and eax, 0x10
or eax, 0x20
shr eax, 4
jmp 0x1800c0cd3
mov dword [rsp + 0x34], 0xffff
sub eax, 2
je 0x1800c0cce
sub eax, 1
je 0x1800c0cce
sub eax, 0x32
je 0x1800c0cce
cmp eax, 0x46
mov eax, r13d
jne 0x1800c0cd3
mov eax, 1
mov dword [rsp + 0x30], edx
lea rcx, [0x18030b0b0]
mov qword [rsp + 0x38], rcx
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
test eax, eax
je 0x1800c0e2e
cmp eax, 1
sete bl
lea rcx, [rbp + 0x1b8]
call fcn.180009570
test bl, bl
je 0x1800c0d85
lea rax, [rbp + 0x198]
cmp qword [rbp + 0x1b0], 0x10
cmovae rax, qword [rbp + 0x198]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x1a8]
mov qword [rsp + 0x38], rax
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x1b8]
call fcn.18009dd00
mov r14d, 9
lea rcx, [rbp + 0x1b8]
cmp qword [rbp + 0x1d0], 8
cmovae rcx, qword [rbp + 0x1b8]
call fcn.18011f1ac
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x1800c1ba3
lea rcx, [rbp + 0x1b8]
call fcn.180009570
lea rax, [rbp + 0x198]
cmp qword [rbp + 0x1b0], 0x10
cmovae rax, qword [rbp + 0x198]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x1a8]
mov qword [rsp + 0x38], rax
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x1b8]
call fcn.18009dd00
or r14d, 2
mov dword [rsp + 0x44], r14d
lea rcx, [rbp + 0x1b8]
cmp qword [rbp + 0x1d0], 8
cmovae rcx, qword [rbp + 0x1b8]
mov r9d, 0xffffffff
mov r8d, 3
lea rdx, [rbp + 0x1f8]
call fcn.18011f344
mov r8d, eax
test eax, eax
jne 0x1800c0e59
mov edx, dword [rbp + 0x208]
test dl, 1
mov ecx, esi
mov eax, 0x16d
cmovne ecx, eax
mov dword [rsp + 0x34], ecx
bt edx, 0xa
jae 0x1800c0e4b
mov eax, dword [rbp + 0x20c]
cmp eax, 0xa000000c
jne 0x1800c0e3d
mov eax, edi
jmp 0x1800c0e7d
mov bl, 1
test edx, edx
jne 0x1800c1b46
jmp 0x1800c0cfc
cmp eax, 0xa0000003
jne 0x1800c0e4b
mov eax, 0xa
jmp 0x1800c0e7d
movzx eax, dl
and eax, 0x10
or eax, 0x20
shr eax, 4
jmp 0x1800c0e7d
mov dword [rsp + 0x34], 0xffff
sub eax, 2
je 0x1800c0e78
sub eax, 1
je 0x1800c0e78
sub eax, 0x32
je 0x1800c0e78
cmp eax, 0x46
mov eax, r13d
jne 0x1800c0e7d
mov eax, 1
mov dword [rsp + 0x30], r8d
lea rcx, [0x18030b0b0]
mov qword [rsp + 0x38], rcx
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
test eax, eax
je 0x1800c0fd4
cmp eax, 1
setne bl
lea rcx, [rbp + 0x1b8]
call fcn.180009570
mov rsi, 0xffffffffffffffff
test bl, bl
je 0x1800c17ec
movdqa xmm0, xmmword [0x180159770]
movdqu xmmword [rbp + 0x1d8], xmm0
mov byte [rbp + 0x1e8], 1
mov rcx, r13
nop dword [rax]
lea eax, [rcx - 0x7a]
xor byte [rbp + rcx + 0x1d8], al
inc rcx
cmp rcx, 0xf
jb 0x1800c0ee0
mov byte [rbp + 0x1e8], 0
mov r8, qword [rbp + 0x1a8]
mov qword [rbp + 0x188], r8
lea rax, [rbp + 0x1d8]
mov rbx, rsi
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800c0f12
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r8
cmp rax, rbx
jb 0x1800c1bbb
lea rdx, [rbp + 0x198]
cmp qword [rbp + 0x1b0], 0x10
cmovae rdx, qword [rbp + 0x198]
mov qword [rsp + 0x30], rdx
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f8], xmm0
mov qword [rbp + 0x208], r13
mov qword [rbp + 0x210], r13
lea rax, [rbx + r8]
mov qword [rsp + 0x48], rax
mov r14d, reloc.WS2_32.dll_ntohs
lea r13, [rbp + 0x1f8]
movabs r9, 0x8000000000000000
cmp rax, r14
jbe 0x1800c1037
mov r14, rax
or r14, 0xf
cmp r14, rcx
jbe 0x1800c0fe4
mov r14, rcx
lea rax, [r9 + 0x27]
mov rcx, rax
call fcn.18011fa9c
test rax, rax
je 0x1800c17e0
lea r13, [rax + 0x27]
and r13, 0xffffffffffffffe0
mov qword [r13 - 8], rax
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x30]
mov r8, qword [rbp + 0x188]
jmp 0x1800c1030
xor bl, bl
test r8d, r8d
jne 0x1800c1b5f
jmp 0x1800c0ea7
cmp r14, 0x16
mov ecx, reloc.WLDAP32.dll_Ordinal_22
cmovb r14, rcx
lea rcx, [r14 + 1]
cmp rcx, 0x1000
jb 0x1800c100d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800c1b78
jmp 0x1800c0fa4
test rcx, rcx
je 0x1800c102d
call fcn.18011fa9c
mov r13, rax
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x30]
mov r8, qword [rbp + 0x188]
jmp 0x1800c1030
xor r13d, r13d
mov qword [rbp + 0x1f8], r13
mov qword [rbp + 0x208], rax
mov qword [rbp + 0x210], r14
mov rcx, r13
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbp + 0x188]
add rcx, r13
mov r8, rbx
lea rdx, [rbp + 0x1d8]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x48]
mov byte [rax + r13], 0
mov ebx, dword [rsp + 0x44]
or ebx, 0x10
lea rax, [rbp + 0x1f8]
cmp qword [rbp + 0x210], 0x10
cmovae rax, qword [rbp + 0x1f8]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x208]
mov qword [rsp + 0x38], rax
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x1d8]
call fcn.18009dd00
or ebx, 0x20
mov dword [rsp + 0x44], ebx
lea rcx, [rbp + 0x1d8]
cmp qword [rbp + 0x1f0], 8
cmovae rcx, qword [rbp + 0x1d8]
mov r9d, 0xffffffff
mov r8d, 3
lea rdx, [rbp + 0x370]
call fcn.18011f344
mov r8d, eax
test eax, eax
jne 0x1800c1138
mov edx, dword [rbp + 0x380]
test dl, 1
mov eax, 0x1ff
mov ecx, 0x16d
cmovne eax, ecx
mov dword [rsp + 0x34], eax
bt edx, 0xa
jae 0x1800c112a
mov eax, dword [rbp + 0x384]
cmp eax, 0xa000000c
je 0x1800c115d
cmp eax, 0xa0000003
jne 0x1800c112a
lea edi, [r8 + 0xa]
jmp 0x1800c115d
movzx edi, dl
and edi, 0x10
or edi, 0x20
shr edi, 4
jmp 0x1800c115d
mov dword [rsp + 0x34], 0xffff
sub eax, 2
je 0x1800c1158
sub eax, 1
je 0x1800c1158
sub eax, 0x32
je 0x1800c1158
cmp eax, 0x46
je 0x1800c1158
xor edi, edi
jmp 0x1800c115d
mov edi, 1
mov dword [rsp + 0x30], r8d
lea rax, [0x18030b0b0]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
test edi, edi
je 0x1800c13eb
cmp edi, 1
sete bl
lea rcx, [rbp + 0x1d8]
call fcn.180009570
test bl, bl
je 0x1800c1400
movdqa xmm0, xmmword [0x180159930]
movdqa xmmword [rbp + 0x270], xmm0
movdqa xmm1, xmmword [0x1801598c0]
movdqa xmmword [rbp + 0x280], xmm1
movdqa xmm0, xmmword [0x180159a00]
movdqa xmmword [rbp + 0x290], xmm0
movdqa xmm1, xmmword [0x180159910]
movdqa xmmword [rbp + 0x2a0], xmm1
movdqa xmm0, xmmword [0x180159950]
movdqa xmmword [rbp + 0x2b0], xmm0
movdqa xmm1, xmmword [0x1801598f0]
movdqa xmmword [rbp + 0x2c0], xmm1
movdqa xmm0, xmmword [0x1801598d0]
movdqa xmmword [rbp + 0x2d0], xmm0
movdqa xmm1, xmmword [0x1801597c0]
movdqa xmmword [rbp + 0x2e0], xmm1
movdqa xmm0, xmmword [0x1801598b0]
movdqa xmmword [rbp + 0x2f0], xmm0
movdqa xmm1, xmmword [0x180159830]
movdqa xmmword [rbp + 0x300], xmm1
movdqa xmm0, xmmword [0x180159890]
movdqa xmmword [rbp + 0x310], xmm0
movdqa xmm1, xmmword [0x1801597b0]
movdqa xmmword [rbp + 0x320], xmm1
movdqa xmm0, xmmword [0x1801597a0]
movdqa xmmword [rbp + 0x330], xmm0
movdqa xmm1, xmmword [0x180159870]
movdqa xmmword [rbp + 0x340], xmm1
movdqa xmm0, xmmword [0x1801598a0]
movdqa xmmword [rbp + 0x350], xmm0
mov dword [rbp + 0x360], 0x10141451
mov dword [rbp + 0x364], 0x5308151f
mov dword [rbp + 0x368], 0xa6e10a12
mov word [rbp + 0x36c], 0x100
xor edx, edx
mov ecx, edx
nop word [rax + rax]
lea eax, [rcx - 0x7a]
xor byte [rbp + rcx + 0x270], al
inc rcx
cmp rcx, 0xfc
jb 0x1800c12c0
mov byte [rbp + 0x36d], dl
xorps xmm0, xmm0
movups xmmword [rbp + 0x1d8], xmm0
mov qword [rbp + 0x1e8], rdx
mov qword [rbp + 0x1f0], rdx
lea rax, [rbp + 0x270]
mov r8, rsi
nop
inc r8
cmp byte [rax + r8], dl
jne 0x1800c1300
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x1d8]
call fcn.18005b910
nop
mov dword [rsp + 0x20], 1
mov r9d, 0x40
lea r8d, [r9 - 0x3e]
lea rdx, [rbp + 0x1f8]
lea rcx, [rbp + 0x70]
call fcn.1800abff0
nop
lea rdx, [rbp + 0x1d8]
cmp qword [rbp + 0x1f0], 0x10
cmovae rdx, qword [rbp + 0x1d8]
mov r8, qword [rbp + 0x1e8]
lea rcx, [rbp + 0x70]
call fcn.18009fd80
lea rdx, [0x18005e540]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rcx, [rbp + 0x78]
call fcn.1800bd880
test rax, rax
jne 0x1800c13a2
mov rax, qword [rbp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x70]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
lea rcx, [rbp + 0x70]
call fcn.1800b18f0
nop
mov rdx, qword [rbp + 0x1f0]
cmp rdx, 0x10
jb 0x1800c1400
inc rdx
mov rcx, qword [rbp + 0x1d8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800c13fb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800c13fb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov bl, 1
test r8d, r8d
jne 0x1800c1b7e
jmp 0x1800c1187
call fcn.18011f9bc
mov dword [rbp + 0x188], 0xe0e4e4da
mov dword [rbp + 0x18c], 0xa3f8e5ef
mov dword [rbp + 0x190], 0xf1fae2
mov byte [rbp + 0x194], 1
xor ecx, ecx
nop word [rax + rax]
lea eax, [rcx - 0x7a]
xor byte [rbp + rcx + 0x188], al
inc rcx
cmp rcx, 0xb
jb 0x1800c1430
mov byte [rbp + 0x194], 0
mov rdx, qword [rbp + 0x1a8]
mov qword [rsp + 0x48], rdx
lea rax, [rbp + 0x188]
mov rbx, rsi
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800c1460
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, rdx
cmp rax, rbx
jb 0x1800c1bc1
lea rax, [rbp + 0x198]
cmp qword [rbp + 0x1b0], 0x10
cmovae rax, qword [rbp + 0x198]
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1c8], xmm1
lea r13, [rdx + rbx]
mov edi, reloc.WS2_32.dll_ntohs
lea r14, [rbp + 0x1b8]
cmp r13, rdi
jbe 0x1800c155e
mov rdi, r13
or rdi, 0xf
cmp rdi, rcx
jbe 0x1800c1512
mov rdi, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.18011fa9c
test rax, rax
je 0x1800c1785
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x30]
jmp 0x1800c1557
cmp rdi, 0x16
mov ecx, reloc.WLDAP32.dll_Ordinal_22
cmovb rdi, rcx
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x1800c153b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800c1b97
jmp 0x1800c14e9
test rcx, rcx
je 0x1800c1554
call fcn.18011fa9c
mov r14, rax
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x30]
jmp 0x1800c1557
xor r14d, r14d
mov qword [rbp + 0x1b8], r14
mov qword [rbp + 0x1c8], r13
mov qword [rbp + 0x1d0], rdi
mov r8, rdx
mov rdx, rax
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0x48]
add rcx, r14
mov r8, rbx
lea rdx, [rbp + 0x188]
call sub.VCRUNTIME140.dll_memcpy
mov byte [r14 + r13], 0
mov edi, dword [rsp + 0x44]
or edi, 0x40
lea rbx, [rbp + 0x1b8]
cmp qword [rbp + 0x1d0], 0x10
cmovae rbx, qword [rbp + 0x1b8]
lea rax, [0x180000000]
lea rax, [rax + 0x157330]
mov qword [rsp + 0x60], rax
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
bts edi, 7
mov dword [rsp + 0x44], edi
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x60]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x60], rdi
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x5c], edx
lea rcx, [rsp + 0x68]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov qword [rsp + 0x68], rax
mov byte [rbp - 0x1c], 0
mov byte [rbp - 0x27], 0
lea rcx, [rsp + 0x68]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void____ptr64]
xor r13d, r13d
mov qword [rbp - 0x18], r13
mov rax, qword [0x18030e578]
mov qword [rbp - 0x24], rax
mov qword [rbp - 0x30], r13
lea r9d, [r13 + 0x40]
lea r8d, [r13 + 2]
mov rdx, rbx
lea rcx, [rsp + 0x68]
call fcn.1800c5f20
test rax, rax
jne 0x1800c1692
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x60]
add rcx, rax
xor r8d, r8d
lea edx, [r13 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x60], rdi
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x5c], edx
mov rdx, r15
cmp qword [r15 + 0x18], 0x10
jb 0x1800c16c0
mov rdx, qword [r15]
mov r8, qword [r15 + 0x10]
lea rcx, [rsp + 0x60]
call fcn.18009fd80
lea rdx, [0x18005e540]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rcx, [rsp + 0x68]
call fcn.1800bd880
test rax, rax
jne 0x1800c170c
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x60]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x60], rdi
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x5c], edx
lea rcx, [rsp + 0x68]
call fcn.1800adae0
lea rcx, [rsp + 0x70]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
nop
mov rdx, qword [rbp + 0x1d0]
cmp rdx, 0x10
jb 0x1800c1791
inc rdx
mov rcx, qword [rbp + 0x1b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800c178c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800c178c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18011f9bc
movdqa xmm0, xmmword [0x1801340d0]
movdqu xmmword [rbp + 0x1c8], xmm0
mov byte [rbp + 0x1b8], 0
mov rdx, qword [rbp + 0x210]
cmp rdx, 0x10
jb 0x1800c17ec
inc rdx
mov rcx, qword [rbp + 0x1f8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800c17e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800c17e7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18011f9bc
mov qword [rsp + 0x50], r12
test r12, r12
je 0x1800c1a23
mov ecx, dword [0x18030e868]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x18030e0d8], ecx
jg 0x1800c1aef
mov rbx, qword [0x18030d970]
test rbx, rbx
jne 0x1800c1849
mov rax, qword [rsp + 0x50]
mov rbx, qword [rax]
test rbx, rbx
je 0x1800c18cf
mov rbx, qword [rbx + 0x38]
mov qword [0x18030d970], rbx
lea rax, [0x18030e0b8]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x3c8]
movabs rcx, 0x1d0164d8541d
mov qword [rbp + 0x1e0], rcx
mov qword [rbp + 0x1e8], rax
mov rdi, qword [rax]
xor rdi, rcx
mov qword [rbp + 0x1d8], rdi
mov qword [rax], r13
mov ecx, r13d
lea r14, [0x1800ab400]
mov rax, qword [0x18030da70]
test rax, rax
je 0x1800c19bd
mov rdx, r13
lea r8, [0x180000000]
nop dword [rax + rax]
cmp rax, r14
je 0x1800c19b0
inc ecx
mov edx, ecx
mov rax, qword [r8 + rcx*8 + 0x30da70]
test rax, rax
jne 0x1800c18b0
jmp 0x1800c19bd
mov rdx, qword [rbp + 0x1b0]
cmp rdx, 0x10
jb 0x1800c1910
inc rdx
mov rcx, qword [rbp + 0x198]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800c190b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800c1ae1
call fcn.18011f9bc
mov qword [rbp + 0x1a8], r13
mov qword [rbp + 0x1b0], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x198], 0
lea rcx, [rbp + 0x220]
call fcn.1800ae3a0
nop
mov rdx, qword [r15 + 0x18]
cmp rdx, 0x10
jb 0x1800c1970
inc rdx
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x1800c196b
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800c1ae8
mov rcx, r8
call fcn.18011f9bc
mov byte [r15], 0
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov qword [r15 + 0x10], r13
mov rcx, qword [rbp + 0x390]
xor rcx, rsp
call fcn.18011fa50
lea r11, [rsp + 0x4a0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rax, qword [r8 + rdx*8 + 0x30dd90]
test rax, rax
jne 0x1800c19ed
mov rcx, r14
call fcn.1800c31e0
mov rcx, qword [0x18030da68]
lea rdx, [0x180000000]
mov qword [rdx + rcx*8 + 0x30da70], r14
mov qword [rdx + rcx*8 + 0x30dd90], rax
inc rcx
mov qword [0x18030da68], rcx
lea r9, [rsp + 0x30]
lea r8, [rbp + 0x198]
lea rdx, [rsp + 0x50]
mov rcx, rbx
call rax
nop
movabs rcx, 0x1d0164d8541d
xor rdi, rcx
lea rcx, [rbp + 0x3c8]
mov qword [rcx], rdi
mov byte [0x18030e0b0], al
jmp 0x1800c1a2a
movzx eax, byte [0x18030e0b0]
test al, al
je 0x1800c1a3f
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x40]
mov byte [0x18030d94e], 1
lea rax, [rbp + 0x198]
cmp qword [rbp + 0x1b0], 0x10
cmovae rax, qword [rbp + 0x198]
mov qword [rsp + 0x30], rax
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x1800c1a60
mov qword [rsp + 0x38], rsi
xor r8d, r8d
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x1b8]
call fcn.18009dd00
nop
lea rcx, [rbp + 0x1b8]
call fcn.1800c6ed0
nop
lea rcx, [rbp + 0x1b8]
call fcn.180009570
nop
mov rdx, qword [rbp + 0x1b0]
cmp rdx, 0x10
jb 0x1800c1910
inc rdx
mov rcx, qword [rbp + 0x198]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800c190b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800c190b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
lea rcx, [0x18030e0d8]
call fcn.1801200c0
cmp dword [0x18030e0d8], 0xffffffff
jne 0x1800c1821
xorps xmm0, xmm0
movups xmmword [0x18030e0b8], xmm0
movdqa xmm1, xmmword [0x1801340d0]
movdqu xmmword [0x18030e0c8], xmm1
mov byte [0x18030e0b8], 0
lea rcx, [0x180125430]
call fcn.180120000
lea rcx, [0x18030e0d8]
call fcn.180120054
jmp 0x1800c1821
lea r8, [rbp + 0x1b8]
lea rdx, [rsp + 0x30]
lea rcx, str.exists
call fcn.1800bd0d0
nop
lea r8, [rbp + 0x1b8]
lea rdx, [rsp + 0x30]
lea rcx, str.exists
call fcn.1800bd0d0
nop
call fcn.1800022b0
nop
lea r8, [rbp + 0x1d8]
lea rdx, [rsp + 0x30]
lea rcx, str.exists
call fcn.1800bd0d0
nop
call fcn.1800022b0
nop
call fcn.180002350
nop
shr rdx, 0x20
lea r8, [rbp + 0x1b8]
lea rcx, str.create_directory
call fcn.1800bd190
nop
call fcn.180002350
nop
call fcn.180002350
int3