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

Disassembly:
xchg rdi, rbx
mov qword [rsp + 0x10], rdi
xchg rdi, rbx
nop
sub rsp, 8
mov qword [rsp], rbp
push rsi
push rdi
nop
sub rsp, 8
mov qword [rsp], r12
nop
sub rsp, 8
mov qword [rsp], r13
push r14
push r15
lea rbp, [rsp - 0x260]
sub rsp, 0x360
movzx r12d, dl
mov rdi, rcx
xor r14d, r14d
mov dword [rbp + 0x2a0], r14d
mov qword [rbp + 0x2b8], rcx
sub rcx, 0x5a68eeef
add rcx, 0x5a68f4c7
call fcn.14007b7e0
xchg rdx, rcx
mov rcx, rax
xchg rdx, rcx
mov dword [rsp + 0x20], 0x740493eb
sub dword [rsp + 0x20], 0x4ad031ff
add dword [rsp + 0x20], 0x2f57767d
sub dword [rsp + 0x20], 0x3108669e
xor dword [rsp + 0x20], 0x466a0c7c
sub dword [rsp + 0x20], 0x58224e03
xor dword [rsp + 0x20], 0x1822b759
xor dword [rsp + 0x20], 0x2d11aef3
sub dword [rsp + 0x20], 0x3cf4361d
lea r9d, [r14 + 0x40]
lea r8d, [r14 + 0x21]
lea rcx, [rbp + 0x150]
call fcn.140087950
nop
cmp qword [rbp + 0x1e0], r14
je 0x1401724c8
xorps xmm0, xmm0
xchg rcx, rbp
movups xmmword [rcx - 0x20], xmm0
xchg rbp, rcx
xchg r14, rbx
mov qword [rbp - 0x10], rbx
xchg r14, rbx
mov qword [rbp - 8], 0x1163f10a
add qword [rbp - 8], 0xbb0fe68
xor qword [rbp - 8], 0x7d2cd2d0
sub qword [rbp - 8], 0x25201c77
sub qword [rbp - 8], 0x2167e418
add qword [rbp - 8], 0x4d9dc926
sub qword [rbp - 8], 0x63982294
add qword [rbp - 8], 0x76118896
sub qword [rbp - 8], 0x79c76c34
mov word [rbp - 0x20], r14w
xchg rbx, rbp
movups xmmword [rbx - 0x40], xmm0
xchg rbp, rbx
mov qword [rbp - 0x30], r14
mov qword [rbp - 0x28], 0x5775bf84
add qword [rbp - 0x28], 0x26e5e082
sub qword [rbp - 0x28], 0x2b04b743
sub qword [rbp - 0x28], 0x28c4b38a
add qword [rbp - 0x28], 0x25e19daa
sub qword [rbp - 0x28], 0x1887d75e
add qword [rbp - 0x28], 0x13e67695
sub qword [rbp - 0x28], 0x44ed134d
sub qword [rbp - 0x28], 0x6e55ec6
mov word [rbp - 0x40], r14w
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0x7752600a
sub qword [rsp + 0x68], 0x44517320
xor qword [rsp + 0x68], 0x453a1a08
xor qword [rsp + 0x68], 0x109af209
sub qword [rsp + 0x68], 0x2005e9e
xor qword [rsp + 0x68], 0xe92fb3d
add qword [rsp + 0x68], 0x5e26544
xor qword [rsp + 0x68], 0x6fefc2b3
mov word [rsp + 0x50], r14w
movups xmmword [rsp + 0x70], xmm0
xchg rcx, r14
mov qword [rbp - 0x80], rcx
xchg rcx, r14
mov qword [rbp - 0x78], 0x5028e378
sub qword [rbp - 0x78], 0x2de32af9
add qword [rbp - 0x78], 0x463a0aeb
xor qword [rbp - 0x78], 0x35531212
xor qword [rbp - 0x78], 0x5362c1a
sub qword [rbp - 0x78], 0x14076362
xor qword [rbp - 0x78], 0x24b7f492
sub qword [rbp - 0x78], 0x35c13877
sub qword [rbp - 0x78], 0x2ae33614
mov word [rsp + 0x70], r14w
xchg rdx, rax
mov rdx, qword [rbp + 0x150]
xchg rdx, rax
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
mov dl, 0x78
sub dl, 0x62
xor dl, 0x1c
add dl, 0x52
sub dl, 4
sub dl, 0x4b
xor dl, 7
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.140085f60
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
mov dl, 0x3a
sub dl, 7
sub dl, 0x13
add dl, 0xd
add dl, 0x29
sub dl, 0x4c
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.140085f60
mov rax, qword [rbp + 0x150]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
mov dl, 0x5c
xor dl, 0x2d
add dl, 0xa
sub dl, 0x49
add dl, 0x1f
sub dl, 0x42
sub dl, 5
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.140085f60
xchg r13, rax
mov r13, qword [rbp + 0x150]
xchg r13, rax
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x150]
add rcx, rax
mov dl, 0x78
sub dl, 0xe
xor dl, 0x37
sub dl, 0x59
add dl, 0x44
sub dl, 0x3e
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.140085f60
lea rcx, [rbp + 0x160]
call fcn.140176760
test rax, rax
jne 0x140170c18
xchg r14, rax
mov r14, qword [rbp + 0x150]
xchg r14, 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]
mov qword [rbp + 0x2b0], r14
mov r15d, 0x71ae8d8f
sub r15d, 0x42aa5fe8
xor r15d, 0x50f269e0
xor r15d, 0x51c59067
xor r15d, 0x27107dcb
add r15d, 0x59aeb66a
sub r15d, 0x62d2604b
cmp qword [rsp + 0x60], 0
je 0x140170d0e
test r12b, r12b
jne 0x140170d0e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov 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]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstoull]
cmp rbx, qword [rbp + 0x2a0]
je 0x1401724d5
cmp dword [rsi], 0x22
je 0x1401724e2
mov qword [rbp + 0x2b0], rax
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 + 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 rcx, rbx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstoull]
xchg r11, r15
mov r11, rax
xchg r11, r15
cmp rbx, qword [rbp + 0x2a0]
je 0x1401724ef
cmp dword [rsi], 0x22
je 0x1401724bb
jmp 0x140171160
mov r12b, 0x46
add r12b, 9
xor r12b, 0x1c
sub r12b, 0x48
add r12b, 0x20
add r12b, 5
sub r12b, 0x2f
mov dword [rsp + 0x20], 0x5be95252
add dword [rsp + 0x20], 0x8f43230
sub dword [rsp + 0x20], 0x18f445ba
xor dword [rsp + 0x20], 0x15341a67
sub dword [rsp + 0x20], 0x956ca9a
xor dword [rsp + 0x20], 0xecc575f
add dword [rsp + 0x20], 0x94b5f2b6
mov r9d, 0x77d410e3
xor r9d, 0x3e577b69
sub r9d, 0x3b7874d2
add r9d, 0x2db8ca2b
add r9d, 0x1b5b8656
xor r9d, 0xf9daa89
xor r9d, 0x71a395b7
sub r9d, 0x29217806
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x2a0]
call qword [sym.imp.ADVAPI32.dll_CryptAcquireContextW]
test eax, eax
je 0x1401724fc
lea r8, [rbp + 0x2b0]
mov edx, 0x3b2432b
add edx, 0xa300348
sub edx, 0x35a144e
xor edx, 0x6f7a9a36
add edx, 0x1a050f83
xor edx, 0x702a93b1
add edx, 0x176e6dd
sub edx, 0x11540afc
mov rcx, qword [rbp + 0x2a0]
call qword [sym.imp.ADVAPI32.dll_CryptGenRandom]
xor edx, edx
xchg rcx, rsi
mov rsi, qword [rbp + 0x2a0]
xchg rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
xchg rdx, r8
mov r8, qword [rbp + 0x2b0]
xchg r8, rdx
lea rcx, [rbp - 0x60]
call fcn.1401797e0
mov rbx, rax
lea rax, [rsp + 0x50]
cmp rax, rbx
je 0x140170f5d
xchg rdi, rdx
mov rdi, qword [rsp + 0x68]
xchg rdi, rdx
cmp rdx, 8
jb 0x140170e9c
lea rdx, [rdx*2 + 2]
xchg r8, rcx
mov r8, qword [rsp + 0x50]
xchg r8, rcx
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x140170e97
nop
add rdx, 0x7580abc8
sub rdx, 0x7580aba1
mov rcx, qword [rcx - 8]
sub rax, rcx
neg rax
add rax, 8
neg rax
cmp rax, 0x1f
ja 0x140170fc0
call fcn.1401fcba8
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 0x7e6a2f2a
xor qword [rsp + 0x68], 0x399ed443
add qword [rsp + 0x68], 0x374bd08a
sub qword [rsp + 0x68], 0x637b5a12
add qword [rsp + 0x68], 0x43b0b9c2
sub qword [rsp + 0x68], 0x17feadf3
sub qword [rsp + 0x68], 0x40c078b6
sub qword [rsp + 0x68], 0x6b704f3
mov word [rsp + 0x50], r14w
xchg rbx, r10
movups xmm0, xmmword [r10]
xchg rbx, r10
movups xmmword [rsp + 0x50], xmm0
xchg rsi, rbx
movups xmm1, xmmword [rsi + 0x10]
xchg rbx, rsi
movups xmmword [rsp + 0x60], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xd17b1b7
xor qword [rbx + 0x18], 0x1b1d3195
sub qword [rbx + 0x18], 0xbdf2534
add qword [rbx + 0x18], 0x1d8a7d2f
xor qword [rbx + 0x18], 0xcff881f
add qword [rbx + 0x18], 0x201472b2
xor qword [rbx + 0x18], 0x393cca1c
xor qword [rbx + 0x18], 0x132fea5f
sub qword [rbx + 0x18], 0x614de2f0
mov word [rbx], r14w
xchg rdx, r11
mov r11, qword [rbp - 0x48]
xchg r11, rdx
cmp rdx, 8
jb 0x140170fcc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
xchg rbx, rcx
mov rax, rbx
xchg rcx, rbx
cmp rdx, 0x1000
jb 0x140170fc7
nop
sub rdx, 0x7d05523b
add rdx, 0x7d055262
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
sub rax, 0xffffffffd19c3b2f
add rax, 0xffffffffd19c3b27
cmp rax, 0x1f
jbe 0x140170fc7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcba8
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
xchg r15, rdx
mov rdx, rax
xchg r15, rdx
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.1401797e0
xchg rbx, rbp
mov rbp, rax
xchg rbp, rbx
lea rax, [rsp + 0x70]
cmp rax, rbx
je 0x140171111
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x140171064
lea rdx, [rdx*2 + 2]
xchg r11, rcx
mov r11, qword [rsp + 0x70]
xchg rcx, r11
xchg r12, rcx
mov rax, r12
xchg r12, rcx
cmp rdx, 0x1000
jb 0x14017105f
neg rdx
add rdx, 0xffffffffffffffd9
neg rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
sub rax, 0xffffffff82576042
add rax, 0xffffffff8257603a
cmp rax, 0x1f
ja 0x140171154
call fcn.1401fcba8
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x78], 0x11b193a2
xor qword [rbp - 0x78], 0x1cc5e2b6
add qword [rbp - 0x78], 0x4e45ea97
sub qword [rbp - 0x78], 0x41aa6250
xor qword [rbp - 0x78], 0x1103d530
xor qword [rbp - 0x78], 0xb0c2c6c
mov word [rsp + 0x70], r14w
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x70], xmm0
xchg r13, rbx
movups xmm1, xmmword [r13 + 0x10]
xchg rbx, r13
xchg rbp, rcx
movups xmmword [rcx - 0x80], xmm1
xchg rbp, rcx
xchg r11, r14
mov qword [rbx + 0x10], r11
xchg r14, r11
mov qword [rbx + 0x18], 0x6524e54c
xor qword [rbx + 0x18], 0x1f2b9be1
sub qword [rbx + 0x18], 0x378d9ece
add qword [rbx + 0x18], 0xf26904a
sub qword [rbx + 0x18], 0x1e0a9b71
xor qword [rbx + 0x18], 0x46fb7e55
xor qword [rbx + 0x18], 0x396d96d7
sub qword [rbx + 0x18], 0x2e6c80d4
sub qword [rbx + 0x18], 0x1d9ebb5f
mov word [rbx], r14w
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x140171160
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14017115b
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x14017115b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcba8
mov ecx, dword [rdi + 0x48]
mov qword [rbp + 0x2a0], rdi
xchg r12, rdi
mov qword [rbp - 0x70], r12
xchg r12, rdi
xchg r12, rdi
mov qword [rbp - 0x68], r12
xchg rdi, r12
test ecx, ecx
je 0x140171344
sub ecx, 1
je 0x140171278
cmp ecx, 1
jne 0x140171344
xchg r11, rax
mov r11, qword [rdi + 0x30]
xchg r11, rax
movabs rbx, 0x2aaaaaaa5a103d18
sub rbx, 0x82cca4b
sub rbx, 0x430f0871
add rbx, 0x3ba4ef2
add rbx, 0x45f03657
sub rbx, 0x30a10e55
xor rbx, 0x4559da6
add rbx, 0x7fffffff
add rbx, 0x7222db6
cmp rax, qword [rdi + 0x38]
jne 0x140171269
mov rcx, qword [rdi + 0x40]
sub rcx, rax
mov rax, rbx
imul rcx
sar rdx, 2
xchg rdx, rax
mov rdx, rax
xchg rdx, rax
shr rax, 0x2d
shr rax, 0x10
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14017125d
mov edx, 0x28ac70b9
add edx, 0x51839c53
sub edx, 0x4582169f
add edx, 0x482a2255
xor edx, 0x3902a184
sub edx, 0x222fce19
add edx, 0x158b218f
xor edx, 0x37bcd530
sub edx, 0xe8ad938
lea rcx, [rdi + 0x30]
call fcn.1401753d0
lea rcx, [rbp + 0x2a0]
call fcn.14009c750
xchg rdx, r12
mov r12, qword [rdi + 0x30]
xchg rdx, r12
jmp 0x140171406
xchg rcx, rax
mov rcx, qword [rdi + 0x18]
xchg rcx, rax
movabs rbx, 0x2aaaaaaa02a8a6a2
xor rbx, 0x2d284dac
xor rbx, 0x2b998982
xor rbx, 0x65ccb93
add rbx, 0x2bd8f1ed
add rbx, 0x1992f890
add rbx, 0x7fffffff
sub rbx, 0x1d06e8f0
cmp rax, qword [rdi + 0x20]
jne 0x14017133b
xchg rcx, r8
mov r8, qword [rdi + 0x28]
xchg r8, rcx
sub rcx, rax
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
imul rcx
sar rdx, 2
xchg rdx, r15
mov rax, r15
xchg r15, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 0x54
jae 0x140171332
mov edx, 0x5cad5f72
xor edx, 0x24e05839
xor edx, 0x12fc8457
add edx, 0x4612445
xor edx, 0x182ccd8d
sub edx, 0x25580385
xor edx, 0x78dc0cef
sub edx, 0x293a6b34
lea rcx, [rdi + 0x18]
call fcn.1401753d0
lea rcx, [rbp - 0x68]
call fcn.140136ad0
mov rdx, qword [rdi + 0x18]
jmp 0x140171406
xchg r12, rax
mov r12, qword [rdi]
xchg r12, rax
movabs rbx, 0x2aaaaaaa598d6b17
add rbx, 0x1198df45
sub rbx, 0x2c9f5469
xor rbx, 0x29d8bce7
add rbx, 0x4b9258ab
add rbx, 0x7fffffff
xor rbx, 0x485a0b15
cmp rax, qword [rdi + 8]
jne 0x140171403
mov rcx, qword [rdi + 0x10]
sub rcx, rax
xchg r12, rax
mov r12, rbx
xchg r12, rax
imul rcx
sar rdx, 2
xchg rsi, rax
mov rsi, rdx
xchg rsi, rax
shr rax, 5
shr rax, 0x20
shr rax, 5
shr rax, 7
shr rax, 0xd
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x1401713fa
mov edx, 0x7b80106f
sub edx, 0x18e48f00
sub edx, 0xbab38e3
xor edx, 0x1d566a23
sub edx, 0x3c28f686
sub edx, 0xf7d2bd5
xchg r13, rdi
mov rcx, r13
xchg r13, rdi
call fcn.1401753d0
lea rcx, [rbp - 0x70]
call fcn.1400f33a0
mov rdx, qword [rdi]
add rdx, 0x750
lea rcx, [rbp + 0x110]
call fcn.14007ab50
mov r14d, 0x78632279
sub r14d, 0x5bc37e9
sub r14d, 0x4c747f88
add r14d, 0x567b5e5e
sub r14d, 0x23bca70d
xor r14d, 0x58f12258
lea rcx, [rbp + 0x110]
call fcn.14007b3f0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xor ecx, ecx
xchg rcx, rsi
mov qword [rsp + 0x40], rsi
xchg rsi, rcx
mov qword [rsp + 0x48], rcx
nop
movabs r8, 0xffffffff61c67135
sub r8, 0x5f9a7e71
xor r8, 0x62e941aa
xor r8, 0x4aaa75e8
add r8, 0x10a26530
sub r8, 0x12c3d0c
add r8, 0x7fffffff
add r8, 0x46211156
nop dword [rax]
inc r8
cmp word [rax + r8*2], cx
jne 0x1401714a7
xchg rbx, rax
mov rdx, rbx
xchg rbx, rax
lea rcx, [rsp + 0x30]
call fcn.140030c50
nop
lea rcx, [rbp + 0x110]
call fcn.14007b070
test r15, r15
jne 0x1401717f2
mov ecx, dword [rdi + 0x48]
xchg rdi, rcx
mov qword [rbp + 0x2a0], rcx
xchg rcx, rdi
mov qword [rbp - 0x68], rdi
xchg r9, rdi
mov qword [rbp - 0x70], r9
xchg rdi, r9
test ecx, ecx
je 0x140171618
sub ecx, 1
je 0x140171583
cmp ecx, 1
jne 0x140171618
mov rax, qword [rdi + 0x30]
cmp rax, qword [rdi + 0x38]
jne 0x140171574
mov rcx, qword [rdi + 0x40]
sub rcx, rax
xchg rbp, rbx
mov rax, rbp
xchg rbx, rbp
imul rcx
sar rdx, 1
sar rdx, 1
mov rax, rdx
shr rax, 0xa
shr rax, 0xb
shr rax, 3
shr rax, 0x27
add rdx, rax
cmp rdx, 0x54
jae 0x140171568
lea edx, [r15 + 0x54]
lea rcx, [rdi + 0x30]
call fcn.1401753d0
lea rcx, [rbp + 0x2a0]
call fcn.14009c750
xchg rdx, rsi
mov rsi, qword [rdi + 0x30]
xchg rdx, rsi
jmp 0x1401716ae
mov rax, qword [rdi + 0x18]
cmp rax, qword [rdi + 0x20]
jne 0x140171609
xchg r9, rcx
mov r9, qword [rdi + 0x28]
xchg r9, rcx
sub rcx, rax
xchg rbx, rdx
mov rax, rdx
xchg rdx, rbx
imul rcx
sar rdx, 2
xchg rbp, rax
mov rbp, rdx
xchg rbp, rax
shr rax, 0x34
shr rax, 7
shr rax, 2
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x140171600
mov edx, 0x398de53d
sub edx, 0x28f9ee67
xor edx, 0x74470068
xor edx, 0xbd37e33
xor edx, 0x6646d597
sub edx, 0x9415cc6
lea rcx, [rdi + 0x18]
call fcn.1401753d0
lea rcx, [rbp - 0x70]
call fcn.140136ad0
xchg rdx, r12
mov r12, qword [rdi + 0x18]
xchg r12, rdx
jmp 0x1401716ae
xchg rbx, rax
mov rbx, qword [rdi]
xchg rbx, rax
cmp rax, qword [rdi + 8]
jne 0x1401716a5
mov rcx, qword [rdi + 0x10]
sub rcx, rax
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 6
shr rax, 0x17
shr rax, 0x15
shr rax, 8
shr rax, 2
shr rax, 1
shr rax, 1
shr rax, 1
add rdx, rax
cmp rdx, 0x54
jae 0x14017169c
mov edx, 0x15b1f86b
sub edx, 0x72fcc93
sub edx, 0x6d5f637
xor edx, 0xde3c0dc
sub edx, 0x902c3a2
add edx, 0x41194833
xor edx, 0x42667a5a
mov rcx, rdi
call fcn.1401753d0
lea rcx, [rbp - 0x68]
call fcn.1400f33a0
xchg rdx, r11
mov r11, qword [rdi]
xchg r11, rdx
add rdx, 0x2a85c0b9
sub rdx, 0x2a85bb49
lea rcx, [rbp - 0x60]
call fcn.14007ab50
mov r14d, 0x62869e37
xor r14d, 0x5aefcd24
xor r14d, 0xe10bba5
add r14d, 0x29d214f0
xor r14d, 0x30828a18
xor r14d, 0x14dd0ca8
xor r14d, 0x2b07a9c8
sub r14d, 0x17772a4f
sub r14d, 0x579ca88c
lea rcx, [rbp - 0x60]
call fcn.14007b3f0
xchg r9, rax
mov rax, r9
xchg r9, rax
nop
movabs rsi, 0xffffffff31706aaa
xor rsi, 0x40cc8c4f
xor rsi, 0x68da6788
add rsi, 0x552f8b81
xor rsi, 0x325529a8
add rsi, 0x2261067f
add rsi, 0x7fffffff
xor rsi, 0xdbd43b
inc rsi
cmp word [rax + rsi*2], 0
jne 0x14017174f
xchg rbp, r15
mov rbp, qword [rsp + 0x40]
xchg rbp, r15
xchg rcx, r11
mov r11, qword [rsp + 0x48]
xchg r11, rcx
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
sub rax, r15
cmp rsi, rax
ja 0x1401717c3
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]
xchg rbp, rdx
mov rbp, r9
xchg rbp, rdx
call sub.VCRUNTIME140.dll_memmove
lea rax, [r15 + rsi]
xor ecx, ecx
mov word [rbx + rax*2], cx
jmp 0x1401717e4
mov qword [rsp + 0x20], rsi
movzx r8d, byte [rbp + 0x2a0]
xchg rsi, r13
mov rdx, r13
xchg r13, rsi
lea rcx, [rsp + 0x30]
call fcn.140034ef0
nop
lea rcx, [rbp - 0x60]
call fcn.14007b070
jmp 0x14017192b
mov r8b, 0x5d
sub r8b, 0x3c
add r8b, 0x26
sub r8b, 3
add r8b, 0xf
xor r8b, 0x45
add r8b, 6
sub r8b, 0x1b
xchg rdx, rbp
mov rbp, r15
xchg rdx, rbp
lea rcx, [rbp - 0x60]
call fcn.1401f4f40
mov r9, rax
xchg r11, rsi
mov r11, qword [rax + 0x10]
xchg rsi, r11
cmp qword [rax + 0x18], 8
jb 0x140171844
xchg r12, r9
mov r12, qword [rax]
xchg r9, r12
mov r15, qword [rsp + 0x40]
xchg rcx, r10
mov r10, qword [rsp + 0x48]
xchg r10, rcx
xchg r11, rcx
mov rax, r11
xchg rcx, r11
sub rax, r15
cmp rsi, rax
ja 0x1401718a6
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]
xchg r9, r15
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 0x1401718c7
xchg rcx, rsi
mov qword [rsp + 0x20], rcx
xchg rcx, rsi
movzx r8d, byte [rbp + 0x2a0]
mov rdx, rsi
lea rcx, [rsp + 0x30]
call fcn.140034ef0
nop
xchg rdx, rdi
mov rdi, qword [rbp - 0x48]
xchg rdx, rdi
cmp rdx, 8
jb 0x14017192b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
xchg rcx, rdi
mov rax, rdi
xchg rcx, rdi
cmp rdx, 0x1000
jb 0x140171926
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffffee57cf6e
sub rax, 0xffffffffee57cf76
cmp rax, 0x1f
jbe 0x140171926
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcba8
xchg rcx, r15
mov rcx, qword [rdi + 0x2d0]
xchg rcx, r15
xchg rdx, rcx
mov rdx, qword [rsp + 0x40]
xchg rdx, rcx
inc rcx
mov eax, 0x7f1e31cd
sub eax, 0x1ca97de6
add eax, 0x6d09674
xor eax, 0x67006048
xor eax, 0x11e88e91
add eax, 0x538bc3b2
sub eax, 0x626dfca1
xor eax, 0x10cb6b91
mul rcx
xchg rsi, rbp
mov rbp, rax
xchg rbp, rsi
pushf
movabs rax, 0xffffffff2bc4f4c3
xor rax, 0x3cbef4df
add rax, 0x5ce6c72d
sub rax, 0x5b9d63a9
sub rax, 0x116b9bbc
add rax, 0x46578b38
add rax, 0x10ff74fc
add rax, 0x7fffffff
add rax, 0x215137e8
popf
cmovo rsi, rax
xchg r9, rsi
mov rcx, r9
xchg r9, rsi
call fcn.1401fcbb0
xchg r10, rax
mov rbx, r10
xchg r10, rax
test rax, rax
je 0x1401719f4
xchg rbp, rsi
mov r8, rbp
xchg rbp, rsi
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
xor esi, esi
jmp 0x1401719f8
xor esi, esi
mov ebx, esi
lea r8, [rsp + 0x30]
cmp qword [rsp + 0x48], 8
cmovae r8, qword [rsp + 0x30]
xchg rdx, rcx
mov rcx, qword [rsp + 0x40]
xchg rcx, rdx
inc rdx
xchg rcx, rbx
mov rbx, rcx
xchg rbx, rcx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
xchg r15, rbx
mov qword [rdi + 0x2d0], r15
xchg rbx, r15
mov rdx, rbx
xchg r15, rcx
mov r15, qword [rdi + 0x2b0]
xchg rcx, r15
call fcn.14017db00
test r15, r15
je 0x140171a5f
xchg r13, r15
mov rcx, r13
xchg r13, r15
call fcn.1401fcba8
test r12b, r12b
je 0x14017201b
lea rcx, [rdi + 0x5d8]
call fcn.14007b7e0
xchg r14, rax
mov rbx, r14
xchg r14, rax
lea rax, [0x140003480]
xchg r13, rax
mov qword [rbp], r13
xchg r13, 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 r9, rax
mov r9, qword [rbp]
xchg r9, rax
movsxd rcx, dword [rax + 4]
lea r14, [0x140003478]
xchg rdi, r14
mov qword [rbp + rcx], rdi
xchg r14, rdi
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], 2
add byte [rbp + 0x84], 0x60
sub byte [rbp + 0x84], 0x44
xor byte [rbp + 0x84], 1
xor byte [rbp + 0x84], 0x6c
sub byte [rbp + 0x84], 0x73
mov byte [rbp + 0x7a], 0x28
sub byte [rbp + 0x7a], 0x27
add byte [rbp + 0x7a], 0x62
sub byte [rbp + 0x7a], 0x3a
add byte [rbp + 0x7a], 0x3c
xor byte [rbp + 0x7a], 0xf
xor byte [rbp + 0x7a], 0xf
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]
mov qword [rbp + 0x7c], rax
mov qword [rbp + 0x70], rsi
mov r9d, 0x2f952fb7
add r9d, 0x36a32340
sub r9d, 0x3078cc9b
add r9d, 0x167ba1dc
sub r9d, 0x4a5e4a07
xor r9d, 0x1dcde71
lea r8d, [r9 - 0xe]
xchg rdx, rbx
mov rbx, rdx
xchg rbx, rdx
lea rcx, [rbp + 8]
call fcn.140177970
test rax, rax
jne 0x140171bd0
xchg rbx, rax
mov rbx, qword [rbp]
xchg rbx, 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 0x1401724ae
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 8
cmovae rdx, qword [rbp - 0x20]
mov r8, qword [rbp - 0x10]
lea rcx, [rbp]
call fcn.140081d10
xchg rcx, rax
mov rax, rcx
xchg rcx, rax
mov ebx, 0x2f3e87c2
sub ebx, 0x4937e6d
add ebx, 0x4ff48400
sub ebx, 0x37d62168
add ebx, 0x757ff1e
add ebx, 0x24f44f70
sub ebx, 0x6f15ba71
movzx edx, bx
call fcn.14007db60
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rdx, qword [rbp - 0x40]
mov r8, qword [rbp - 0x30]
lea rcx, [rbp]
call fcn.140081d10
mov rcx, rax
movzx edx, bx
call fcn.14007db60
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rdx, qword [rsp + 0x50]
xchg r14, r8
mov r14, qword [rsp + 0x60]
xchg r8, r14
lea rcx, [rbp]
call fcn.140081d10
xchg rbx, rax
mov rcx, rbx
xchg rbx, rax
movzx edx, bx
call fcn.14007db60
lea rdx, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rdx, qword [rsp + 0x70]
mov r8, qword [rbp - 0x80]
lea rcx, [rbp]
call fcn.140081d10
lea rcx, [rbp + 8]
cmp qword [rbp + 0x88], 0
je 0x140171f30
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 0x140171cee
mov r9, qword [rbp + 0x98]
mov rdx, qword [rbp + 0x90]
xchg r8, rdx
mov rdx, r8
xchg 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 0x140171de4
cmp byte [rbp + 0x7a], 0
je 0x140171de4
mov rax, qword [rbp + 8]
xchg r8, rbx
mov rbx, qword [rax + 0x18]
xchg rbx, r8
lea rax, [fcn.140177b80]
mov ebx, 0x40eeb4ae
xor ebx, 0x2699d1a4
sub ebx, 0x5bf625a1
add ebx, 0x5f827c9e
xor ebx, 0x3fd2579
sub ebx, 0x56adec8f
add ebx, 0x1a84cb54
sub ebx, 0xa3feb18
sub ebx, 0x23948d2c
lea rcx, [rbp + 8]
mov edx, ebx
cmp r8, rax
jne 0x140171d66
call fcn.140177b80
jmp 0x140171d69
call r8
cmp bx, ax
jne 0x140171d79
xor al, al
jmp 0x140171df6
lea rax, [rbp + 0x2a0]
xchg r12, rax
mov qword [rsp + 0x20], r12
xchg r12, rax
lea r9, [rbp + 0x148]
lea r8, [rbp + 0x128]
lea rdx, [rbp + 0x7c]
xchg rbx, rcx
mov rbx, qword [rbp + 0x70]
xchg rcx, rbx
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 0x140171e9f
sub eax, 1
je 0x140171eb7
cmp eax, 2
je 0x140171dcc
xor al, al
jmp 0x140171df6
mov byte [rbp + 0x7a], 7
add byte [rbp + 0x7a], 0x18
xor byte [rbp + 0x7a], 0x39
add byte [rbp + 0x7a], 0x45
sub byte [rbp + 0x7a], 0x60
xor byte [rbp + 0x7a], 0xb
mov al, 0x33
add al, 0x41
sub al, 0x6f
xor al, 0x7d
sub al, 0x2e
xor al, 0x2b
xor al, 0x6d
add al, 0xb
sub al, 0x16
lea rbx, [rbp + 8]
test al, al
cmove rbx, rsi
xchg rcx, rdi
mov rdi, qword [rbp + 0x88]
xchg rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test eax, eax
cmovne rbx, rsi
mov byte [rbp + 0x84], 0x64
sub byte [rbp + 0x84], 0x34
add byte [rbp + 0x84], 0x43
sub byte [rbp + 0x84], 0x26
add byte [rbp + 0x84], 0xb
xor byte [rbp + 0x84], 0x64
sub byte [rbp + 0x84], 0x19
xor byte [rbp + 0x84], 0x23
mov byte [rbp + 0x7a], 0x59
add byte [rbp + 0x7a], 5
xor byte [rbp + 0x7a], 0x69
add byte [rbp + 0x7a], 0
add byte [rbp + 0x7a], 0x45
xor byte [rbp + 0x7a], 0x4a
sub byte [rbp + 0x7a], 0x36
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 rsi, rax
mov qword [rbp + 0x7c], rsi
xchg rsi, rax
mov qword [rbp + 0x70], rsi
test rbx, rbx
jne 0x140171fdc
jmp 0x140171fbf
mov byte [rbp + 0x7a], 0x2a
sub byte [rbp + 0x7a], 0x15
xor byte [rbp + 0x7a], 5
xor byte [rbp + 0x7a], 0x5f
sub byte [rbp + 0x7a], 0x4c
sub byte [rbp + 0x7a], 3
lea rax, [rbp + 0x128]
xchg rcx, rbx
mov rcx, qword [rbp + 0x2a0]
xchg rcx, rbx
sub rbx, rax
je 0x140171f24
xchg r13, r9
mov r13, qword [rbp + 0x88]
xchg r9, r13
mov r8, rbx
mov edx, 0x31b78967
add edx, 0x3e144a89
sub edx, 0x5b68f741
add edx, 0x41232139
sub edx, 0x28ebb1ae
xor edx, 0x2c9a4c3b
lea rcx, [rbp + 0x128]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rbx, rax
je 0x140171f24
xor al, al
jmp 0x140171df6
cmp byte [rbp + 0x7a], 0
sete al
jmp 0x140171df6
mov byte [rbp + 0x84], 6
xor byte [rbp + 0x84], 0x63
sub byte [rbp + 0x84], 0x52
add byte [rbp + 0x84], 0x43
xor byte [rbp + 0x84], 0x55
add byte [rbp + 0x84], 0x34
sub byte [rbp + 0x84], 1
xor byte [rbp + 0x84], 0x25
xor byte [rbp + 0x84], 0x13
mov byte [rbp + 0x7a], 0x7e
sub byte [rbp + 0x7a], 0x4b
xor byte [rbp + 0x7a], 0x5d
xor byte [rbp + 0x7a], 0x76
add byte [rbp + 0x7a], 6
xor byte [rbp + 0x7a], 0x6b
xor byte [rbp + 0x7a], 0x16
xor byte [rbp + 0x7a], 0x64
sub byte [rbp + 0x7a], 7
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, rdx
mov qword [rbp + 0x88], rdx
xchg rsi, rdx
mov rax, qword [0x140217068]
xchg r10, rax
mov qword [rbp + 0x7c], r10
xchg r10, rax
xchg rsi, r13
mov qword [rbp + 0x70], r13
xchg r13, 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.1400902e0
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]
mov rcx, qword [rdi + 0x50]
test rcx, rcx
je 0x140172073
mov rdx, qword [rbp + 0x2b0]
call fcn.1401c4090
mov rcx, qword [rdi + 0x50]
call fcn.1401c3ba0
test al, al
je 0x140172073
mov r8b, 0x6e
add r8b, 0xf
xor r8b, 0x6e
add r8b, 0x10
xor r8b, 0x26
add r8b, 0x64
xor r8b, 0x68
movzx edx, r8b
xchg rbx, rcx
mov rbx, qword [rdi + 0x50]
xchg rbx, rcx
call fcn.1401c3f60
lea rcx, [rdi + 0x5d8]
call 0x14007b750
nop
xchg rdx, rbx
mov rbx, qword [rsp + 0x48]
xchg rbx, rdx
cmp rdx, 8
jb 0x1401720ec
lea rdx, [rdx*2 + 2]
xchg rdx, rcx
mov rdx, qword [rsp + 0x30]
xchg rcx, rdx
xchg rcx, r10
mov rax, r10
xchg rcx, r10
cmp rdx, 0x1000
jb 0x1401720e7
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xfffffffffd31c97a
sub rax, 0xfffffffffd31c982
cmp rax, 0x1f
jbe 0x1401720e7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcba8
xchg rbp, rsi
mov qword [rsp + 0x40], rbp
xchg rsi, rbp
mov qword [rsp + 0x48], 0x25a8fe52
xor qword [rsp + 0x48], 0x3c0b3e50
xor qword [rsp + 0x48], 0x4ae9a32d
sub qword [rsp + 0x48], 0x51667c43
add qword [rsp + 0x48], 0x25397be9
sub qword [rsp + 0x48], 0x271d62ce
mov word [rsp + 0x30], si
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x140172188
lea rdx, [rdx*2 + 2]
xchg r12, rcx
mov r12, qword [rsp + 0x70]
xchg r12, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140172183
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140172183
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcba8
xchg rsi, rbx
mov qword [rbp - 0x80], rbx
xchg rsi, rbx
mov qword [rbp - 0x78], 0x63658c95
sub qword [rbp - 0x78], 0x5621d8a7
add qword [rbp - 0x78], 0x509d34f0
sub qword [rbp - 0x78], 0x1b81d30e
sub qword [rbp - 0x78], 0x260b6751
xor qword [rbp - 0x78], 0x3999eaab
sub qword [rbp - 0x78], 0x25ca44cd
mov word [rsp + 0x70], si
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14017222d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x140172228
sub rdx, 0xffffffffffffffd9
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffffe607023f
sub rax, 0xffffffffe6070247
cmp rax, 0x1f
jbe 0x140172228
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcba8
xchg rsi, r10
mov qword [rsp + 0x60], r10
xchg r10, rsi
mov qword [rsp + 0x68], 0x69baad41
sub qword [rsp + 0x68], 0x558009ad
xor qword [rsp + 0x68], 0x4f3f399c
xor qword [rsp + 0x68], 0x211999e5
sub qword [rsp + 0x68], 0xa4519a7
add qword [rsp + 0x68], 0x22a5abb
sub qword [rsp + 0x68], 0x5582fb9b
add qword [rsp + 0x68], 0x4802c071
xor qword [rsp + 0x68], 0x648109d0
mov word [rsp + 0x50], si
xchg rdx, rcx
mov rcx, qword [rbp - 0x28]
xchg rdx, rcx
cmp rdx, 8
jb 0x1401722f0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
xchg rbx, rax
mov rbx, rcx
xchg rbx, rax
cmp rdx, 0x1000
jb 0x1401722eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
nop
add rax, 0xffffffffd536bbf0
sub rax, 0xffffffffd536bbf8
cmp rax, 0x1f
jbe 0x1401722eb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcba8
mov qword [rbp - 0x30], rsi
mov qword [rbp - 0x28], 0x7d1daba9
sub qword [rbp - 0x28], 0x66cbd00c
xor qword [rbp - 0x28], 0x1f8ee544
sub qword [rbp - 0x28], 0x717d332
add qword [rbp - 0x28], 0x7c47509
xor qword [rbp - 0x28], 0xa8be0b7
mov word [rbp - 0x40], si
xchg rdx, r8
mov r8, qword [rbp - 8]
xchg r8, rdx
cmp rdx, 8
jb 0x140172387
lea rdx, [rdx*2 + 2]
xchg rcx, r15
mov r15, qword [rbp - 0x20]
xchg rcx, r15
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
cmp rdx, 0x1000
jb 0x140172382
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
jbe 0x140172382
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401fcba8
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], 0x4b795b06
xor qword [rbp - 8], 0x58fbbcda
add qword [rbp - 8], 0x53a4313f
xor qword [rbp - 8], 0x5c8762c7
sub qword [rbp - 8], 0x15421e95
add qword [rbp - 8], 0x485529
sub qword [rbp - 8], 0x111c3778
sub qword [rbp - 8], 0x6135dc
sub qword [rbp - 8], 0x15294515
mov word [rbp - 0x20], si
xchg r12, rax
mov r12, qword [rbp + 0x150]
xchg r12, rax
movsxd rcx, dword [rax + 4]
lea rax, [0x140003468]
xchg r15, rax
mov qword [rbp + rcx + 0x150], r15
xchg r15, rax
xchg rsi, rax
mov rsi, qword [rbp + 0x150]
xchg rsi, rax
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x14c], edx
lea rcx, [rbp + 0x160]
call fcn.1400902e0
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
add rsp, 8
xchg qword [rsp - 8], r15
push rcx
push rbx
push rdx
xchg qword [rsp + 0x18], r14
pop rdx
pop rbx
pop rcx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r13
push rcx
xchg qword [rsp + 8], r12
add rsp, 0x10
push rbx
push rdx
push rcx
push rax
push rax
push rdx
push rcx
push rcx
xchg qword [rsp + 0x40], rdi
pop rcx
pop rcx
pop rdx
pop rax
pop rax
pop rcx
pop rdx
pop rbx
add rsp, 8
push rdx
push rbx
xchg qword [rsp + 0x10], rsi
add rsp, 0x18
nop
add rsp, 8
xchg qword [rsp - 8], rbp
nop
add rsp, 8
jmp qword [rsp - 8]
lea rcx, [rbp + 0x2b8]
call fcn.1400f0ee0
nop
lea rcx, [0x1400032b8]
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const____ptr64_
nop
lea rcx, [rbp + 0x2b8]
call fcn.1400f0ee0
nop
lea rcx, [0x1400032a0]
call sub.MSVCP140.dll_void___cdecl_std::_Xinvalid_argument_char_const____ptr64_
int3
lea rcx, [0x1400032b8]
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const____ptr64_
int3
lea rcx, [0x1400032a0]
call sub.MSVCP140.dll_void___cdecl_std::_Xinvalid_argument_char_const____ptr64_
int3
lea rcx, [rbp + 0x2b8]
call fcn.1400f0ee0
int3