Function at 0x14000e160
Capabilities:
Create thread
Encode data using xor
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0x90
mov rax, qword [0x140087118]
xor rax, rsp
mov qword [rbp + 0x47], rax
xor edi, edi
mov qword [rbp + 0x27], rdi
movdqa xmm0, xmmword [0x14006abc0]
movdqu xmmword [rbp + 0x37], xmm0
mov byte [rbp + 0x27], dil
lea rcx, [0x140087870]
call fcn.140008be0
cmp byte [0x140087610], dil
je 0x14000e571
lea rcx, [0x140087870]
call fcn.140005290
cmp byte [0x140087610], dil
je 0x14000e571
lea edx, [rdi + 6]
lea rcx, str.Welcome_to_EG__n_n
call fcn.1400104d0
lea edx, [rdi + 6]
lea rcx, str.Login_Key:__n
call fcn.1400104d0
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [0x140087870]
mov rcx, rbx
call fcn.14000d470
lea rcx, [0x140087870]
call fcn.140005900
cmp al, 1
jne 0x14000e571
cmp byte [0x140087610], dil
je 0x14000e571
lea rbx, [0x140087618]
mov rcx, rbx
cmp qword [0x140087630], 0x10
cmovae rcx, qword [0x140087618]
mov r8, qword [0x140087628]
cmp r8, 2
jne 0x14000e571
lea rdx, [0x14006af28]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14000e571
mov edx, dword [0x14008760c]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x14006aee4]
call fcn.14000d210
mov dword [rbp - 9], 0x70757975
mov dword [rbp - 5], 0x7172757c
mov word [rbp - 1], 0x100
mov ecx, edi
nop word [rax + rax]
lea eax, [rcx + 0x40]
xor byte [rbp + rcx - 9], al
inc rcx
cmp rcx, 8
jb 0x14000e2c0
mov byte [rbp], 0
mov qword [rbp + 0x17], 8
mov qword [rbp + 0x1f], reloc.WS2_32.dll_ntohs
mov rax, qword [rbp - 9]
mov qword [rbp + 7], rax
mov byte [rbp + 0xf], 0
lea rdx, [rbp + 7]
lea rcx, [0x140087910]
call fcn.140004eb0
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0x10
jb 0x14000e33e
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000e339
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000e339
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400668bc
mov dword [rbp - 9], 0x26302e03
mov word [rbp - 5], 0x100
mov rcx, rdi
nop
lea eax, [rcx + 0x40]
xor byte [rbp + rcx - 9], al
inc rcx
cmp rcx, 4
jb 0x14000e350
mov byte [rbp - 4], 0
lea rdx, [rbp + 7]
lea rcx, [0x140087870]
call fcn.1400096b0
lea rdx, [rbp - 9]
mov rcx, rax
call fcn.140003840
movzx esi, al
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0x10
jb 0x14000e3c1
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000e3bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000e3bc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400668bc
test sil, sil
jne 0x14000e571
cmp byte [0x140087610], sil
je 0x14000e571
mov dword [rbp - 9], 0x26302e03
mov word [rbp - 5], 0x100
mov rcx, rdi
nop word [rax + rax]
lea eax, [rcx + 0x40]
xor byte [rbp + rcx - 9], al
inc rcx
cmp rcx, 4
jb 0x14000e3f0
mov byte [rbp - 4], 0
lea rcx, [rbp - 9]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x14000e410
cmp qword [0x140087630], 0x10
cmovae rbx, qword [0x140087618]
mov r8, qword [0x140087628]
cmp r8, rax
jne 0x14000e571
lea rdx, [rbp - 9]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14000e571
mov qword [rbp + 0x17], send
mov qword [rbp + 0x1f], reloc.WS2_32.dll_ntohs
movsd xmm0, qword [str.Message_Here]
movsd qword [rbp + 7], xmm0
mov eax, dword [0x14006af38]
mov dword [rbp + 0xf], eax
mov byte [rbp + 0x13], 0
lea rdx, [rbp + 7]
lea rcx, [0x140087870]
call fcn.14000b1d0
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
xor r9d, r9d
lea r8, [0x14000deb0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [rbp - 9], 0x262c2e04
mov word [rbp - 5], 0x100
nop dword [rax]
nop word [rax + rax]
lea eax, [rdi + 0x40]
xor byte [rbp + rdi - 9], al
inc rdi
cmp rdi, 4
jb 0x14000e4c0
mov byte [rbp - 4], 0
mov edx, 2
lea rcx, [rbp - 9]
call fcn.1400104d0
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rbp + 0x27]
mov rcx, rbx
call fcn.14000d470
nop
mov rdx, qword [rbp + 0x3f]
cmp rdx, 0x10
jb 0x14000e54a
inc rdx
mov rcx, qword [rbp + 0x27]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000e545
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000e545
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400668bc
xor eax, eax
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.140066950
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
mov ecx, Ordinal_46
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3