Function at 0x140170260
Capabilities:
Authenticate hmac
Create new key via cryptacquirecontext
Generate random numbers via winapi
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
nop
mov qword [rsp - 8], rbp
sub rsp, 8
push rsi
nop
push 0x5d5eb5e
mov qword [rsp], rdi
nop
push 0x3fd7fa34
mov qword [rsp], r12
push r11
mov qword [rsp], r13
push r14
push rdx
mov qword [rsp], r15
lea rbp, [rsp - 0x260]
sub rsp, 0x360
movzx r12d, dl
xchg rdi, r11
mov r11, rcx
xchg r11, rdi
xor r14d, r14d
mov dword [rbp + 0x2a0], r14d
xchg rcx, r11
mov qword [rbp + 0x2b8], r11
xchg r11, rcx
sub rcx, 0xfffffffffffffa28
call fcn.14007b4f0
xchg rcx, rax
mov rdx, rcx
xchg rcx, rax
mov dword [rsp + 0x20], 0x55181693
sub dword [rsp + 0x20], 0x4ceb3990
xor dword [rsp + 0x20], 0x42962f81
add dword [rsp + 0x20], 0x225c30d9
sub dword [rsp + 0x20], 0x58047db9
add dword [rsp + 0x20], 0x1fed3b7e
xor dword [rsp + 0x20], 0x34ffe121
lea r9d, [r14 + 0x40]
lea r8d, [r14 + 0x21]
lea rcx, [rbp + 0x150]
call fcn.140087560
nop
cmp qword [rbp + 0x1e0], r14
je 0x140171ec7
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
xchg r13, r14
mov qword [rbp - 0x10], r13
xchg r14, r13
mov qword [rbp - 8], 0x2f8d9426
sub qword [rbp - 8], 0x237767a9
add qword [rbp - 8], 0x269a159f
xor qword [rbp - 8], 0x7b4e73b1
sub qword [rbp - 8], 0x1f9409b
xor qword [rbp - 8], 0x2dfbfe16
sub qword [rbp - 8], 0x35d924ce
xor qword [rbp - 8], 0x24a110ed
xor qword [rbp - 8], 0x1484fadc
mov word [rbp - 0x20], r14w
xchg r12, rbp
movups xmmword [r12 - 0x40], xmm0
xchg r12, rbp
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], 0x3ec52339
sub qword [rbp - 0x28], 0x11e060ac
xor qword [rbp - 0x28], 0x53c1caba
xor qword [rbp - 0x28], 0x4eb449cd
xor qword [rbp - 0x28], 0x60a30de2
sub qword [rbp - 0x28], 0x4a1f8f73
sub qword [rbp - 0x28], 0x712bc9e
mov word [rbp - 0x40], r14w
movups xmmword [rsp + 0x50], xmm0
xchg r14, rdi
mov qword [rsp + 0x60], rdi
xchg r14, rdi
mov qword [rsp + 0x68], 0x7b2a8cfb
sub qword [rsp + 0x68], 0x1a2b6d
sub qword [rsp + 0x68], 0xec326af
sub qword [rsp + 0x68], 0x4ef66099
sub qword [rsp + 0x68], 0x755f3ab
xor qword [rsp + 0x68], 0x6c8a0b12
sub qword [rsp + 0x68], 0x42449316
xor qword [rsp + 0x68], 0x32b3be8
sub qword [rsp + 0x68], 0x3b6d6194
mov word [rsp + 0x50], r14w
movups xmmword [rsp + 0x70], xmm0
xchg r14, r15
mov qword [rbp - 0x80], r15
xchg r15, r14
mov qword [rbp - 0x78], 0x62b1753e
add qword [rbp - 0x78], 0xbee0c7a
xor qword [rbp - 0x78], 0x73e8a911
add qword [rbp - 0x78], 0x827ed23
xor qword [rbp - 0x78], 0x3670b3de
xor qword [rbp - 0x78], 0x551021fe
xor qword [rbp - 0x78], 0x317e943f
sub qword [rbp - 0x78], 0x778113cc
mov word [rsp + 0x70], r14w
xchg r15, rax
mov r15, qword [rbp + 0x150]
xchg r15, rax
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
mov dl, 0x30
sub dl, 0x17
add dl, 0xa
add dl, 0x42
sub dl, 0x3e
xor dl, 0x5c
xor dl, 0x71
call qword [sym.imp.MSVCP140.dll_public:_wchar_t___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::widen_char_const___ptr64]
movzx r8d, ax
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x150]
call fcn.140085b80
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
mov dl, 0x58
sub dl, 0x21
xor dl, 0x69
xor dl, 0x4b
xor dl, 0x49
sub dl, 0x52
call qword [sym.imp.MSVCP140.dll_public:_wchar_t___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::widen_char_const___ptr64]
movzx r8d, ax
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x150]
call fcn.140085b80
xchg r14, rax
mov r14, qword [rbp + 0x150]
xchg r14, rax
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
mov dl, 0x7e
sub dl, 0x7e
add dl, 8
add dl, 3
add dl, 0x6c
sub dl, 0x50
xor dl, 1
add dl, 0x1e
sub dl, 0x3a
call qword [sym.imp.MSVCP140.dll_public:_wchar_t___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::widen_char_const___ptr64]
movzx r8d, ax
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x150]
call fcn.140085b80
xchg rbx, rax
mov rbx, qword [rbp + 0x150]
xchg rbx, rax
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
mov dl, 0x51
sub dl, 9
xor dl, 0x70
sub dl, 3
xor dl, 0x30
xor dl, 0x6f
xor dl, 0x60
call qword [sym.imp.MSVCP140.dll_public:_wchar_t___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::widen_char_const___ptr64]
movzx r8d, ax
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x150]
call fcn.140085b80
lea rcx, [rbp + 0x160]
call fcn.1401761e0
test rax, rax
jne 0x1401705f0
xchg rbx, rax
mov rbx, qword [rbp + 0x150]
xchg rbx, rax
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
xor r8d, r8d
lea edx, [r14 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool____ptr64]
xchg r14, rsi
mov qword [rbp + 0x2b0], rsi
xchg r14, rsi
mov r15d, 0x6aa4704e
sub r15d, 0x5c116871
xor r15d, 0x3f77f128
xor r15d, 0x7440a808
xor r15d, 0x1e05f4fa
xor r15d, 0x29c3d631
sub r15d, 0x636a0ed6
sub r15d, 0xef86d56
cmp qword [rsp + 0x60], 0
je 0x1401706fd
test r12b, r12b
jne 0x1401706fd
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xchg rsi, rax
mov rax, rsi
xchg rsi, rax
lea rbx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rbx, qword [rsp + 0x50]
mov dword [rax], r14d
mov r8d, r15d
lea rdx, [rbp + 0x2a0]
xchg rcx, r12
mov r12, rbx
xchg r12, rcx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstoull]
cmp rbx, qword [rbp + 0x2a0]
je 0x140171ed4
cmp dword [rsi], 0x22
je 0x140171ee1
mov qword [rbp + 0x2b0], rax
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xchg r11, rax
mov rsi, r11
xchg r11, rax
lea rbx, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rbx, qword [rsp + 0x70]
mov dword [rax], r14d
mov r8d, r15d
lea rdx, [rbp + 0x2a0]
xchg rcx, rbx
mov rbx, rcx
xchg rbx, rcx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstoull]
xchg rdx, r15
mov rdx, rax
xchg r15, rdx
cmp rbx, qword [rbp + 0x2a0]
je 0x140171eee
cmp dword [rsi], 0x22
je 0x140171eba
jmp 0x140170ae2
mov r12b, 0x4e
sub r12b, 0x45
xor r12b, 0x6e
sub r12b, 0x28
xor r12b, 0x70
sub r12b, 0x4e
mov dword [rsp + 0x20], 0x45590a4d
sub dword [rsp + 0x20], 0xcc92b88
xor dword [rsp + 0x20], 0x21e64909
xor dword [rsp + 0x20], 0x3479e6b3
add dword [rsp + 0x20], 0x2159384f
add dword [rsp + 0x20], 0x14c61dc2
add dword [rsp + 0x20], 0x8cd03870
mov r9d, 0x33ebab62
add r9d, 0x3c60fd85
sub r9d, 0x33b801da
xor r9d, 0x7292dfb5
sub r9d, 0x3dec8348
sub r9d, 0x1019f56f
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x2a0]
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
je 0x140171efb
lea r8, [rbp + 0x2b0]
mov edx, 0x7e773446
sub edx, 0x5f8415e9
xor edx, 0x67b62179
sub edx, 0x4a8cf2df
sub edx, 0x2a3e1e71
add edx, 0x6c49ca14
sub edx, 0x42b408b1
add edx, 0x2dad6ea
xor edx, 0x30eac629
xchg r8, rcx
mov r8, qword [rbp + 0x2a0]
xchg r8, rcx
call qword [sym.imp.ADVAPI32.dll_CryptGenRandom]
xor edx, edx
mov rcx, qword [rbp + 0x2a0]
call qword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
mov rdx, qword [rbp + 0x2b0]
lea rcx, [rbp - 0x60]
call fcn.1401792a0
mov rbx, rax
lea rax, [rsp + 0x50]
cmp rax, rbx
je 0x140170904
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x140170867
lea rdx, [rdx*2 + 2]
xchg r10, rcx
mov r10, qword [rsp + 0x50]
xchg r10, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140170862
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffffc053b51a
sub rax, 0xffffffffc053b522
cmp rax, 0x1f
ja 0x140170947
call fcn.1401fcb00
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0x46b17119
xor qword [rsp + 0x68], 0xf877d37
add qword [rsp + 0x68], 0x32bf8f2d
add qword [rsp + 0x68], 0x3bcce40
sub qword [rsp + 0x68], 0x7f0b3353
sub qword [rsp + 0x68], 0xa73641
mov word [rsp + 0x50], r14w
xchg rbx, r8
movups xmm0, xmmword [r8]
xchg r8, rbx
movups xmmword [rsp + 0x50], xmm0
xchg rdi, rbx
movups xmm1, xmmword [rdi + 0x10]
xchg rbx, rdi
movups xmmword [rsp + 0x60], xmm1
xchg rdi, r14
mov qword [rbx + 0x10], rdi
xchg r14, rdi
mov qword [rbx + 0x18], 0x6225ba38
sub qword [rbx + 0x18], 0x54c9f7ed
sub qword [rbx + 0x18], 0x955e113
add qword [rbx + 0x18], 0x5a74beda
sub qword [rbx + 0x18], 0x5b0ef1d2
sub qword [rbx + 0x18], 0x36bae39
mov word [rbx], r14w
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x140170953
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14017094e
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x14017094e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcb00
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
xchg rbp, rax
mov r15, rbp
xchg rbp, rax
xchg rdx, rax
mov rax, rdx
xchg rdx, rax
lea rcx, [rbp - 0x60]
call fcn.1401792a0
xchg rsi, rax
mov rbx, rsi
xchg rsi, rax
lea rax, [rsp + 0x70]
cmp rax, rbx
je 0x140170a7a
xchg r10, rdx
mov r10, qword [rbp - 0x78]
xchg rdx, r10
cmp rdx, 8
jb 0x1401709e6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x1401709e1
neg rdx
add rdx, 0xffffffffffffffd9
neg rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
neg rax
add rax, 8
neg rax
cmp rax, 0x1f
ja 0x140170ad6
call fcn.1401fcb00
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x78], 0x1b06a1cb
add qword [rbp - 0x78], 0x25662b0e
add qword [rbp - 0x78], 0x36dc3216
sub qword [rbp - 0x78], 0x60af5950
add qword [rbp - 0x78], 0x5751af95
xor qword [rbp - 0x78], 0x6deb5533
mov word [rsp + 0x70], r14w
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x70], xmm0
xchg rsi, rbx
movups xmm1, xmmword [rsi + 0x10]
xchg rsi, rbx
xchg rdx, rbp
movups xmmword [rdx - 0x80], xmm1
xchg rdx, rbp
xchg rdi, r14
mov qword [rbx + 0x10], rdi
xchg rdi, r14
mov qword [rbx + 0x18], 0x1a736c9f
add qword [rbx + 0x18], 0x614074e3
xor qword [rbx + 0x18], 0x3fc68aff
add qword [rbx + 0x18], 0x2199b7e4
add qword [rbx + 0x18], 0x166234e6
sub qword [rbx + 0x18], 0x7c715840
mov word [rbx], r14w
xchg rdx, rsi
mov rsi, qword [rbp - 0x48]
xchg rsi, rdx
cmp rdx, 8
jb 0x140170ae2
lea rdx, [rdx*2 + 2]
xchg r11, rcx
mov r11, qword [rbp - 0x60]
xchg rcx, r11
xchg r14, rax
mov r14, rcx
xchg r14, rax
cmp rdx, 0x1000
jb 0x140170add
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffff928c3d8b
sub rax, 0xffffffff928c3d93
cmp rax, 0x1f
jbe 0x140170add
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcb00
mov ecx, dword [rdi + 0x48]
mov qword [rbp + 0x2a0], rdi
mov qword [rbp - 0x70], rdi
xchg rdi, rsi
mov qword [rbp - 0x68], rsi
xchg rsi, rdi
test ecx, ecx
je 0x140170cde
sub ecx, 1
je 0x140170bf2
cmp ecx, 1
jne 0x140170cde
xchg r9, rax
mov r9, qword [rdi + 0x30]
xchg r9, rax
movabs rbx, 0x2aaaaaaa3a880308
add rbx, 0x2098af58
sub rbx, 0x1f77f95b
xor rbx, 0x48849a8c
sub rbx, 0x44c4e1fc
xor rbx, 0xca0b42a
add rbx, 0x7fffffff
add rbx, 0x7e2b505
cmp rax, qword [rdi + 0x38]
jne 0x140170be3
mov rcx, qword [rdi + 0x40]
sub rcx, rax
xchg rbx, r13
mov rax, r13
xchg rbx, r13
imul rcx
sar rdx, 1
sar rdx, 1
xchg rbx, rdx
mov rax, rbx
xchg rbx, rdx
shr rax, 9
shr rax, 0x2a
shr rax, 9
shr rax, 1
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x140170bd7
mov edx, 0x667ce35a
xor edx, 0x6e811625
add edx, 0x1fb45bff
add edx, 0x35e07c99
xor edx, 0x378d4ced
sub edx, 0x159bc52d
xor edx, 0x5383bd99
lea rcx, [rdi + 0x30]
call fcn.140174e70
lea rcx, [rbp + 0x2a0]
call fcn.14009c7f0
xchg rdx, r15
mov r15, qword [rdi + 0x30]
xchg rdx, r15
jmp 0x140170d9e
mov rax, qword [rdi + 0x18]
movabs rbx, 0x2aaaaaaa3c7ca30f
add rbx, 0x2d5d2c7c
xor rbx, 0x3ea063f3
xor rbx, 0x3a90ac7
add rbx, 0x29419c3
add rbx, 0x9e08cc7
add rbx, 0x10c3992c
sub rbx, 0x62680334
add rbx, 0x7fffffff
add rbx, 0x1b09c76b
cmp rax, qword [rdi + 0x20]
jne 0x140170ccf
xchg rcx, r8
mov r8, qword [rdi + 0x28]
xchg r8, rcx
sub rcx, rax
xchg r15, rax
mov r15, rbx
xchg r15, rax
imul rcx
sar rdx, 2
xchg rdx, rcx
mov rax, rcx
xchg rdx, rcx
shr rax, 0x3b
shr rax, 1
shr rax, 2
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x140170cc6
mov edx, 0x37398f96
add edx, 0x106b0077
sub edx, 0x3d18d145
add edx, 0x731f847d
sub edx, 0x41962726
add edx, 0x21a253e9
sub edx, 0x1c19043c
add edx, 0x2c907889
xor edx, 0x6e2ee401
lea rcx, [rdi + 0x18]
call fcn.140174e70
lea rcx, [rbp - 0x68]
call fcn.140136510
xchg r11, rdx
mov r11, qword [rdi + 0x18]
xchg r11, rdx
jmp 0x140170d9e
mov rax, qword [rdi]
movabs rbx, 0x2aaaaaaa4805551b
xor rbx, 0xc1cb06f
xor rbx, 0x4751db28
add rbx, 0x58ddd060
sub rbx, 0x3bad40ee
add rbx, 0x2da8f570
add rbx, 0x5c88e76d
cmp rax, qword [rdi + 8]
jne 0x140170d9b
xchg r9, rcx
mov r9, qword [rdi + 0x10]
xchg r9, rcx
sub rcx, rax
mov rax, rbx
imul rcx
sar rdx, 2
xchg rdi, rax
mov rdi, rdx
xchg rdi, rax
shr rax, 3
shr rax, 0x2e
shr rax, 2
shr rax, 9
shr rax, 2
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x140170d92
mov edx, 0x4f628b11
sub edx, 0x8c916c0
sub edx, 0x45d7a195
add edx, 0x5ea3e33c
sub edx, 0x1ef640d4
xor edx, 0x406f7570
xchg r10, rcx
mov r10, rdi
xchg r10, rcx
call fcn.140174e70
lea rcx, [rbp - 0x70]
call fcn.1400f30f0
mov rdx, qword [rdi]
neg rdx
add rdx, 0xfffffffffffff8b0
neg rdx
lea rcx, [rbp + 0x110]
call fcn.14007a8a0
mov r14d, 0x45cf5364
sub r14d, 0x3e03c66e
add r14d, 0x1cd811b4
xor r14d, 0x2c33e7ae
xor r14d, 0x44ef2196
sub r14d, 0xc8511c6
sub r14d, 0x3ffa46cb
lea rcx, [rbp + 0x110]
call fcn.14007b0f0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xor ecx, ecx
xchg r11, rcx
mov qword [rsp + 0x40], r11
xchg r11, rcx
mov qword [rsp + 0x48], rcx
nop
movabs r8, 0xffffffff50cc7217
add r8, 0x34a2c78
sub r8, 0x2fc94fad
xor r8, 0x63789951
sub r8, 0x1993477e
xor r8, 0x293593d2
add r8, 0x6acfffb1
add r8, 0x7fffffff
xor r8, 0x1098fc68
nop dword [rax]
inc r8
cmp word [rax + r8*2], cx
jne 0x140170e53
xchg rdi, rax
mov rdx, rdi
xchg rdi, rax
lea rcx, [rsp + 0x30]
call fcn.140030d00
nop
lea rcx, [rbp + 0x110]
call fcn.14007adb0
test r15, r15
jne 0x1401711cf
mov ecx, dword [rdi + 0x48]
mov qword [rbp + 0x2a0], rdi
xchg rdi, r12
mov qword [rbp - 0x68], r12
xchg r12, rdi
xchg r12, rdi
mov qword [rbp - 0x70], r12
xchg rdi, r12
test ecx, ecx
je 0x140170fe2
sub ecx, 1
je 0x140170f38
cmp ecx, 1
jne 0x140170fe2
xchg rsi, rax
mov rsi, qword [rdi + 0x30]
xchg rsi, rax
cmp rax, qword [rdi + 0x38]
jne 0x140170f29
mov rcx, qword [rdi + 0x40]
sub rcx, rax
xchg rbx, r15
mov rax, r15
xchg rbx, r15
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 4
shr rax, 0x1d
shr rax, 5
shr rax, 0x16
shr rax, 2
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x140170f1d
lea edx, [r15 + 0x54]
lea rcx, [rdi + 0x30]
call fcn.140174e70
lea rcx, [rbp + 0x2a0]
call fcn.14009c7f0
xchg rdx, r12
mov r12, qword [rdi + 0x30]
xchg r12, rdx
jmp 0x140171088
mov rax, qword [rdi + 0x18]
cmp rax, qword [rdi + 0x20]
jne 0x140170fd3
xchg r11, rcx
mov r11, qword [rdi + 0x28]
xchg r11, rcx
sub rcx, rax
xchg rbx, rdx
mov rax, rdx
xchg rdx, rbx
imul rcx
sar rdx, 2
xchg rsi, rdx
mov rax, rsi
xchg rsi, rdx
shr rax, 0x19
shr rax, 4
shr rax, 0xb
shr rax, 0x14
shr rax, 1
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x140170fca
mov edx, 0x19ed3383
sub edx, 0x1612d1d0
xor edx, 0xd0625b6
add edx, 0x166cbcfa
add edx, 0x52e3018c
xor edx, 0x44bfa36f
add edx, 0x34dddd08
sub edx, 0x71717e98
lea rcx, [rdi + 0x18]
call fcn.140174e70
lea rcx, [rbp - 0x70]
call fcn.140136510
xchg rsi, rdx
mov rsi, qword [rdi + 0x18]
xchg rdx, rsi
jmp 0x140171088
xchg rcx, rax
mov rcx, qword [rdi]
xchg rcx, rax
cmp rax, qword [rdi + 8]
jne 0x140171085
xchg r10, rcx
mov r10, qword [rdi + 0x10]
xchg rcx, r10
sub rcx, rax
xchg rdx, rax
mov rdx, rbx
xchg rdx, rax
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 7
shr rax, 0x21
shr rax, 1
shr rax, 6
shr rax, 4
shr rax, 6
shr rax, 1
shr rax, 4
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14017107c
mov edx, 0x60efdd3
add edx, 0x128bdbab
xor edx, 0x614f5f32
sub edx, 0x49d8aee9
add edx, 0x42b8097
xor edx, 0x5fce0f2a
xor edx, 0x4e7e94c1
xor edx, 0x2598cc45
xchg rcx, rbp
mov rbp, rdi
xchg rbp, rcx
call fcn.140174e70
lea rcx, [rbp - 0x68]
call fcn.1400f30f0
mov rdx, qword [rdi]
neg rdx
add rdx, 0xfffffffffffffa90
neg rdx
lea rcx, [rbp - 0x60]
call fcn.14007a8a0
mov r14d, 0x4791004
add r14d, 0x3b272504
add r14d, 0x348f8ee1
xor r14d, 0x2c04a405
xor r14d, 0x39f793ea
xor r14d, 0x14e186b
xor r14d, 0x29e17721
xor r14d, 0x381790be
xor r14d, 0x71640bf1
lea rcx, [rbp - 0x60]
call fcn.14007b0f0
xchg r9, r12
mov r12, rax
xchg r9, r12
nop
movabs rsi, 0xffffffff2fa6723d
add rsi, 0x1a5462a0
sub rsi, 0x3aa3abc3
add rsi, 0x62f54e53
xor rsi, 0x611a63bb
add rsi, 0x63343c9
xor rsi, 0x3579819e
sub rsi, 0x89c23fa
add rsi, 0x7fffffff
add rsi, 0x5bab4af9
inc rsi
cmp word [rax + rsi*2], 0
jne 0x140171138
xchg r15, rbx
mov rbx, qword [rsp + 0x40]
xchg rbx, r15
xchg rdi, rcx
mov rdi, qword [rsp + 0x48]
xchg rcx, rdi
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
sub rax, r15
cmp rsi, rax
ja 0x1401711a6
lea rax, [r15 + rsi]
mov qword [rsp + 0x40], rax
lea rbx, [rsp + 0x30]
cmp rcx, 8
cmovae rbx, qword [rsp + 0x30]
lea rcx, [rbx + r15*2]
lea r8, [rsi + rsi]
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
lea rax, [r15 + rsi]
xor ecx, ecx
mov word [rbx + rax*2], cx
jmp 0x1401711c1
mov qword [rsp + 0x20], rsi
movzx r8d, byte [rbp + 0x2a0]
mov rdx, rsi
lea rcx, [rsp + 0x30]
call fcn.140034ff0
nop
lea rcx, [rbp - 0x60]
call fcn.14007adb0
jmp 0x1401712eb
mov r8b, 0x6f
xor r8b, 0x2a
sub r8b, 0x45
add r8b, 0x40
xor r8b, 0x20
xor r8b, 0x61
mov rdx, r15
lea rcx, [rbp - 0x60]
call fcn.1401f4e40
mov r9, rax
xchg r14, rsi
mov r14, qword [rax + 0x10]
xchg rsi, r14
cmp qword [rax + 0x18], 8
jb 0x14017120d
mov r9, qword [rax]
mov r15, qword [rsp + 0x40]
xchg r11, rcx
mov r11, qword [rsp + 0x48]
xchg r11, rcx
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
sub rax, r15
cmp rsi, rax
ja 0x140171271
lea rax, [r15 + rsi]
xchg r9, rax
mov qword [rsp + 0x40], r9
xchg r9, rax
lea rbx, [rsp + 0x30]
cmp rcx, 8
cmovae rbx, qword [rsp + 0x30]
lea rcx, [rbx + r15*2]
lea r8, [rsi + rsi]
xchg r15, r9
mov rdx, r15
xchg r15, r9
call sub.VCRUNTIME140.dll_memmove
lea rax, [rsi + r15]
xor ecx, ecx
mov word [rbx + rax*2], cx
jmp 0x140171292
xchg rsi, r11
mov qword [rsp + 0x20], r11
xchg r11, rsi
movzx r8d, byte [rbp + 0x2a0]
mov rdx, rsi
lea rcx, [rsp + 0x30]
call fcn.140034ff0
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x1401712eb
lea rdx, [rdx*2 + 2]
xchg rcx, rsi
mov rsi, qword [rbp - 0x60]
xchg rcx, rsi
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x1401712e6
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401712e6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcb00
mov r15, qword [rdi + 0x2d0]
xchg rcx, r9
mov r9, qword [rsp + 0x40]
xchg r9, rcx
inc rcx
mov eax, 0x37bcf8d8
add eax, 0x17460ea6
add eax, 0x201595cb
sub eax, 0x4c454df3
xor eax, 0x5ad86199
sub eax, 0x254af49c
xor eax, 0x24655c4c
sub eax, 0x76a5667d
mul rcx
xchg rdx, rax
mov rsi, rdx
xchg rdx, rax
pushf
movabs rax, 0xffffffff32425103
xor rax, 0x1a09ce35
add rax, 0x11e52110
sub rax, 0x26cce080
add rax, 0x50ac028f
add rax, 0x7fffffff
xor rax, 0x1bf01dab
popf
cmovo rsi, rax
xchg rcx, r10
mov r10, rsi
xchg rcx, r10
call fcn.1401fcb08
xchg r9, rax
mov rbx, r9
xchg r9, rax
test rax, rax
je 0x1401713a0
xchg r8, rsi
mov rsi, r8
xchg rsi, r8
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
xor esi, esi
jmp 0x1401713a4
xor esi, esi
mov ebx, esi
lea r8, [rsp + 0x30]
cmp qword [rsp + 0x48], 8
cmovae r8, qword [rsp + 0x30]
xchg rsi, rdx
mov rsi, qword [rsp + 0x40]
xchg rdx, rsi
inc rdx
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
xchg r8, rbx
mov qword [rdi + 0x2d0], r8
xchg rbx, r8
mov rdx, rbx
mov rcx, qword [rdi + 0x2b0]
call fcn.14017d6a0
test r15, r15
je 0x1401713ff
xchg r9, r15
mov rcx, r9
xchg r9, r15
call fcn.1401fcb00
test r12b, r12b
je 0x1401719df
lea rcx, [rdi + 0x5d8]
call fcn.14007b4f0
mov rbx, rax
lea rax, [0x140003480]
xchg r12, rax
mov qword [rbp], r12
xchg r12, rax
lea rcx, [rbp + 0xa8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::constructor_void____ptr64]
nop
or r14d, 4
mov dword [rbp + 0x2a0], r14d
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 8]
lea rcx, [rbp]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::constructor_class_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t______ptr64__bool____ptr64]
nop
xchg r11, rax
mov r11, qword [rbp]
xchg r11, rax
movsxd rcx, dword [rax + 4]
lea r14, [0x140003478]
xchg r10, r14
mov qword [rbp + rcx], r10
xchg r14, r10
mov rax, qword [rbp]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx - 4], edx
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::constructor_void____ptr64]
lea rax, [0x1400033f0]
mov qword [rbp + 8], rax
mov byte [rbp + 0x84], 0x52
xor byte [rbp + 0x84], 0x28
sub byte [rbp + 0x84], 0x3d
xor byte [rbp + 0x84], 0x6b
add byte [rbp + 0x84], 6
sub byte [rbp + 0x84], 0x38
sub byte [rbp + 0x84], 0x24
mov byte [rbp + 0x7a], 0x18
add byte [rbp + 0x7a], 0x63
sub byte [rbp + 0x7a], 0x63
add byte [rbp + 0x7a], 0x22
add byte [rbp + 0x7a], 0x44
sub byte [rbp + 0x7a], 0x3f
xor byte [rbp + 0x7a], 0xb
sub byte [rbp + 0x7a], 0x34
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::_Init_void____ptr64]
xchg rsi, r11
mov qword [rbp + 0x88], r11
xchg rsi, r11
mov rax, qword [0x140217068]
mov qword [rbp + 0x7c], rax
xchg r13, rsi
mov qword [rbp + 0x70], r13
xchg r13, rsi
mov r9d, 0x145e0337
add r9d, 0x16988686
xor r9d, 0x14f16445
sub r9d, 0x11267b58
xor r9d, 0x6876bf5f
sub r9d, 0x4497cdbf
lea r8d, [r9 - 0xe]
xchg r10, rdx
mov r10, rbx
xchg rdx, r10
lea rcx, [rbp + 8]
call fcn.140177420
test rax, rax
jne 0x14017157f
xchg r12, rax
mov r12, qword [rbp]
xchg r12, rax
movsxd rcx, dword [rax + 4]
lea rax, [rbp]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool____ptr64]
nop
cmp qword [rbp + 0x88], 0
je 0x140171ead
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rdx, qword [rbp - 0x20]
xchg r8, r14
mov r14, qword [rbp - 0x10]
xchg r14, r8
lea rcx, [rbp]
call fcn.140081910
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
mov ebx, 0x3f514475
xor ebx, 0x182f92d
sub ebx, 0xc55ffee
xor ebx, 0x685da905
sub ebx, 0xba79da6
add ebx, 0x122f04fc
xor ebx, 0x527cbfd
sub ebx, 0x6580b02e
movzx edx, bx
call fcn.14007d810
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rdx, qword [rbp - 0x40]
xchg r10, r8
mov r10, qword [rbp - 0x30]
xchg r10, r8
lea rcx, [rbp]
call fcn.140081910
xchg rcx, r10
mov r10, rax
xchg r10, rcx
movzx edx, bx
call fcn.14007d810
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rdx, qword [rsp + 0x50]
xchg r8, r12
mov r12, qword [rsp + 0x60]
xchg r12, r8
lea rcx, [rbp]
call fcn.140081910
mov rcx, rax
movzx edx, bx
call fcn.14007d810
lea rdx, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rdx, qword [rsp + 0x70]
mov r8, qword [rbp - 0x80]
lea rcx, [rbp]
call fcn.140081910
lea rcx, [rbp + 8]
cmp qword [rbp + 0x88], 0
je 0x140171904
call qword [sym.imp.MSVCP140.dll_protected:_wchar_t____ptr64___cdecl_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::eback_void_const___ptr64]
lea rcx, [rbp + 0x78]
cmp rax, rcx
jne 0x1401716b7
xchg r11, r9
mov r11, qword [rbp + 0x98]
xchg r9, r11
xchg rdx, r9
mov r9, qword [rbp + 0x90]
xchg r9, rdx
mov r8, rdx
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::setg_wchar_t____ptr64__wchar_t____ptr64__wchar_t____ptr64____ptr64]
cmp qword [rbp + 0x70], 0
je 0x1401717a9
cmp byte [rbp + 0x7a], 0
je 0x1401717a9
mov rax, qword [rbp + 8]
xchg r10, r8
mov r10, qword [rax + 0x18]
xchg r10, r8
lea rax, [0x140177630]
mov ebx, 0x2ce08406
xor ebx, 0x681de38b
add ebx, 0x161c03d9
sub ebx, 0x19a30448
sub ebx, 0x2d4ce4d4
add ebx, 0x31c1713b
xor ebx, 0x3df79804
sub ebx, 0x781c6b82
lea rcx, [rbp + 8]
mov edx, ebx
cmp r8, rax
jne 0x140171729
call 0x140177630
jmp 0x14017172c
call r8
cmp bx, ax
jne 0x14017173c
xor al, al
jmp 0x1401717bb
lea rax, [rbp + 0x2a0]
xchg rbx, rax
mov qword [rsp + 0x20], rbx
xchg rbx, rax
lea r9, [rbp + 0x148]
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x7c]
mov rcx, qword [rbp + 0x70]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::codecvt_wchar_t__char__struct__Mbstatet_::unshift_struct__Mbstatet____ptr64__char____ptr64__char____ptr64__char____ptr64____ptr64_const___ptr64]
test eax, eax
je 0x140171873
sub eax, 1
je 0x14017188b
cmp eax, 2
je 0x140171789
xor al, al
jmp 0x1401717bb
mov byte [rbp + 0x7a], 0x48
add byte [rbp + 0x7a], 0x1a
sub byte [rbp + 0x7a], 0x1f
sub byte [rbp + 0x7a], 0x43
add byte [rbp + 0x7a], 0x2a
xor byte [rbp + 0x7a], 0x77
sub byte [rbp + 0x7a], 0x35
sub byte [rbp + 0x7a], 0x28
mov al, 0x76
xor al, 0x46
add al, 0x3a
xor al, 0x1e
add al, 3
sub al, 0x19
sub al, 0x26
xor al, 0x78
sub al, 0x3f
lea rbx, [rbp + 8]
test al, al
cmove rbx, rsi
mov rcx, qword [rbp + 0x88]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test eax, eax
cmovne rbx, rsi
mov byte [rbp + 0x84], 0x30
xor byte [rbp + 0x84], 0x5f
sub byte [rbp + 0x84], 0x36
sub byte [rbp + 0x84], 0x24
add byte [rbp + 0x84], 0x65
add byte [rbp + 0x84], 1
sub byte [rbp + 0x84], 0x68
add byte [rbp + 0x84], 1
sub byte [rbp + 0x84], 0x14
mov byte [rbp + 0x7a], 0x3a
add byte [rbp + 0x7a], 9
xor byte [rbp + 0x7a], 0x61
sub byte [rbp + 0x7a], 0x22
xor byte [rbp + 0x7a], 0xf
add byte [rbp + 0x7a], 0x20
add byte [rbp + 0x7a], 0x3c
sub byte [rbp + 0x7a], 6
sub byte [rbp + 0x7a], 0x65
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::_Init_void____ptr64]
mov qword [rbp + 0x88], rsi
mov rax, qword [0x140217068]
xchg r12, rax
mov qword [rbp + 0x7c], r12
xchg r12, rax
xchg r11, rsi
mov qword [rbp + 0x70], r11
xchg rsi, r11
test rbx, rbx
jne 0x1401719a0
jmp 0x140171983
mov byte [rbp + 0x7a], 0x56
sub byte [rbp + 0x7a], 0x2c
add byte [rbp + 0x7a], 0x27
xor byte [rbp + 0x7a], 0x7a
add byte [rbp + 0x7a], 0x52
sub byte [rbp + 0x7a], 0x7d
lea rax, [rbp + 0x128]
xchg rbx, r13
mov r13, qword [rbp + 0x2a0]
xchg rbx, r13
sub rbx, rax
je 0x1401718f8
mov r9, qword [rbp + 0x88]
xchg r8, rbx
mov rbx, r8
xchg r8, rbx
mov edx, 0x269ee79a
sub edx, 0x10d13241
sub edx, 0x7263528
add edx, 0x326530b6
xor edx, 0x2a581628
sub edx, 0x6b54a6ce
lea rcx, [rbp + 0x128]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rbx, rax
je 0x1401718f8
xor al, al
jmp 0x1401717bb
cmp byte [rbp + 0x7a], 0
sete al
jmp 0x1401717bb
mov byte [rbp + 0x84], 0x3b
sub byte [rbp + 0x84], 0x16
add byte [rbp + 0x84], 0x2e
xor byte [rbp + 0x84], 0x52
xor byte [rbp + 0x84], 0x21
add byte [rbp + 0x84], 0xd
add byte [rbp + 0x84], 0xc
add byte [rbp + 0x84], 0x28
sub byte [rbp + 0x84], 0x61
mov byte [rbp + 0x7a], 0x3c
add byte [rbp + 0x7a], 1
sub byte [rbp + 0x7a], 0x35
xor byte [rbp + 0x7a], 0x12
add byte [rbp + 0x7a], 0x16
add byte [rbp + 0x7a], 0x1c
add byte [rbp + 0x7a], 0xd
add byte [rbp + 0x7a], 9
sub byte [rbp + 0x7a], 0x62
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_wchar_t__struct_std::char_traits_wchar_t__::_Init_void____ptr64]
mov qword [rbp + 0x88], rsi
mov rax, qword [0x140217068]
mov qword [rbp + 0x7c], rax
mov qword [rbp + 0x70], rsi
mov rax, qword [rbp]
movsxd rcx, dword [rax + 4]
lea rax, [rbp]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool____ptr64]
nop
mov rax, qword [rbp]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx], r14
mov rax, qword [rbp]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx - 4], edx
lea rcx, [rbp + 8]
call fcn.140090050
lea rcx, [rbp + 0x10]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
lea rcx, [rbp + 0xa8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
xchg rcx, r15
mov r15, qword [rdi + 0x50]
xchg r15, rcx
test rcx, rcx
je 0x140171a37
mov rdx, qword [rbp + 0x2b0]
call fcn.1401c4030
mov rcx, qword [rdi + 0x50]
call fcn.1401c3b20
test al, al
je 0x140171a37
mov r8b, 0x37
sub r8b, 2
add r8b, 0x22
add r8b, 6
sub r8b, 0x15
sub r8b, 3
xor r8b, 0x44
movzx edx, r8b
mov rcx, qword [rdi + 0x50]
call fcn.1401c3ef0
lea rcx, [rdi + 0x5d8]
call fcn.14007b460
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x140171ab3
lea rdx, [rdx*2 + 2]
xchg r15, rcx
mov r15, qword [rsp + 0x30]
xchg rcx, r15
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x140171aae
nop
add rdx, 0x66b05884
sub rdx, 0x66b0585d
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
sub rax, 0xfffffffffdc4549e
add rax, 0xfffffffffdc45496
cmp rax, 0x1f
jbe 0x140171aae
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcb00
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], 0xf1ee886
xor qword [rsp + 0x48], 0x71801ebc
sub qword [rsp + 0x48], 0x68f28638
xor qword [rsp + 0x48], 0xb2d7039
add qword [rsp + 0x48], 0x21399f02
add qword [rsp + 0x48], 0x22908f67
xor qword [rsp + 0x48], 0x9a096d1
sub qword [rsp + 0x48], 0x6bebb86e
mov word [rsp + 0x30], si
xchg rdx, rcx
mov rcx, qword [rbp - 0x78]
xchg rdx, rcx
cmp rdx, 8
jb 0x140171b70
lea rdx, [rdx*2 + 2]
xchg r8, rcx
mov r8, qword [rsp + 0x70]
xchg rcx, r8
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x140171b6b
nop
sub rdx, 0x60537dc9
add rdx, 0x60537df0
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140171b6b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcb00
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x78], 0x6f02a487
xor qword [rbp - 0x78], 0x27429ed2
xor qword [rbp - 0x78], 0x67fbbe38
add qword [rbp - 0x78], 0x2e7b824c
sub qword [rbp - 0x78], 0x48a97472
xor qword [rbp - 0x78], 0x158d9240
mov word [rsp + 0x70], si
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x140171c00
lea rdx, [rdx*2 + 2]
xchg r12, rcx
mov r12, qword [rsp + 0x50]
xchg rcx, r12
mov rax, rcx
cmp rdx, 0x1000
jb 0x140171bfb
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x140171bfb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcb00
xchg rsi, rcx
mov qword [rsp + 0x60], rcx
xchg rsi, rcx
mov qword [rsp + 0x68], 0x5a1431d8
xor qword [rsp + 0x68], 0x52cf7715
add qword [rsp + 0x68], 0x208b9465
sub qword [rsp + 0x68], 0x1c8ba696
add qword [rsp + 0x68], 0x456bceeb
add qword [rsp + 0x68], 0xfe1bbfa
sub qword [rsp + 0x68], 0x300dc595
xor qword [rsp + 0x68], 0x5a4405e8
xor qword [rsp + 0x68], 0x685efc03
mov word [rsp + 0x50], si
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x140171cbf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
xchg r13, rax
mov r13, rcx
xchg r13, rax
cmp rdx, 0x1000
jb 0x140171cba
nop
sub rdx, 0x6bb04e96
add rdx, 0x6bb04ebd
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x140171cba
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcb00
xchg r9, rsi
mov qword [rbp - 0x30], r9
xchg rsi, r9
mov qword [rbp - 0x28], 0x1e098856
xor qword [rbp - 0x28], 0x456811a6
xor qword [rbp - 0x28], 0x76dbbc6c
add qword [rbp - 0x28], 0xd2db529
sub qword [rbp - 0x28], 0x1b2e5ec
add qword [rbp - 0x28], 0x3d003778
sub qword [rbp - 0x28], 0x4ac41117
add qword [rbp - 0x28], 0x87e78e5
sub qword [rbp - 0x28], 0x33ef9418
mov word [rbp - 0x40], si
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x140171d76
lea rdx, [rdx*2 + 2]
xchg rcx, r9
mov r9, qword [rbp - 0x20]
xchg rcx, r9
xchg rcx, r12
mov rax, r12
xchg rcx, r12
cmp rdx, 0x1000
jb 0x140171d71
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
neg rax
add rax, 8
neg rax
cmp rax, 0x1f
jbe 0x140171d71
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcb00
xchg rcx, rsi
mov qword [rbp - 0x10], rcx
xchg rcx, rsi
mov qword [rbp - 8], 0x13c18c89
add qword [rbp - 8], 0x48c048d9
sub qword [rbp - 8], 0x4f94c50d
add qword [rbp - 8], 0x54ea96ed
sub qword [rbp - 8], 0x8ef6ec7
xor qword [rbp - 8], 0x1868eaa4
add qword [rbp - 8], 0x12486895
xor qword [rbp - 8], 0x4cb9a652
sub qword [rbp - 8], 0x1e709d1f
mov word [rbp - 0x20], si
xchg rbx, rax
mov rbx, qword [rbp + 0x150]
xchg rbx, rax
movsxd rcx, dword [rax + 4]
lea rax, [0x140003468]
xchg rdi, rax
mov qword [rbp + rcx + 0x150], rdi
xchg rdi, rax
xchg r14, rax
mov r14, qword [rbp + 0x150]
xchg r14, rax
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x14c], edx
lea rcx, [rbp + 0x160]
call fcn.140090050
lea rcx, [rbp + 0x168]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
lea rcx, [rbp + 0x200]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::destructor_void____ptr64]
mov rbx, qword [rsp + 0x3a8]
add rsp, 0x360
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
push rcx
push rbx
push rax
push rdx
push rax
push rcx
push rax
xchg qword [rsp + 0x38], r13
pop rax
pop rcx
pop rax
pop rdx
pop rax
pop rbx
pop rcx
add rsp, 8
push rcx
push rdx
push rcx
push rcx
push rbx
push rcx
xchg qword [rsp + 0x30], r12
pop rcx
pop rbx
pop rcx
pop rcx
pop rdx
pop rcx
add rsp, 8
nop
xchg qword [rsp], rdi
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rsi
push rdx
push rdx
push rax
push rdx
push rdx
xchg qword [rsp + 0x28], rbp
pop rdx
pop rdx
pop rax
pop rdx
pop rdx
add rsp, 8
nop
add rsp, 8
jmp qword [rsp - 8]
lea rcx, [rbp + 0x2b8]
call fcn.1400f0cc0
nop
lea rcx, [0x1400032b8]
call fcn.1401fd8e4
nop
lea rcx, [rbp + 0x2b8]
call fcn.1400f0cc0
nop
lea rcx, [0x1400032a0]
call sub.MSVCP140.dll_void___cdecl_std::_Xinvalid_argument_char_const____ptr64_
int3
lea rcx, [0x1400032b8]
call fcn.1401fd8e4
int3
lea rcx, [0x1400032a0]
call sub.MSVCP140.dll_void___cdecl_std::_Xinvalid_argument_char_const____ptr64_
int3
lea rcx, [rbp + 0x2b8]
call fcn.1400f0cc0
int3