Function at 0x140022080
Capabilities:
Authenticate hmac
Delete file
Encode data using xor
Execute command
Log keystrokes via polling
Parse pe header
Set console window title
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2e8]
sub rsp, 0x3c0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1400d7b80]
xor rax, rsp
mov qword [rbp + 0x2a0], rax
xor ebx, ebx
mov dword [rbp + 0x70], ebx
mov ecx, 0xfffffff6
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rdi, rax
lea rdx, [rbp + 0x100]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
mov edx, dword [rbp + 0x100]
and edx, 0x80
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleMode]
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rdi, rax
mov dword [rbp + 0x80], 0x60
lea rdx, [rbp + 0x80]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfoEx]
lea r13d, [rbx + 0x64]
mov dword [rbp + 0x84], 0x140064
mov dword [rbp + 0x8e], ebx
mov dword [rbp + 0x92], 0x140064
mov dword [rbp + 0x96], 0x140064
lea rdx, [rbp + 0x80]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleScreenBufferInfoEx]
lea rdx, [rbp + 0x70]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
mov edx, dword [rbp + 0x70]
and edx, 0xfffffffd
mov dword [rbp + 0x70], edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleMode]
lea rcx, str.Store:_https:__srcs.sellauth.com__
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
lea rdx, str.____Product:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
mov rcx, rax
lea rdx, str.e_32m
call fcn.140019680
mov rcx, rax
lea rdx, str.MW3_AIO
call fcn.140019680
mov rcx, rax
lea rdx, str.e_0m
call fcn.140019680
lea rdx, [0x14001c2b0]
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 rdx, str.____Status:
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
mov rcx, rax
lea rdx, str.e_32m
call fcn.140019680
mov rcx, rax
lea rdx, str.Undetected
call fcn.140019680
mov rcx, rax
lea rdx, str.e_0m
call fcn.140019680
lea rdx, [0x14001c2b0]
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, [0x1400d83e0]
call fcn.140004750
lea rcx, [0x1400d83e0]
call fcn.140006cc0
test al, al
je 0x140022242
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
mov rsi, 0xffffffffffffffff
lea r12d, [rsi + 4]
lea r14d, [rsi + 5]
lea r15d, [rsi + 8]
test eax, eax
je 0x140022480
xor edx, edx
mov cl, 0x44
call fcn.14001a040
mov byte [rbp + 0x50], al
lea edx, [rsi + 2]
mov cl, 0x45
call fcn.14001a040
mov byte [rbp + 0x51], al
lea edx, [rsi + 3]
mov cl, 0x42
call fcn.14001a040
mov byte [rbp + 0x52], al
mov edx, r12d
mov cl, 0x55
call fcn.14001a040
mov byte [rbp + 0x53], al
mov edx, r14d
mov cl, 0x47
call fcn.14001a040
mov byte [rbp + 0x54], al
lea edx, [rsi + 6]
mov cl, 0x47
call fcn.14001a040
mov byte [rbp + 0x55], al
lea edx, [rsi + 7]
mov cl, 0x45
call fcn.14001a040
mov byte [rbp + 0x56], al
mov edx, r15d
mov cl, 0x52
call fcn.14001a040
mov byte [rbp + 0x57], al
lea edx, [rsi + 9]
mov cl, reloc.WLDAP32.dll_Ordinal_32
call fcn.14001a040
mov byte [rbp + 0x58], al
lea edx, [rsi + 0xa]
mov cl, 0x50
call fcn.14001a040
mov byte [rbp + 0x59], al
lea edx, [rsi + 0xb]
mov cl, 0x52
call fcn.14001a040
mov byte [rbp + 0x5a], al
lea edx, [rsi + 0xc]
mov cl, 0x45
call fcn.14001a040
mov byte [rbp + 0x5b], al
lea edx, [rsi + 0xd]
mov cl, 0x53
call fcn.14001a040
mov byte [rbp + 0x5c], al
lea edx, [rsi + 0xe]
mov cl, 0x45
call fcn.14001a040
mov byte [rbp + 0x5d], al
lea edx, [rsi + 0xf]
mov cl, Ordinal_79
call fcn.14001a040
mov byte [rbp + 0x5e], al
lea edx, [rsi + 0x10]
mov cl, 0x54
call fcn.14001a040
mov byte [rbp + 0x5f], al
lea edx, [rsi + 0x11]
mov cl, reloc.WLDAP32.dll_Ordinal_32
call fcn.14001a040
mov byte [rbp + 0x60], al
lea edx, [rsi + 0x12]
mov cl, 0x54
call fcn.14001a040
mov byte [rbp + 0x61], al
lea edx, [rsi + 0x13]
mov cl, 0x48
call fcn.14001a040
mov byte [rbp + 0x62], al
lea edx, [rsi + 0x14]
mov cl, 0x45
call fcn.14001a040
mov byte [rbp + 0x63], al
lea edx, [rsi + 0x15]
mov cl, 0x59
call fcn.14001a040
mov byte [rbp + 0x64], al
lea edx, [rsi + 0x16]
mov cl, reloc.WLDAP32.dll_Ordinal_32
call fcn.14001a040
mov byte [rbp + 0x65], al
lea edx, [rsi + 0x17]
mov cl, 0x47
call fcn.14001a040
mov byte [rbp + 0x66], al
lea edx, [rsi + 0x18]
mov cl, reloc.WLDAP32.dll_Ordinal_79
call fcn.14001a040
mov byte [rbp + 0x67], al
lea edx, [rsi + 0x19]
mov cl, 0x54
call fcn.14001a040
mov byte [rbp + 0x68], al
lea edx, [rsi + 0x1a]
mov cl, reloc.WLDAP32.dll_Ordinal_32
call fcn.14001a040
mov byte [rbp + 0x69], al
lea edx, [rsi + 0x1b]
mov cl, 0x42
call fcn.14001a040
mov byte [rbp + 0x6a], al
lea edx, [rsi + 0x1c]
mov cl, 0x53
call fcn.14001a040
mov byte [rbp + 0x6b], al
lea edx, [rsi + 0x1d]
mov cl, reloc.WLDAP32.dll_Ordinal_79
call fcn.14001a040
mov byte [rbp + 0x6c], al
lea edx, [rsi + 0x1e]
mov cl, 0x44
call fcn.14001a040
mov byte [rbp + 0x6d], al
xor eax, eax
mov byte [rbp + 0x6e], al
mov edx, ebx
nop
movsxd rax, edx
lea rcx, [rbp + 0x50]
add rcx, rax
lea eax, [rdx + 0x13]
xor byte [rcx], al
inc edx
cmp edx, 0x1e
jb 0x1400223f0
mov byte [rbp + 0x6e], bl
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], rbx
mov qword [rbp + 0xf8], rbx
lea rax, [rbp + 0x50]
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], bl
jne 0x140022430
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0xe0]
call fcn.1400183d0
lea rdx, [rbp + 0xe0]
lea rcx, [0x1400d83e0]
call fcn.140007be0
lea rcx, [0x1400d83e0]
call fcn.1400065e0
call fcn.14001ed60
call fcn.14001ed60
mov ecx, r13d
call qword [sym.imp.KERNEL32.dll_Sleep]
call fcn.14001ddb0
xorps xmm0, xmm0
movups xmmword [rbp + 0x108], xmm0
mov qword [rbp + 0x118], rbx
mov qword [rbp + 0x120], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x108], bl
xor edx, edx
mov cl, 0x43
call fcn.14001a040
mov byte [rbp - 0x77], al
mov byte [rbp + 0x240], al
mov edx, 1
mov cl, 0x3a
call fcn.14001a040
mov byte [rbp - 0x76], al
mov byte [rbp + 0x241], al
mov edx, 2
mov cl, 0x5c
call fcn.14001a040
mov byte [rbp - 0x7a], al
mov byte [rbp + 0x242], al
mov edx, r12d
mov cl, 0x55
call fcn.14001a040
mov byte [rbp - 0x78], al
mov byte [rbp + 0x243], al
mov edx, r14d
mov cl, reloc.WS2_32.dll_WSAStartup
call fcn.14001a040
mov byte [rbp - 0x79], al
mov byte [rbp + 0x244], al
mov edx, 5
mov cl, 0x65
call fcn.14001a040
mov byte [rsp + 0x30], al
mov byte [rbp + 0x245], al
mov edx, 6
mov cl, WSAStartup
call fcn.14001a040
mov byte [rsp + 0x31], al
mov byte [rbp + 0x246], al
mov edx, r15d
mov cl, reloc.WS2_32.dll_WSAStartup
call fcn.14001a040
mov byte [rsp + 0x32], al
mov byte [rbp + 0x247], al
mov edx, 8
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x33], al
mov byte [rbp + 0x248], al
mov edx, 9
mov cl, 0x44
call fcn.14001a040
mov byte [rsp + 0x34], al
mov byte [rbp + 0x249], al
mov edx, 0xa
mov cl, 0x65
call fcn.14001a040
mov byte [rsp + 0x35], al
mov byte [rbp + 0x24a], al
mov edx, ntohs
mov cl, 0x66
call fcn.14001a040
mov byte [rsp + 0x36], al
mov byte [rbp + 0x24b], al
mov edx, ntohs
mov cl, 0x61
call fcn.14001a040
mov byte [rsp + 0x37], al
mov byte [rbp + 0x24c], al
mov edx, reloc.WS2_32.dll_listen
mov cl, 0x75
call fcn.14001a040
mov byte [rsp + 0x38], al
mov byte [rbp + 0x24d], al
mov edx, reloc.WS2_32.dll_ntohl
mov cl, 0x6c
call fcn.14001a040
mov byte [rsp + 0x39], al
mov byte [rbp + 0x24e], al
mov edx, reloc.WS2_32.dll_ntohs
mov cl, reloc.WS2_32.dll_WSACleanup
call fcn.14001a040
mov byte [rsp + 0x3a], al
mov byte [rbp + 0x24f], al
mov edx, reloc.WS2_32.dll_recv
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x3b], al
mov byte [rbp + 0x250], al
mov edx, reloc.WS2_32.dll_recvfrom
mov cl, 0x41
call fcn.14001a040
mov byte [rsp + 0x3c], al
mov byte [rbp + 0x251], al
mov edx, reloc.WS2_32.dll_select
mov cl, reloc.WS2_32.dll_WSASetLastError
call fcn.14001a040
mov byte [rsp + 0x3d], al
mov byte [rbp + 0x252], al
mov edx, reloc.WS2_32.dll_send
mov cl, reloc.WS2_32.dll_WSASetLastError
call fcn.14001a040
mov byte [rsp + 0x3e], al
mov byte [rbp + 0x253], al
mov edx, reloc.WS2_32.dll_sendto
mov cl, 0x44
call fcn.14001a040
mov byte [rsp + 0x3f], al
mov byte [rbp + 0x254], al
mov edx, reloc.WS2_32.dll_setsockopt
mov cl, 0x61
call fcn.14001a040
mov byte [rsp + 0x40], al
mov byte [rbp + 0x255], al
mov edx, reloc.WLDAP32.dll_Ordinal_22
mov cl, reloc.WS2_32.dll_WSACleanup
call fcn.14001a040
mov byte [rsp + 0x41], al
mov byte [rbp + 0x256], al
mov edx, reloc.WS2_32.dll_socket
mov cl, 0x61
call fcn.14001a040
mov byte [rsp + 0x42], al
mov byte [rbp + 0x257], al
mov edx, Ordinal_26
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x43], al
mov byte [rbp + 0x258], al
mov edx, Ordinal_26
mov cl, 0x52
call fcn.14001a040
mov byte [rsp + 0x44], al
mov byte [rbp + 0x259], al
mov edx, reloc.WLDAP32.dll_Ordinal_26
mov cl, reloc.WS2_32.dll_WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x45], al
mov byte [rbp + 0x25a], al
mov edx, reloc.WLDAP32.dll_Ordinal_27
mov cl, 0x61
call fcn.14001a040
mov byte [rsp + 0x46], al
mov byte [rbp + 0x25b], al
mov edx, Ordinal_30
mov cl, 0x6d
call fcn.14001a040
mov byte [rsp + 0x47], al
mov byte [rbp + 0x25c], al
mov edx, Ordinal_30
mov cl, 0x69
call fcn.14001a040
mov byte [rsp + 0x48], al
mov byte [rbp + 0x25d], al
mov edx, reloc.WLDAP32.dll_Ordinal_30
mov cl, WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x49], al
mov byte [rbp + 0x25e], al
mov edx, Ordinal_33
mov cl, 0x67
call fcn.14001a040
mov byte [rsp + 0x4a], al
mov byte [rbp + 0x25f], al
mov edx, reloc.WLDAP32.dll_Ordinal_32
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x4b], al
mov byte [rbp + 0x260], al
mov edx, reloc.WLDAP32.dll_Ordinal_33
mov cl, 0x4d
call fcn.14001a040
mov byte [rsp + 0x4c], al
mov byte [rbp + 0x261], al
mov edx, Ordinal_35
mov cl, 0x69
call fcn.14001a040
mov byte [rsp + 0x4d], al
mov byte [rbp + 0x262], al
mov edx, reloc.WLDAP32.dll_Ordinal_35
mov cl, 0x63
call fcn.14001a040
mov byte [rsp + 0x4e], al
mov byte [rbp + 0x263], al
mov edx, 0x24
mov cl, WSAStartup
call fcn.14001a040
mov byte [rsp + 0x4f], al
mov byte [rbp + 0x264], al
mov edx, Ordinal_41
mov cl, reloc.WS2_32.dll_WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x50], al
mov byte [rbp + 0x265], al
mov edx, Ordinal_41
mov cl, reloc.WS2_32.dll_WSAStartup
call fcn.14001a040
mov byte [rsp + 0x51], al
mov byte [rbp + 0x266], al
mov edx, Ordinal_41
mov cl, reloc.WS2_32.dll_WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x52], al
mov byte [rbp + 0x267], al
mov edx, Ordinal_41
mov cl, 0x66
call fcn.14001a040
mov byte [rsp + 0x53], al
mov byte [rbp + 0x268], al
mov edx, reloc.WLDAP32.dll_Ordinal_41
mov cl, reloc.WS2_32.dll_WSACleanup
call fcn.14001a040
mov byte [rsp + 0x54], al
mov byte [rbp + 0x269], al
mov edx, Ordinal_46
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x55], al
mov byte [rbp + 0x26a], al
mov edx, Ordinal_46
mov cl, 0x57
call fcn.14001a040
mov byte [rsp + 0x56], al
mov byte [rbp + 0x26b], al
mov edx, Ordinal_46
mov cl, 0x69
call fcn.14001a040
mov byte [rsp + 0x57], al
mov byte [rbp + 0x26c], al
mov edx, reloc.WLDAP32.dll_Ordinal_45
mov cl, WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x58], al
mov byte [rbp + 0x26d], al
mov edx, reloc.WLDAP32.dll_Ordinal_46
mov cl, 0x64
call fcn.14001a040
mov byte [rsp + 0x59], al
mov byte [rbp + 0x26e], al
mov edx, Ordinal_50
mov cl, reloc.WS2_32.dll_WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x5a], al
mov byte [rbp + 0x26f], al
mov edx, Ordinal_50
mov cl, 0x77
call fcn.14001a040
mov byte [rsp + 0x5b], al
mov byte [rbp + 0x270], al
mov edx, Ordinal_50
mov cl, reloc.WS2_32.dll_WSAStartup
call fcn.14001a040
mov byte [rsp + 0x5c], al
mov byte [rbp + 0x271], al
mov edx, reloc.WLDAP32.dll_Ordinal_50
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x5d], al
mov byte [rbp + 0x272], al
mov edx, 0x33
mov cl, 0x53
call fcn.14001a040
mov byte [rsp + 0x5e], al
mov byte [rbp + 0x273], al
mov edx, 0x34
mov cl, reloc.WS2_32.dll_WSACleanup
call fcn.14001a040
mov byte [rsp + 0x5f], al
mov byte [rbp + 0x274], al
mov edx, gethostname
mov cl, 0x61
call fcn.14001a040
mov byte [rsp + 0x60], al
mov byte [rbp + 0x275], al
mov edx, gethostname
mov cl, WSAStartup
call fcn.14001a040
mov byte [rsp + 0x61], al
mov byte [rbp + 0x276], al
mov edx, gethostname
mov cl, reloc.WS2_32.dll_WSACleanup
call fcn.14001a040
mov byte [rsp + 0x62], al
mov byte [rbp + 0x277], al
mov edx, Ordinal_60
mov cl, reloc.WLDAP32.dll_Ordinal_32
call fcn.14001a040
mov byte [rsp + 0x63], al
mov byte [rbp + 0x278], al
mov edx, reloc.WS2_32.dll_gethostname
mov cl, 0x4d
call fcn.14001a040
mov byte [rsp + 0x64], al
mov byte [rbp + 0x279], al
mov edx, Ordinal_60
mov cl, 0x65
call fcn.14001a040
mov byte [rsp + 0x65], al
mov byte [rbp + 0x27a], al
mov edx, Ordinal_60
mov cl, WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x66], al
mov byte [rbp + 0x27b], al
mov edx, reloc.WLDAP32.dll_Ordinal_60
mov cl, 0x75
call fcn.14001a040
mov byte [rsp + 0x67], al
mov byte [rbp + 0x27c], al
mov edx, 0x3d
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x68], al
mov byte [rbp + 0x27d], al
mov edx, 0x3e
mov cl, 0x50
call fcn.14001a040
mov byte [rsp + 0x69], al
mov byte [rbp + 0x27e], al
mov edx, 0x3f
mov cl, WSAStartup
call fcn.14001a040
mov byte [rsp + 0x6a], al
mov byte [rbp + 0x27f], al
mov edx, 0x40
mov cl, reloc.WS2_32.dll_WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x6b], al
mov byte [rbp + 0x280], al
mov edx, 0x41
mov cl, 0x67
call fcn.14001a040
mov byte [rsp + 0x6c], al
mov byte [rbp + 0x281], al
mov edx, 0x42
mov cl, WSAStartup
call fcn.14001a040
mov byte [rsp + 0x6d], al
mov byte [rbp + 0x282], al
mov edx, 0x43
mov cl, 0x61
call fcn.14001a040
mov byte [rsp + 0x6e], al
mov byte [rbp + 0x283], al
mov edx, 0x44
mov cl, 0x6d
call fcn.14001a040
mov byte [rsp + 0x6f], al
mov byte [rbp + 0x284], al
mov edx, 0x45
mov cl, reloc.WS2_32.dll_WSAStartup
call fcn.14001a040
mov byte [rsp + 0x70], al
mov byte [rbp + 0x285], al
mov edx, 0x46
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x71], al
mov byte [rbp + 0x286], al
mov edx, 0x47
mov cl, 0x53
call fcn.14001a040
mov byte [rsp + 0x72], al
mov byte [rbp + 0x287], al
mov edx, 0x48
mov cl, 0x79
call fcn.14001a040
mov byte [rsp + 0x73], al
mov byte [rbp + 0x288], al
mov edx, 0x49
mov cl, reloc.WS2_32.dll_WSAStartup
call fcn.14001a040
mov byte [rsp + 0x74], al
mov byte [rbp + 0x289], al
mov edx, 0x4a
mov cl, reloc.WS2_32.dll_WSACleanup
call fcn.14001a040
mov byte [rsp + 0x75], al
mov byte [rbp + 0x28a], al
mov edx, Ordinal_79
mov cl, 0x65
call fcn.14001a040
mov byte [rsp + 0x76], al
mov byte [rbp + 0x28b], al
mov edx, Ordinal_79
mov cl, 0x6d
call fcn.14001a040
mov byte [rsp + 0x77], al
mov byte [rbp + 0x28c], al
mov edx, Ordinal_79
mov cl, reloc.WLDAP32.dll_Ordinal_32
call fcn.14001a040
mov byte [rsp + 0x78], al
mov byte [rbp + 0x28d], al
mov edx, Ordinal_79
mov cl, 0x54
call fcn.14001a040
mov byte [rsp + 0x79], al
mov byte [rbp + 0x28e], al
mov edx, reloc.WLDAP32.dll_Ordinal_79
mov cl, reloc.WS2_32.dll_WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x7a], al
mov byte [rbp + 0x28f], al
mov edx, 0x50
mov cl, reloc.WS2_32.dll_WSAGetLastError
call fcn.14001a040
mov byte [rsp + 0x7b], al
mov byte [rbp + 0x290], al
mov edx, 0x51
mov cl, 0x6c
call fcn.14001a040
mov byte [rsp + 0x7c], al
mov byte [rbp + 0x291], al
mov edx, 0x52
mov cl, reloc.WS2_32.dll_WSAStartup
call fcn.14001a040
mov byte [rsp + 0x7d], al
mov byte [rbp + 0x292], al
mov edx, 0x53
mov cl, 0x5c
call fcn.14001a040
mov byte [rsp + 0x7e], al
mov byte [rbp + 0x293], al
mov edx, 0x54
mov cl, 0x6b
call fcn.14001a040
mov byte [rsp + 0x7f], al
mov byte [rbp + 0x294], al
mov edx, 0x55
mov cl, 0x65
call fcn.14001a040
mov byte [rbp - 0x80], al
mov byte [rbp + 0x295], al
mov edx, 0x56
mov cl, 0x79
call fcn.14001a040
mov byte [rbp - 0x7f], al
mov byte [rbp + 0x296], al
mov edx, 0x57
mov cl, reloc.WLDAP32.dll_Ordinal_46
call fcn.14001a040
mov byte [rbp - 0x7e], al
mov byte [rbp + 0x297], al
mov edx, 0x58
mov cl, reloc.WS2_32.dll_WSACleanup
call fcn.14001a040
mov byte [rbp - 0x7d], al
mov byte [rbp + 0x298], al
mov edx, 0x59
mov cl, 0x78
call fcn.14001a040
mov byte [rbp - 0x7c], al
mov byte [rbp + 0x299], al
mov edx, 0x5a
mov cl, reloc.WS2_32.dll_WSACleanup
call fcn.14001a040
mov byte [rbp - 0x7b], al
mov byte [rbp + 0x29a], al
xor eax, eax
mov byte [rbp + 0x29b], al
mov r8d, ebx
nop dword [rax + rax]
movsxd rcx, r8d
lea rdx, [rbp + 0x240]
add rdx, rcx
lea ecx, [r8 + 0x13]
xor byte [rdx], cl
inc r8d
cmp r8d, 0x5b
jb 0x140022c70
mov byte [rbp + 0x29b], al
lea rax, [rbp + 0x50]
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x240]
mov rdi, rsi
inc rdi
cmp byte [rax + rdi], 0
jne 0x140022ca4
call fcn.140072d68
mov r13d, eax
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], rbx
mov qword [rbp + 0x68], r15
mov word [rbp + 0x50], bx
mov dword [rbp + 0x70], r14d
test rdi, rdi
je 0x140022d67
cmp rdi, 0x7fffffff
jbe 0x140022ce9
mov ecx, reloc.WLDAP32.dll_Ordinal_22
call fcn.14001fb30
int3
mov dword [rsp + 0x20], ebx
xor r9d, r9d
mov r8d, edi
lea rdx, [rbp + 0x240]
mov ecx, r13d
call fcn.140072d90
mov r15, rax
shr rax, 0x20
test eax, eax
je 0x140022d1a
shr r15, 0x20
mov ecx, r15d
call fcn.14001fb70
int3
xor r8d, r8d
movsxd rdx, r15d
lea rcx, [rbp + 0x50]
call fcn.140021c80
lea r9, [rbp + 0x50]
cmp qword [rbp + 0x68], 7
cmova r9, qword [rbp + 0x50]
mov dword [rsp + 0x20], r15d
mov r8d, edi
lea rdx, [rbp + 0x240]
mov ecx, r13d
call fcn.140072d90
mov rcx, rax
shr rax, 0x20
test eax, eax
je 0x140022d63
shr rcx, 0x20
call fcn.14001fb70
int3
mov r15, qword [rbp + 0x68]
lea rcx, [rbp + 0x50]
cmp r15, 7
cmova rcx, qword [rbp + 0x50]
mov r9d, 0xffffffff
mov r8d, r12d
lea rdx, [rbp + 0xe0]
call fcn.140072ea4
mov edx, eax
test eax, eax
jne 0x140022ddd
mov eax, dword [rbp + 0xf0]
test al, 1
mov ecx, 0x1ff
mov r8d, 0x16d
cmovne ecx, r8d
mov dword [rbp - 0x6c], ecx
bt eax, 0xa
jae 0x140022dcb
mov ecx, dword [rbp + 0xf4]
cmp ecx, 0xa000000c
je 0x140022e01
cmp ecx, 0xa0000003
jne 0x140022dcb
lea r14d, [rdx + 0xa]
jmp 0x140022e01
movzx r14d, al
and r14d, 0x10
or r14d, 0x20
shr r14d, 4
jmp 0x140022e01
mov dword [rbp - 0x6c], 0xffff
sub eax, 2
je 0x140022dfb
sub eax, 1
je 0x140022dfb
sub eax, 0x32
je 0x140022dfb
cmp eax, 0x46
mov r14d, ebx
jne 0x140022e01
mov r14d, 1
mov dword [rbp - 0x70], edx
lea rax, [0x1400d7b20]
mov qword [rbp - 0x68], rax
movaps xmm0, xmmword [rbp - 0x70]
movdqa xmmword [rbp - 0x70], xmm0
test r14d, r14d
je 0x1400237e4
cmp r14d, 1
setne dil
lea rcx, [rbp + 0x50]
call fcn.14000a1f0
test dil, dil
je 0x140023804
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp + 0x130]
call sub.VCRUNTIME140.dll_memset
movzx r14d, byte [rbp - 0x77]
mov byte [rbp + 0x240], r14b
movzx r15d, byte [rbp - 0x76]
mov byte [rbp + 0x241], r15b
movzx r13d, byte [rbp - 0x7a]
mov byte [rbp + 0x242], r13b
movzx eax, byte [rbp - 0x78]
mov byte [rbp + 0x243], al
movzx eax, byte [rbp - 0x79]
mov byte [rbp + 0x244], al
movzx eax, byte [rsp + 0x30]
mov byte [rbp + 0x245], al
movzx eax, byte [rsp + 0x31]
mov byte [rbp + 0x246], al
movzx eax, byte [rsp + 0x32]
mov byte [rbp + 0x247], al
movzx eax, byte [rsp + 0x33]
mov byte [rbp + 0x248], al
movzx eax, byte [rsp + 0x34]
mov byte [rbp + 0x249], al
movzx eax, byte [rsp + 0x35]
mov byte [rbp + 0x24a], al
movzx eax, byte [rsp + 0x36]
mov byte [rbp + 0x24b], al
movzx eax, byte [rsp + 0x37]
mov byte [rbp + 0x24c], al
movzx eax, byte [rsp + 0x38]
mov byte [rbp + 0x24d], al
movzx eax, byte [rsp + 0x39]
mov byte [rbp + 0x24e], al
movzx eax, byte [rsp + 0x3a]
mov byte [rbp + 0x24f], al
movzx eax, byte [rsp + 0x3b]
mov byte [rbp + 0x250], al
movzx eax, byte [rsp + 0x3c]
mov byte [rbp + 0x251], al
movzx eax, byte [rsp + 0x3d]
mov byte [rbp + 0x252], al
movzx eax, byte [rsp + 0x3e]
mov byte [rbp + 0x253], al
movzx eax, byte [rsp + 0x3f]
mov byte [rbp + 0x254], al
movzx eax, byte [rsp + 0x40]
mov byte [rbp + 0x255], al
movzx eax, byte [rsp + 0x41]
mov byte [rbp + 0x256], al
movzx eax, byte [rsp + 0x42]
mov byte [rbp + 0x257], al
movzx eax, byte [rsp + 0x43]
mov byte [rbp + 0x258], al
movzx eax, byte [rsp + 0x44]
mov byte [rbp + 0x259], al
movzx eax, byte [rsp + 0x45]
mov byte [rbp + 0x25a], al
movzx eax, byte [rsp + 0x46]
mov byte [rbp + 0x25b], al
movzx eax, byte [rsp + 0x47]
mov byte [rbp + 0x25c], al
movzx eax, byte [rsp + 0x48]
mov byte [rbp + 0x25d], al
movzx eax, byte [rsp + 0x49]
mov byte [rbp + 0x25e], al
movzx eax, byte [rsp + 0x4a]
mov byte [rbp + 0x25f], al
movzx eax, byte [rsp + 0x4b]
mov byte [rbp + 0x260], al
movzx eax, byte [rsp + 0x4c]
mov byte [rbp + 0x261], al
movzx eax, byte [rsp + 0x4d]
mov byte [rbp + 0x262], al
movzx eax, byte [rsp + 0x4e]
mov byte [rbp + 0x263], al
movzx eax, byte [rsp + 0x4f]
mov byte [rbp + 0x264], al
movzx eax, byte [rsp + 0x50]
mov byte [rbp + 0x265], al
movzx eax, byte [rsp + 0x51]
mov byte [rbp + 0x266], al
movzx eax, byte [rsp + 0x52]
mov byte [rbp + 0x267], al
movzx eax, byte [rsp + 0x53]
mov byte [rbp + 0x268], al
movzx eax, byte [rsp + 0x54]
mov byte [rbp + 0x269], al
movzx eax, byte [rsp + 0x55]
mov byte [rbp + 0x26a], al
movzx eax, byte [rsp + 0x56]
mov byte [rbp + 0x26b], al
movzx eax, byte [rsp + 0x57]
mov byte [rbp + 0x26c], al
movzx eax, byte [rsp + 0x58]
mov byte [rbp + 0x26d], al
movzx eax, byte [rsp + 0x59]
mov byte [rbp + 0x26e], al
movzx eax, byte [rsp + 0x5a]
mov byte [rbp + 0x26f], al
movzx eax, byte [rsp + 0x5b]
mov byte [rbp + 0x270], al
movzx eax, byte [rsp + 0x5c]
mov byte [rbp + 0x271], al
movzx eax, byte [rsp + 0x5d]
mov byte [rbp + 0x272], al
movzx eax, byte [rsp + 0x5e]
mov byte [rbp + 0x273], al
movzx eax, byte [rsp + 0x5f]
mov byte [rbp + 0x274], al
movzx eax, byte [rsp + 0x60]
mov byte [rbp + 0x275], al
movzx eax, byte [rsp + 0x61]
mov byte [rbp + 0x276], al
movzx eax, byte [rsp + 0x62]
mov byte [rbp + 0x277], al
movzx eax, byte [rsp + 0x63]
mov byte [rbp + 0x278], al
movzx eax, byte [rsp + 0x64]
mov byte [rbp + 0x279], al
movzx eax, byte [rsp + 0x65]
mov byte [rbp + 0x27a], al
movzx eax, byte [rsp + 0x66]
mov byte [rbp + 0x27b], al
movzx eax, byte [rsp + 0x67]
mov byte [rbp + 0x27c], al
movzx eax, byte [rsp + 0x68]
mov byte [rbp + 0x27d], al
movzx eax, byte [rsp + 0x69]
mov byte [rbp + 0x27e], al
movzx eax, byte [rsp + 0x6a]
mov byte [rbp + 0x27f], al
movzx eax, byte [rsp + 0x6b]
mov byte [rbp + 0x280], al
movzx eax, byte [rsp + 0x6c]
mov byte [rbp + 0x281], al
movzx eax, byte [rsp + 0x6d]
mov byte [rbp + 0x282], al
movzx eax, byte [rsp + 0x6e]
mov byte [rbp + 0x283], al
movzx eax, byte [rsp + 0x6f]
mov byte [rbp + 0x284], al
movzx eax, byte [rsp + 0x70]
mov byte [rbp + 0x285], al
movzx eax, byte [rsp + 0x71]
mov byte [rbp + 0x286], al
movzx eax, byte [rsp + 0x72]
mov byte [rbp + 0x287], al
movzx eax, byte [rsp + 0x73]
mov byte [rbp + 0x288], al
movzx eax, byte [rsp + 0x74]
mov byte [rbp + 0x289], al
movzx eax, byte [rsp + 0x75]
mov byte [rbp + 0x28a], al
movzx eax, byte [rsp + 0x76]
mov byte [rbp + 0x28b], al
movzx eax, byte [rsp + 0x77]
mov byte [rbp + 0x28c], al
movzx eax, byte [rsp + 0x78]
mov byte [rbp + 0x28d], al
movzx eax, byte [rsp + 0x79]
mov byte [rbp + 0x28e], al
movzx eax, byte [rsp + 0x7a]
mov byte [rbp + 0x28f], al
movzx eax, byte [rsp + 0x7b]
mov byte [rbp + 0x290], al
movzx eax, byte [rsp + 0x7c]
mov byte [rbp + 0x291], al
movzx eax, byte [rsp + 0x7d]
mov byte [rbp + 0x292], al
movzx eax, byte [rsp + 0x7e]
mov byte [rbp + 0x293], al
movzx eax, byte [rsp + 0x7f]
mov byte [rbp + 0x294], al
movzx eax, byte [rbp - 0x80]
mov byte [rbp + 0x295], al
movzx eax, byte [rbp - 0x7f]
mov byte [rbp + 0x296], al
movzx eax, byte [rbp - 0x7e]
mov byte [rbp + 0x297], al
movzx eax, byte [rbp - 0x7d]
mov byte [rbp + 0x298], al
movzx eax, byte [rbp - 0x7c]
mov byte [rbp + 0x299], al
movzx eax, byte [rbp - 0x7b]
mov byte [rbp + 0x29a], al
xor eax, eax
mov byte [rbp + 0x29b], al
mov edx, ebx
nop dword [rax]
movsxd rax, edx
lea rcx, [rbp + 0x240]
add rcx, rax
lea eax, [rdx + 0x13]
xor byte [rcx], al
inc edx
cmp edx, 0x5b
jb 0x140023240
mov byte [rbp + 0x29b], 0
lea rax, [0x140000000]
lea rax, [rax + 0x77e78]
mov qword [rbp + 0x130], rax
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov r12d, ntohs
mov dword [rbp + 0x70], r12d
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x140]
lea rcx, [rbp + 0x130]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64__bool____ptr64]
nop
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x130], rax
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x12c], edx
lea rcx, [rbp + 0x140]
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 [rbp + 0x140], rax
mov byte [rbp + 0x1bc], 0
mov byte [rbp + 0x1b1], 0
lea rcx, [rbp + 0x140]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void____ptr64]
mov qword [rbp + 0x1c0], rbx
mov rax, qword [0x1400d82b8]
mov qword [rbp + 0x1b4], rax
mov qword [rbp + 0x1a8], rbx
lea r9d, [r12 + 0x35]
lea r8d, [r12 - 0xa]
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0x140]
call fcn.140020e90
test rax, rax
jne 0x140023372
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x130]
add rcx, rax
xor r8d, r8d
lea edx, [r12 - 9]
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 [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x130]
add rcx, rax
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 + 0x108]
lea rcx, [rbp + 0x130]
call fcn.14001c310
movups xmm0, xmmword [0x140078370]
movups xmmword [rbp - 0x60], xmm0
mov eax, dword [0x140078380]
mov dword [rbp - 0x50], eax
movzx eax, byte [0x140078384]
mov byte [rbp - 0x4c], al
mov ecx, ebx
mov edi, dword [reloc.WS2_32.dll_accept]
cmp edi, 2
jl 0x140023504
movdqa xmm5, xmmword [0x140078490]
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm6, xmmword [0x1400784b0]
movdqa xmm0, xmmword [str.2222222222222222]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x5c]
mov r8d, dword [rbp - 0x70]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140023402
cmp ecx, 0x15
jge 0x14002353e
movsxd rax, ecx
lea r8, [rbp - 0x60]
add r8, rax
nop
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x32
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x15
jl 0x140023510
lea rdx, [rbp - 0x60]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
lea rdx, [0x14001c2b0]
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]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
movups xmm0, xmmword [0x140078388]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [0x140078398]
movups xmmword [rbp - 0x30], xmm1
movzx eax, word [0x1400783a8]
mov word [rbp - 0x20], ax
movzx eax, byte [0x1400783aa]
mov byte [rbp - 0x1e], al
mov ecx, ebx
cmp edi, 2
jl 0x1400236d2
movdqa xmm5, xmmword [0x140078490]
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm6, xmmword [0x1400784b0]
movdqa xmm0, xmmword [str.2222222222222222]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x3c]
mov r8d, dword [rbp - 0x70]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x20
jl 0x1400235d0
cmp ecx, 0x23
jge 0x14002370e
movsxd rax, ecx
lea r8, [rbp - 0x40]
add r8, rax
nop dword [rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x32
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x23
jl 0x1400236e0
lea rdx, [rbp - 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
lea rdx, [rbp + 0x108]
cmp qword [rbp + 0x120], 0xf
cmova rdx, qword [rbp + 0x108]
mov r8, qword [rbp + 0x118]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001bba0
lea rcx, [rbp + 0x140]
call fcn.14001a200
test rax, rax
jne 0x14002377b
mov rax, qword [rbp + 0x130]
movsxd rdx, dword [rax + 4]
lea rcx, [rbp + 0x130]
add rcx, rdx
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]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x130], rax
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x12c], edx
lea rcx, [rbp + 0x140]
call fcn.140019cd0
lea rcx, [rbp + 0x148]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x1e0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
jmp 0x1400239f0
xor dil, dil
test edx, edx
je 0x140022e29
lea r8, [rbp + 0x50]
lea rdx, [rbp - 0x70]
lea rcx, str.exists
call fcn.14001fad0
nop
movups xmm0, xmmword [0x1400783b0]
movups xmmword [rbp + 0x50], xmm0
movsd xmm0, qword [0x1400783c0]
movsd qword [rbp + 0x60], xmm0
mov eax, dword [0x1400783c8]
mov dword [rbp + 0x68], eax
movzx eax, word [0x1400783cc]
mov word [rbp + 0x6c], ax
mov edi, dword [reloc.WS2_32.dll_accept]
cmp byte [reloc.WLDAP32.dll_Ordinal_79], 0
je 0x1400239be
mov ecx, ebx
cmp edi, 2
jl 0x140023982
movdqa xmm5, xmmword [0x140078490]
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm6, xmmword [0x1400784b0]
movdqa xmm0, xmmword [str.2222222222222222]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp + 0x54]
mov r8d, dword [rbp - 0x70]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x18
jl 0x140023880
cmp ecx, 0x1e
jge 0x1400239be
movsxd rax, ecx
lea r8, [rbp + 0x50]
add r8, rax
nop dword [rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x32
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x1e
jl 0x140023990
lea rdx, [rbp + 0x50]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
lea rdx, [rbp + 0x108]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.14001af10
movzx r14d, byte [rbp - 0x77]
movzx r15d, byte [rbp - 0x76]
movzx r13d, byte [rbp - 0x7a]
lea rdx, [rbp + 0x108]
lea rcx, [rbp + 0xe0]
call fcn.14000a4c0
mov rdx, rax
lea rcx, [0x1400d83e0]
call fcn.140005ae0
cmp byte [0x1400d8618], 0
jne 0x14002440b
mov r10, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x75]
call fcn.14001dbe0
mov r9, rax
cmp byte [rax + 0xd], 0
je 0x140023b7e
mov ecx, ebx
cmp edi, 2
jl 0x140023b48
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm2, xmmword [0x140078490]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400784b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
mov eax, dword [str.2222222222222222]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r9]
xorps xmm2, xmm0
movd dword [r9], xmm2
movdqa xmm3, xmmword [0x1400784a0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400784b0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r9 + 4]
xorps xmm2, xmm0
movd dword [r9 + 4], xmm2
mov ecx, 8
movsxd r8, ecx
add r8, r9
nop
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x32
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0xe
jl 0x140023b50
mov rdx, r9
mov rcx, r10
call fcn.140019680
mov rcx, rax
lea rdx, [0x1400d8620]
call fcn.14001b150
mov byte [rbp + 0x240], r14b
mov byte [rbp + 0x241], r15b
mov byte [rbp + 0x242], r13b
movzx esi, byte [rbp - 0x78]
mov byte [rbp + 0x243], sil
movzx r12d, byte [rbp - 0x79]
mov byte [rbp + 0x244], r12b
movzx eax, byte [rsp + 0x30]
mov byte [rbp + 0x245], al
movzx eax, byte [rsp + 0x31]
mov byte [rbp + 0x246], al
movzx eax, byte [rsp + 0x32]
mov byte [rbp + 0x247], al
movzx eax, byte [rsp + 0x33]
mov byte [rbp + 0x248], al
movzx eax, byte [rsp + 0x34]
mov byte [rbp + 0x249], al
movzx eax, byte [rsp + 0x35]
mov byte [rbp + 0x24a], al
movzx eax, byte [rsp + 0x36]
mov byte [rbp + 0x24b], al
movzx eax, byte [rsp + 0x37]
mov byte [rbp + 0x24c], al
movzx eax, byte [rsp + 0x38]
mov byte [rbp + 0x24d], al
movzx eax, byte [rsp + 0x39]
mov byte [rbp + 0x24e], al
movzx eax, byte [rsp + 0x3a]
mov byte [rbp + 0x24f], al
movzx eax, byte [rsp + 0x3b]
mov byte [rbp + 0x250], al
movzx eax, byte [rsp + 0x3c]
mov byte [rbp + 0x251], al
movzx eax, byte [rsp + 0x3d]
mov byte [rbp + 0x252], al
movzx eax, byte [rsp + 0x3e]
mov byte [rbp + 0x253], al
movzx eax, byte [rsp + 0x3f]
mov byte [rbp + 0x254], al
movzx eax, byte [rsp + 0x40]
mov byte [rbp + 0x255], al
movzx eax, byte [rsp + 0x41]
mov byte [rbp + 0x256], al
movzx eax, byte [rsp + 0x42]
mov byte [rbp + 0x257], al
movzx eax, byte [rsp + 0x43]
mov byte [rbp + 0x258], al
movzx eax, byte [rsp + 0x44]
mov byte [rbp + 0x259], al
movzx eax, byte [rsp + 0x45]
mov byte [rbp + 0x25a], al
movzx eax, byte [rsp + 0x46]
mov byte [rbp + 0x25b], al
movzx eax, byte [rsp + 0x47]
mov byte [rbp + 0x25c], al
movzx eax, byte [rsp + 0x48]
mov byte [rbp + 0x25d], al
movzx eax, byte [rsp + 0x49]
mov byte [rbp + 0x25e], al
movzx eax, byte [rsp + 0x4a]
mov byte [rbp + 0x25f], al
movzx eax, byte [rsp + 0x4b]
mov byte [rbp + 0x260], al
movzx eax, byte [rsp + 0x4c]
mov byte [rbp + 0x261], al
movzx eax, byte [rsp + 0x4d]
mov byte [rbp + 0x262], al
movzx eax, byte [rsp + 0x4e]
mov byte [rbp + 0x263], al
movzx eax, byte [rsp + 0x4f]
mov byte [rbp + 0x264], al
movzx eax, byte [rsp + 0x50]
mov byte [rbp + 0x265], al
movzx eax, byte [rsp + 0x51]
mov byte [rbp + 0x266], al
movzx eax, byte [rsp + 0x52]
mov byte [rbp + 0x267], al
movzx eax, byte [rsp + 0x53]
mov byte [rbp + 0x268], al
movzx eax, byte [rsp + 0x54]
mov byte [rbp + 0x269], al
movzx eax, byte [rsp + 0x55]
mov byte [rbp + 0x26a], al
movzx eax, byte [rsp + 0x56]
mov byte [rbp + 0x26b], al
movzx eax, byte [rsp + 0x57]
mov byte [rbp + 0x26c], al
movzx eax, byte [rsp + 0x58]
mov byte [rbp + 0x26d], al
movzx eax, byte [rsp + 0x59]
mov byte [rbp + 0x26e], al
movzx eax, byte [rsp + 0x5a]
mov byte [rbp + 0x26f], al
movzx eax, byte [rsp + 0x5b]
mov byte [rbp + 0x270], al
movzx eax, byte [rsp + 0x5c]
mov byte [rbp + 0x271], al
movzx eax, byte [rsp + 0x5d]
mov byte [rbp + 0x272], al
movzx eax, byte [rsp + 0x5e]
mov byte [rbp + 0x273], al
movzx eax, byte [rsp + 0x5f]
mov byte [rbp + 0x274], al
movzx eax, byte [rsp + 0x60]
mov byte [rbp + 0x275], al
movzx eax, byte [rsp + 0x61]
mov byte [rbp + 0x276], al
movzx eax, byte [rsp + 0x62]
mov byte [rbp + 0x277], al
movzx eax, byte [rsp + 0x63]
mov byte [rbp + 0x278], al
movzx eax, byte [rsp + 0x64]
mov byte [rbp + 0x279], al
movzx eax, byte [rsp + 0x65]
mov byte [rbp + 0x27a], al
movzx eax, byte [rsp + 0x66]
mov byte [rbp + 0x27b], al
movzx eax, byte [rsp + 0x67]
mov byte [rbp + 0x27c], al
movzx eax, byte [rsp + 0x68]
mov byte [rbp + 0x27d], al
movzx eax, byte [rsp + 0x69]
mov byte [rbp + 0x27e], al
movzx eax, byte [rsp + 0x6a]
mov byte [rbp + 0x27f], al
movzx eax, byte [rsp + 0x6b]
mov byte [rbp + 0x280], al
movzx eax, byte [rsp + 0x6c]
mov byte [rbp + 0x281], al
movzx eax, byte [rsp + 0x6d]
mov byte [rbp + 0x282], al
movzx eax, byte [rsp + 0x6e]
mov byte [rbp + 0x283], al
movzx eax, byte [rsp + 0x6f]
mov byte [rbp + 0x284], al
movzx eax, byte [rsp + 0x70]
mov byte [rbp + 0x285], al
movzx eax, byte [rsp + 0x71]
mov byte [rbp + 0x286], al
movzx eax, byte [rsp + 0x72]
mov byte [rbp + 0x287], al
movzx eax, byte [rsp + 0x73]
mov byte [rbp + 0x288], al
movzx eax, byte [rsp + 0x74]
mov byte [rbp + 0x289], al
movzx eax, byte [rsp + 0x75]
mov byte [rbp + 0x28a], al
movzx eax, byte [rsp + 0x76]
mov byte [rbp + 0x28b], al
movzx eax, byte [rsp + 0x77]
mov byte [rbp + 0x28c], al
movzx eax, byte [rsp + 0x78]
mov byte [rbp + 0x28d], al
movzx eax, byte [rsp + 0x79]
mov byte [rbp + 0x28e], al
movzx eax, byte [rsp + 0x7a]
mov byte [rbp + 0x28f], al
movzx eax, byte [rsp + 0x7b]
mov byte [rbp + 0x290], al
movzx eax, byte [rsp + 0x7c]
mov byte [rbp + 0x291], al
movzx eax, byte [rsp + 0x7d]
mov byte [rbp + 0x292], al
movzx eax, byte [rsp + 0x7e]
mov byte [rbp + 0x293], al
movzx eax, byte [rsp + 0x7f]
mov byte [rbp + 0x294], al
movzx eax, byte [rbp - 0x80]
mov byte [rbp + 0x295], al
movzx eax, byte [rbp - 0x7f]
mov byte [rbp + 0x296], al
movzx eax, byte [rbp - 0x7e]
mov byte [rbp + 0x297], al
movzx eax, byte [rbp - 0x7d]
mov byte [rbp + 0x298], al
movzx eax, byte [rbp - 0x7c]
mov byte [rbp + 0x299], al
movzx eax, byte [rbp - 0x7b]
mov byte [rbp + 0x29a], al
xor eax, eax
mov byte [rbp + 0x29b], al
mov edx, ebx
nop word [rax + rax]
movsxd rax, edx
lea rcx, [rbp + 0x240]
add rcx, rax
lea eax, [rdx + 0x13]
xor byte [rcx], al
inc edx
cmp edx, 0x5b
jb 0x140023f80
mov byte [rbp + 0x29b], 0
lea rax, [rbp + 0x240]
mov qword [rbp + 0x70], rax
xor r8d, r8d
lea rdx, [rbp + 0x70]
lea rcx, [rbp + 0xe0]
call fcn.14001ae10
nop
lea rcx, [rbp + 0xe0]
call fcn.140020530
movzx edi, al
lea rcx, [rbp + 0xe0]
call fcn.140019de0
test dil, dil
je 0x1400243ed
mov byte [rbp + 0x240], r14b
mov byte [rbp + 0x241], r15b
mov byte [rbp + 0x242], r13b
mov byte [rbp + 0x243], sil
mov byte [rbp + 0x244], r12b
movzx eax, byte [rsp + 0x30]
mov byte [rbp + 0x245], al
movzx eax, byte [rsp + 0x31]
mov byte [rbp + 0x246], al
movzx eax, byte [rsp + 0x32]
mov byte [rbp + 0x247], al
movzx eax, byte [rsp + 0x33]
mov byte [rbp + 0x248], al
movzx eax, byte [rsp + 0x34]
mov byte [rbp + 0x249], al
movzx eax, byte [rsp + 0x35]
mov byte [rbp + 0x24a], al
movzx eax, byte [rsp + 0x36]
mov byte [rbp + 0x24b], al
movzx eax, byte [rsp + 0x37]
mov byte [rbp + 0x24c], al
movzx eax, byte [rsp + 0x38]
mov byte [rbp + 0x24d], al
movzx eax, byte [rsp + 0x39]
mov byte [rbp + 0x24e], al
movzx eax, byte [rsp + 0x3a]
mov byte [rbp + 0x24f], al
movzx eax, byte [rsp + 0x3b]
mov byte [rbp + 0x250], al
movzx eax, byte [rsp + 0x3c]
mov byte [rbp + 0x251], al
movzx eax, byte [rsp + 0x3d]
mov byte [rbp + 0x252], al
movzx eax, byte [rsp + 0x3e]
mov byte [rbp + 0x253], al
movzx eax, byte [rsp + 0x3f]
mov byte [rbp + 0x254], al
movzx eax, byte [rsp + 0x40]
mov byte [rbp + 0x255], al
movzx eax, byte [rsp + 0x41]
mov byte [rbp + 0x256], al
movzx eax, byte [rsp + 0x42]
mov byte [rbp + 0x257], al
movzx eax, byte [rsp + 0x43]
mov byte [rbp + 0x258], al
movzx eax, byte [rsp + 0x44]
mov byte [rbp + 0x259], al
movzx eax, byte [rsp + 0x45]
mov byte [rbp + 0x25a], al
movzx eax, byte [rsp + 0x46]
mov byte [rbp + 0x25b], al
movzx eax, byte [rsp + 0x47]
mov byte [rbp + 0x25c], al
movzx eax, byte [rsp + 0x48]
mov byte [rbp + 0x25d], al
movzx eax, byte [rsp + 0x49]
mov byte [rbp + 0x25e], al
movzx eax, byte [rsp + 0x4a]
mov byte [rbp + 0x25f], al
movzx eax, byte [rsp + 0x4b]
mov byte [rbp + 0x260], al
movzx eax, byte [rsp + 0x4c]
mov byte [rbp + 0x261], al
movzx eax, byte [rsp + 0x4d]
mov byte [rbp + 0x262], al
movzx eax, byte [rsp + 0x4e]
mov byte [rbp + 0x263], al
movzx eax, byte [rsp + 0x4f]
mov byte [rbp + 0x264], al
movzx eax, byte [rsp + 0x50]
mov byte [rbp + 0x265], al
movzx eax, byte [rsp + 0x51]
mov byte [rbp + 0x266], al
movzx eax, byte [rsp + 0x52]
mov byte [rbp + 0x267], al
movzx eax, byte [rsp + 0x53]
mov byte [rbp + 0x268], al
movzx eax, byte [rsp + 0x54]
mov byte [rbp + 0x269], al
movzx eax, byte [rsp + 0x55]
mov byte [rbp + 0x26a], al
movzx eax, byte [rsp + 0x56]
mov byte [rbp + 0x26b], al
movzx eax, byte [rsp + 0x57]
mov byte [rbp + 0x26c], al
movzx eax, byte [rsp + 0x58]
mov byte [rbp + 0x26d], al
movzx eax, byte [rsp + 0x59]
mov byte [rbp + 0x26e], al
movzx eax, byte [rsp + 0x5a]
mov byte [rbp + 0x26f], al
movzx eax, byte [rsp + 0x5b]
mov byte [rbp + 0x270], al
movzx eax, byte [rsp + 0x5c]
mov byte [rbp + 0x271], al
movzx eax, byte [rsp + 0x5d]
mov byte [rbp + 0x272], al
movzx eax, byte [rsp + 0x5e]
mov byte [rbp + 0x273], al
movzx eax, byte [rsp + 0x5f]
mov byte [rbp + 0x274], al
movzx eax, byte [rsp + 0x60]
mov byte [rbp + 0x275], al
movzx eax, byte [rsp + 0x61]
mov byte [rbp + 0x276], al
movzx eax, byte [rsp + 0x62]
mov byte [rbp + 0x277], al
movzx eax, byte [rsp + 0x63]
mov byte [rbp + 0x278], al
movzx eax, byte [rsp + 0x64]
mov byte [rbp + 0x279], al
movzx eax, byte [rsp + 0x65]
mov byte [rbp + 0x27a], al
movzx eax, byte [rsp + 0x66]
mov byte [rbp + 0x27b], al
movzx eax, byte [rsp + 0x67]
mov byte [rbp + 0x27c], al
movzx eax, byte [rsp + 0x68]
mov byte [rbp + 0x27d], al
movzx eax, byte [rsp + 0x69]
mov byte [rbp + 0x27e], al
movzx eax, byte [rsp + 0x6a]
mov byte [rbp + 0x27f], al
movzx eax, byte [rsp + 0x6b]
mov byte [rbp + 0x280], al
movzx eax, byte [rsp + 0x6c]
mov byte [rbp + 0x281], al
movzx eax, byte [rsp + 0x6d]
mov byte [rbp + 0x282], al
movzx eax, byte [rsp + 0x6e]
mov byte [rbp + 0x283], al
movzx eax, byte [rsp + 0x6f]
mov byte [rbp + 0x284], al
movzx eax, byte [rsp + 0x70]
mov byte [rbp + 0x285], al
movzx eax, byte [rsp + 0x71]
mov byte [rbp + 0x286], al
movzx eax, byte [rsp + 0x72]
mov byte [rbp + 0x287], al
movzx eax, byte [rsp + 0x73]
mov byte [rbp + 0x288], al
movzx eax, byte [rsp + 0x74]
mov byte [rbp + 0x289], al
movzx eax, byte [rsp + 0x75]
mov byte [rbp + 0x28a], al
movzx eax, byte [rsp + 0x76]
mov byte [rbp + 0x28b], al
movzx eax, byte [rsp + 0x77]
mov byte [rbp + 0x28c], al
movzx eax, byte [rsp + 0x78]
mov byte [rbp + 0x28d], al
movzx eax, byte [rsp + 0x79]
mov byte [rbp + 0x28e], al
movzx eax, byte [rsp + 0x7a]
mov byte [rbp + 0x28f], al
movzx eax, byte [rsp + 0x7b]
mov byte [rbp + 0x290], al
movzx eax, byte [rsp + 0x7c]
mov byte [rbp + 0x291], al
movzx eax, byte [rsp + 0x7d]
mov byte [rbp + 0x292], al
movzx eax, byte [rsp + 0x7e]
mov byte [rbp + 0x293], al
movzx eax, byte [rsp + 0x7f]
mov byte [rbp + 0x294], al
movzx eax, byte [rbp - 0x80]
mov byte [rbp + 0x295], al
movzx eax, byte [rbp - 0x7f]
mov byte [rbp + 0x296], al
movzx eax, byte [rbp - 0x7e]
mov byte [rbp + 0x297], al
movzx eax, byte [rbp - 0x7d]
mov byte [rbp + 0x298], al
movzx eax, byte [rbp - 0x7c]
mov byte [rbp + 0x299], al
movzx eax, byte [rbp - 0x7b]
mov byte [rbp + 0x29a], al
xor eax, eax
mov byte [rbp + 0x29b], al
nop word [rax + rax]
movsxd rax, ebx
lea rcx, [rbp + 0x240]
add rcx, rax
lea eax, [rbx + 0x13]
xor byte [rcx], al
inc ebx
cmp ebx, 0x5b
jb 0x1400243c0
mov byte [rbp + 0x29b], 0
lea rcx, [rbp + 0x240]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
mov ecx, 0x5dc
call qword [sym.imp.KERNEL32.dll_Sleep]
call fcn.14001ed60
call fcn.14001ed60
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x130]
call sub.VCRUNTIME140.dll_memset
mov byte [rbp + 0x80], r14b
mov byte [rbp + 0x81], r15b
mov byte [rbp + 0x82], r13b
movzx eax, byte [rbp - 0x78]
mov byte [rbp + 0x83], al
movzx eax, byte [rbp - 0x79]
mov byte [rbp + 0x84], al
movzx eax, byte [rsp + 0x30]
mov byte [rbp + 0x85], al
movzx eax, byte [rsp + 0x31]
mov byte [rbp + 0x86], al
movzx eax, byte [rsp + 0x32]
mov byte [rbp + 0x87], al
movzx eax, byte [rsp + 0x33]
mov byte [rbp + 0x88], al
movzx eax, byte [rsp + 0x34]
mov byte [rbp + 0x89], al
movzx eax, byte [rsp + 0x35]
mov byte [rbp + 0x8a], al
movzx eax, byte [rsp + 0x36]
mov byte [rbp + 0x8b], al
movzx eax, byte [rsp + 0x37]
mov byte [rbp + 0x8c], al
movzx eax, byte [rsp + 0x38]
mov byte [rbp + 0x8d], al
movzx eax, byte [rsp + 0x39]
mov byte [rbp + 0x8e], al
movzx eax, byte [rsp + 0x3a]
mov byte [rbp + 0x8f], al
movzx eax, byte [rsp + 0x3b]
mov byte [rbp + 0x90], al
movzx eax, byte [rsp + 0x3c]
mov byte [rbp + 0x91], al
movzx eax, byte [rsp + 0x3d]
mov byte [rbp + 0x92], al
movzx eax, byte [rsp + 0x3e]
mov byte [rbp + 0x93], al
movzx eax, byte [rsp + 0x3f]
mov byte [rbp + 0x94], al
movzx eax, byte [rsp + 0x40]
mov byte [rbp + 0x95], al
movzx eax, byte [rsp + 0x41]
mov byte [rbp + 0x96], al
movzx eax, byte [rsp + 0x42]
mov byte [rbp + 0x97], al
movzx eax, byte [rsp + 0x43]
mov byte [rbp + 0x98], al
movzx eax, byte [rsp + 0x44]
mov byte [rbp + 0x99], al
movzx eax, byte [rsp + 0x45]
mov byte [rbp + 0x9a], al
movzx eax, byte [rsp + 0x46]
mov byte [rbp + 0x9b], al
movzx eax, byte [rsp + 0x47]
mov byte [rbp + 0x9c], al
movzx eax, byte [rsp + 0x48]
mov byte [rbp + 0x9d], al
movzx eax, byte [rsp + 0x49]
mov byte [rbp + 0x9e], al
movzx eax, byte [rsp + 0x4a]
mov byte [rbp + 0x9f], al
movzx eax, byte [rsp + 0x4b]
mov byte [rbp + 0xa0], al
movzx eax, byte [rsp + 0x4c]
mov byte [rbp + 0xa1], al
movzx eax, byte [rsp + 0x4d]
mov byte [rbp + 0xa2], al
movzx eax, byte [rsp + 0x4e]
mov byte [rbp + 0xa3], al
movzx eax, byte [rsp + 0x4f]
mov byte [rbp + 0xa4], al
movzx eax, byte [rsp + 0x50]
mov byte [rbp + 0xa5], al
movzx eax, byte [rsp + 0x51]
mov byte [rbp + 0xa6], al
movzx eax, byte [rsp + 0x52]
mov byte [rbp + 0xa7], al
movzx eax, byte [rsp + 0x53]
mov byte [rbp + 0xa8], al
movzx eax, byte [rsp + 0x54]
mov byte [rbp + 0xa9], al
movzx eax, byte [rsp + 0x55]
mov byte [rbp + 0xaa], al
movzx eax, byte [rsp + 0x56]
mov byte [rbp + 0xab], al
movzx eax, byte [rsp + 0x57]
mov byte [rbp + 0xac], al
movzx eax, byte [rsp + 0x58]
mov byte [rbp + 0xad], al
movzx eax, byte [rsp + 0x59]
mov byte [rbp + 0xae], al
movzx eax, byte [rsp + 0x5a]
mov byte [rbp + 0xaf], al
movzx eax, byte [rsp + 0x5b]
mov byte [rbp + 0xb0], al
movzx eax, byte [rsp + 0x5c]
mov byte [rbp + 0xb1], al
movzx eax, byte [rsp + 0x5d]
mov byte [rbp + 0xb2], al
movzx eax, byte [rsp + 0x5e]
mov byte [rbp + 0xb3], al
movzx eax, byte [rsp + 0x5f]
mov byte [rbp + 0xb4], al
movzx eax, byte [rsp + 0x60]
mov byte [rbp + 0xb5], al
movzx eax, byte [rsp + 0x61]
mov byte [rbp + 0xb6], al
movzx eax, byte [rsp + 0x62]
mov byte [rbp + 0xb7], al
movzx eax, byte [rsp + 0x63]
mov byte [rbp + 0xb8], al
movzx eax, byte [rsp + 0x64]
mov byte [rbp + 0xb9], al
movzx eax, byte [rsp + 0x65]
mov byte [rbp + 0xba], al
movzx eax, byte [rsp + 0x66]
mov byte [rbp + 0xbb], al
movzx eax, byte [rsp + 0x67]
mov byte [rbp + 0xbc], al
movzx eax, byte [rsp + 0x68]
mov byte [rbp + 0xbd], al
movzx eax, byte [rsp + 0x69]
mov byte [rbp + 0xbe], al
movzx eax, byte [rsp + 0x6a]
mov byte [rbp + 0xbf], al
movzx eax, byte [rsp + 0x6b]
mov byte [rbp + 0xc0], al
movzx eax, byte [rsp + 0x6c]
mov byte [rbp + 0xc1], al
movzx eax, byte [rsp + 0x6d]
mov byte [rbp + 0xc2], al
movzx eax, byte [rsp + 0x6e]
mov byte [rbp + 0xc3], al
movzx eax, byte [rsp + 0x6f]
mov byte [rbp + 0xc4], al
movzx eax, byte [rsp + 0x70]
mov byte [rbp + 0xc5], al
movzx eax, byte [rsp + 0x71]
mov byte [rbp + 0xc6], al
movzx eax, byte [rsp + 0x72]
mov byte [rbp + 0xc7], al
movzx eax, byte [rsp + 0x73]
mov byte [rbp + 0xc8], al
movzx eax, byte [rsp + 0x74]
mov byte [rbp + 0xc9], al
movzx eax, byte [rsp + 0x75]
mov byte [rbp + 0xca], al
movzx eax, byte [rsp + 0x76]
mov byte [rbp + 0xcb], al
movzx eax, byte [rsp + 0x77]
mov byte [rbp + 0xcc], al
movzx eax, byte [rsp + 0x78]
mov byte [rbp + 0xcd], al
movzx eax, byte [rsp + 0x79]
mov byte [rbp + 0xce], al
movzx eax, byte [rsp + 0x7a]
mov byte [rbp + 0xcf], al
movzx eax, byte [rsp + 0x7b]
mov byte [rbp + 0xd0], al
movzx eax, byte [rsp + 0x7c]
mov byte [rbp + 0xd1], al
movzx eax, byte [rsp + 0x7d]
mov byte [rbp + 0xd2], al
movzx eax, byte [rsp + 0x7e]
mov byte [rbp + 0xd3], al
movzx eax, byte [rsp + 0x7f]
mov byte [rbp + 0xd4], al
movzx eax, byte [rbp - 0x80]
mov byte [rbp + 0xd5], al
movzx eax, byte [rbp - 0x7f]
mov byte [rbp + 0xd6], al
movzx eax, byte [rbp - 0x7e]
mov byte [rbp + 0xd7], al
movzx eax, byte [rbp - 0x7d]
mov byte [rbp + 0xd8], al
movzx eax, byte [rbp - 0x7c]
mov byte [rbp + 0xd9], al
movzx eax, byte [rbp - 0x7b]
mov byte [rbp + 0xda], al
xor eax, eax
mov byte [rbp + 0xdb], al
mov edx, ebx
nop
movsxd rax, edx
lea rcx, [rbp + 0x80]
add rcx, rax
lea eax, [rdx + 0x13]
xor byte [rcx], al
inc edx
cmp edx, 0x5b
jb 0x140024800
mov byte [rbp + 0xdb], 0
lea rax, [0x140000000]
lea rax, [rax + 0x77e90]
mov qword [rbp + 0x130], rax
lea rcx, [rbp + 0x1d8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
or r12d, 0x10
mov dword [rbp + 0x70], r12d
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x138]
lea rcx, [rbp + 0x130]
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 [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x130], rax
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x12c], edx
lea rcx, [rbp + 0x138]
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 [rbp + 0x138], rax
mov byte [rbp + 0x1b4], 0
mov byte [rbp + 0x1a9], 0
lea rcx, [rbp + 0x138]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::_Init_void____ptr64]
mov qword [rbp + 0x1b8], rbx
mov rax, qword [0x1400d82b8]
mov qword [rbp + 0x1ac], rax
mov qword [rbp + 0x1a0], rbx
mov r9d, 0x40
lea r8d, [r9 - 0x3e]
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x138]
call fcn.140020e90
test rax, rax
jne 0x14002492f
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x130]
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 rdx, [rbp + 0x108]
cmp qword [rbp + 0x120], 0xf
cmova rdx, qword [rbp + 0x108]
mov r8, qword [rbp + 0x118]
lea rcx, [rbp + 0x130]
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__::write_char_const____ptr64__long_long___int64_____ptr64]
lea rcx, [rbp + 0x138]
call fcn.14001a200
test rax, rax
jne 0x14002498d
mov rax, qword [rbp + 0x130]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x130]
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]
lea rcx, [0x140078460]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
movups xmm0, xmmword [0x1400783e0]
movups xmmword [rbp - 0x60], xmm0
movzx eax, byte [0x1400783f0]
mov byte [rbp - 0x50], al
mov ecx, ebx
cmp edi, 2
jl 0x140024af2
movdqa xmm5, xmmword [0x140078490]
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm6, xmmword [0x1400784b0]
movdqa xmm0, xmmword [str.2222222222222222]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x5c]
mov r8d, dword [rbp - 0x70]
nop word [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x1400249f0
cmp ecx, 0x11
jge 0x140024b2e
movsxd rax, ecx
lea r8, [rbp - 0x60]
add r8, rax
nop dword [rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x32
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x11
jl 0x140024b00
lea rdx, [rbp - 0x60]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
lea rdx, [0x14001c2b0]
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 rdx, [0x1400d85f8]
lea rcx, [rbp - 0x40]
call fcn.14000a4c0
mov rcx, rax
call fcn.140021f60
mov qword [rbp + 0x70], rax
lea rdx, [rbp + 0x70]
lea rcx, [rbp - 0x10]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__localtime64_s]
movups xmm0, xmmword [rbp - 0x10]
movaps xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rbp]
movaps xmmword [rbp + 0x30], xmm1
mov eax, dword [rbp + 0x10]
mov dword [rbp + 0x40], eax
lea r9, [rbp + 0x20]
lea r8, str._a__m__d__y__H:_M:_S__Z
mov edx, 0x50
lea rcx, [rbp + 0x240]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll_strftime]
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xf0], xmm1
lea rax, [rbp + 0x240]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140024bd0
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0xe0]
call fcn.1400183d0
nop
movups xmm0, xmmword [0x1400783f8]
movups xmmword [rbp - 0x60], xmm0
movsd xmm0, qword [0x140078408]
movsd qword [rbp - 0x50], xmm0
movzx eax, word [0x140078410]
mov word [rbp - 0x48], ax
movzx eax, byte [0x140078412]
mov byte [rbp - 0x46], al
mov ecx, ebx
cmp edi, 2
jl 0x140024d55
movdqa xmm5, xmmword [0x140078490]
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm6, xmmword [0x1400784b0]
movdqa xmm0, xmmword [str.2222222222222222]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x5c]
mov r8d, dword [rbp - 0x70]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x18
jl 0x140024c53
cmp ecx, 0x1b
jge 0x140024d8e
movsxd rax, ecx
lea r8, [rbp - 0x60]
add r8, rax
nop
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x32
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x1b
jl 0x140024d60
lea rdx, [rbp - 0x60]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
lea rdx, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova rdx, qword [rbp + 0xe0]
mov r8, qword [rbp + 0xf0]
mov rcx, rax
call fcn.14001bba0
lea rdx, [0x14001c2b0]
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]
nop
mov rdx, qword [rbp + 0xf8]
cmp rdx, 0xf
jbe 0x140024e19
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024e14
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140024e14
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140073260
lea rdx, [0x1400d85c0]
lea rcx, [rbp - 0x40]
call fcn.14000a4c0
mov rcx, rax
call fcn.140021f60
mov qword [rbp + 0x70], rax
lea rdx, [rbp + 0x70]
lea rcx, [rbp + 0x20]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__localtime64_s]
movups xmm0, xmmword [rbp + 0x20]
movaps xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rbp + 0x30]
movaps xmmword [rbp], xmm1
mov eax, dword [rbp + 0x40]
mov dword [rbp + 0x10], eax
lea r9, [rbp - 0x10]
lea r8, str._a__m__d__y__H:_M:_S__Z
mov edx, 0x50
lea rcx, [rbp + 0x240]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll_strftime]
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xf0], xmm1
lea rax, [rbp + 0x240]
inc rsi
cmp byte [rax + rsi], 0
jne 0x140024e92
mov r8, rsi
lea rdx, [rbp + 0x240]
lea rcx, [rbp + 0xe0]
call fcn.1400183d0
nop
movups xmm0, xmmword [0x140078418]
movups xmmword [rbp - 0x60], xmm0
movzx eax, word [0x140078428]
mov word [rbp - 0x50], ax
cmp byte [0x140078429], 0
je 0x14002504e
mov ecx, ebx
cmp edi, 2
jl 0x140025012
movdqa xmm5, xmmword [0x140078490]
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm6, xmmword [0x1400784b0]
movdqa xmm0, xmmword [str.2222222222222222]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x5c]
mov r8d, dword [rbp - 0x70]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140024f10
cmp ecx, 0x12
jge 0x14002504e
movsxd rax, ecx
lea r8, [rbp - 0x60]
add r8, rax
nop dword [rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x32
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x12
jl 0x140025020
lea rdx, [rbp - 0x60]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
lea rdx, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova rdx, qword [rbp + 0xe0]
mov r8, qword [rbp + 0xf0]
mov rcx, rax
call fcn.14001bba0
lea rdx, [0x14001c2b0]
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]
nop
mov rdx, qword [rbp + 0xf8]
cmp rdx, 0xf
jbe 0x1400250d9
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400250d4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400250d4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140073260
mov byte [rbp - 0x7a], 0
lea rdx, [rbp - 0x7a]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
lea rdx, [0x14001c2b0]
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, [0x1400d83e0]
call fcn.140007550
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], rax
lea rdx, [0x1400d8338]
lea rcx, [rbp - 0x40]
call fcn.14000a4c0
mov r8, rax
lea rdx, [rbp + 0x50]
lea rcx, [0x1400d83e0]
call fcn.140008550
nop
call fcn.14001e250
lea rdx, [0x14001c2b0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
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]
movups xmm0, xmmword [0x140078430]
movups xmmword [rbp - 0x60], xmm0
movsd xmm0, qword [0x140078440]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [0x140078448]
mov dword [rbp - 0x48], eax
cmp byte [0x14007844b], 0
je 0x1400252fe
mov ecx, ebx
cmp edi, 2
jl 0x1400252c2
movdqa xmm5, xmmword [0x140078490]
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm6, xmmword [0x1400784b0]
movdqa xmm0, xmmword [str.2222222222222222]
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x5c]
mov r8d, dword [rbp - 0x70]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x18
jl 0x1400251c0
cmp ecx, 0x1c
jge 0x1400252fe
movsxd rax, ecx
lea r8, [rbp - 0x60]
add r8, rax
nop dword [rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul edx, eax, 0x32
add dl, cl
xor byte [r8], dl
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x1c
jl 0x1400252d0
lea rdx, [rbp - 0x60]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140019680
lea rdx, [0x14001c2b0]
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]
nop
mov ecx, WSAStartup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x140025320
lea rcx, [0x140078460]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov r11, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x75]
call fcn.14001dbb0
mov r10, rax
cmp byte [rax + 0xe], 0
je 0x1400254a0
cmp edi, 2
jl 0x140025463
movdqa xmm4, xmmword [0x1400784e0]
movdqa xmm2, xmmword [0x140078490]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400784b0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
mov eax, dword [str.2222222222222222]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r10]
xorps xmm2, xmm0
movd dword [r10], xmm2
movdqa xmm3, xmmword [0x1400784a0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400784b0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1400784c0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r10 + 4]
xorps xmm2, xmm0
movd dword [r10 + 4], xmm2
mov ebx, 8
movsxd r9, ebx
add r9, r10
nop dword [rax]
mov eax, 0x51eb851f
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul r8d, eax, 0x32
add r8b, bl
xor byte [r9], r8b
inc ebx
lea r9, [r9 + 1]
cmp ebx, 0xf
jl 0x140025470
mov rdx, r10
mov rcx, r11
call fcn.140019680
lea rdx, [0x14001c2b0]
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]
xor edx, edx
lea rcx, [rbp + 0x50]
call fcn.14001dba0
mov rcx, rax
call fcn.14001e5c0
int3