Function at 0x140121ac0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x1b8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x130], 0xfffffffffffffffe
mov qword [rbp + 0x118], r8
mov qword [rbp + 0x120], rdx
mov qword [rbp + 0x128], rcx
mov rdx, qword [rbp + 0x128]
mov r9, qword [rbp + 0x120]
mov r11, qword [rbp + 0x118]
mov eax, 0x10
mov qword [rbp + 0xe8], rax
call fcn.140131af0
sub rsp, rax
mov rax, qword [rbp + 0xe8]
mov r10, rsp
mov qword [rbp + 0xd0], r10
call fcn.140131af0
sub rsp, rax
mov rax, qword [rbp + 0xe8]
mov r8, rsp
mov qword [rbp + 0xd8], r8
call fcn.140131af0
sub rsp, rax
mov rax, qword [rbp + 0xe8]
mov rcx, rsp
mov qword [rbp + 0xf8], rcx
call fcn.140131af0
sub rsp, rax
mov rax, qword [rbp + 0xe8]
mov rcx, rsp
mov qword [rbp + 0xe0], rcx
call fcn.140131af0
sub rsp, rax
mov rax, qword [rbp + 0xe8]
mov rsi, rsp
mov qword [rbp + 0xf0], rsi
call fcn.140131af0
sub rsp, rax
mov rax, qword [rbp + 0xf8]
mov rsi, rsp
mov qword [rbp + 0x100], rsi
mov qword [r10], r11
mov qword [r8], r9
mov qword [rax], rdx
mov dword [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x108], rax
mov rax, qword [rax]
movsxd rax, dword [rax + 4]
mov qword [rbp + 0x110], rax
mov eax, dword [0x140144534]
xor ecx, ecx
sub ecx, dword [0x140144538]
sub eax, ecx
mov ecx, 0xc9f903b7
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0xae8c62b6
or ecx, 0xae8c62b6
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
sub eax, 0x4458bb88
cmp eax, 0xb999019d
jae 0x140123133
mov rax, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x108]
add rcx, rax
sub rsp, 0x20
call qword [sym.imp.MSVCP140.dll_public:_long_long___int64____cdecl_std::ios_base::width_void_const___ptr64]
add rsp, 0x20
cmp rax, 0
jle 0x140121d0f
mov rax, qword [rbp + 0xf8]
mov rax, qword [rax]
mov qword [rbp + 0xc0], rax
mov rax, qword [rax]
add rax, 4
mov qword [rbp + 0xc8], rax
mov eax, dword [0x140144544]
xor edx, edx
div dword [0x140144548]
or eax, 0x8b9d2b3d
xor eax, 0xfbf6ec8e
mov ecx, eax
and ecx, 0x51548176
shl ecx, 1
xor eax, 0x51548176
add eax, ecx
cmp eax, 0x29f39de1
jb 0x140123156
mov rcx, qword [rbp + 0xc8]
mov eax, dword [0x14014454c]
mov edx, dword [0x140144550]
add eax, 0xd6d15456
sub eax, edx
sub eax, 0xd6d15456
mov r8d, 0xf844ecb
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xffffffff
and edx, 0x45c9fb45
and eax, 0xba3604ba
sub eax, edx
xor eax, 0xad83d723
mov ecx, dword [rcx]
mov dword [rbp + 0xbc], ecx
cmp eax, 0xb0e4844d
ja 0x140123156
mov rcx, qword [rbp + 0xc0]
mov eax, dword [rbp + 0xbc]
cdqe
add rcx, rax
sub rsp, 0x20
call qword [sym.imp.MSVCP140.dll_public:_long_long___int64____cdecl_std::ios_base::width_void_const___ptr64]
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
cmp rax, qword [rcx]
ja 0x140121d58
mov eax, dword [0x140144554]
xor edx, edx
div dword [0x140144558]
imul eax, eax, 0x20281e89
mov ecx, eax
xor ecx, 0x994b68d9
xor ecx, 0xffffffff
or eax, 0x994b68d9
and eax, ecx
xor eax, 0x3b2bace8
cmp eax, 0x4a92424d
ja 0x14012315b
mov rax, qword [rbp + 0xf0]
mov qword [rax], 0
jmp 0x140121dd1
mov rax, qword [rbp + 0xf8]
mov rax, qword [rax]
mov qword [rbp + 0xb0], rax
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax]
mov qword [rbp + 0xa8], rax
mov rcx, qword [rbp + 0xb0]
mov rax, qword [rbp + 0xa8]
movsxd rax, dword [rax + 4]
add rcx, rax
sub rsp, 0x20
call qword [sym.imp.MSVCP140.dll_public:_long_long___int64____cdecl_std::ios_base::width_void_const___ptr64]
mov rdx, qword [rbp + 0xd0]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf0]
mov rdx, qword [rdx]
movabs r8, 0xbed7a95b3c47ce17
add rcx, r8
sub rcx, rdx
movabs rdx, 0xbed7a95b3c47ce17
sub rcx, rdx
mov qword [rax], rcx
mov ecx, dword [0x14014458c]
imul ecx, dword [0x140144590]
mov eax, ecx
xor eax, 0xe83812f8
xor eax, 0xffffffff
or ecx, 0xe83812f8
and ecx, eax
mov eax, ecx
xor eax, 0x70b6dfa4
and eax, ecx
imul eax, eax, 0x1d6bad07
cmp eax, 0xf3a09fee
ja 0x140121dd1
mov eax, dword [0x140144594]
xor eax, dword [0x140144598]
add eax, 0xf8f49037
add eax, 0x5fe0ba41
sub eax, 0xf8f49037
add eax, 0x80799379
mov ecx, eax
xor ecx, 0x93783de5
xor ecx, 0xffffffff
or eax, 0x93783de5
and eax, ecx
cmp eax, 0x58d71f6
ja 0x14012316e
mov rcx, qword [rbp + 0x100]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.140124bd0
mov rcx, qword [rbp + 0x100]
call fcn.14011fc20
add rsp, 0x20
mov byte [rbp + 0xa7], al
mov eax, dword [0x1401445a4]
and eax, dword [str.W.a6]
xor eax, 0xd1eabd70
sub eax, 0xc8893815
sub eax, 0xedb55ce0
cmp eax, 0xc6b54a83
je 0x14012319d
mov eax, dword [0x1401445ac]
imul eax, dword [0x1401445b0]
or eax, 0xd06b412f
sub eax, 0xe4923247
imul eax, eax, 0x3aa1b164
cmp eax, 0xab50ba26
jb 0x14012319d
mov al, byte [rbp + 0xa7]
test al, 1
jne 0x140121f71
jmp 0x140121ed8
mov ecx, dword [0x1401445b4]
mov edx, dword [0x1401445b8]
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
mov ecx, 0x9eeacc50
xor edx, edx
div ecx
add eax, 0xef991766
sub eax, 0xf69a229a
cmp eax, 0x9f220d50
jb 0x1401231a2
mov rcx, qword [rbp + 0xe0]
mov eax, dword [0x1401445bc]
mov edx, dword [0x1401445c0]
xor edx, 0xffffffff
sub edx, 0xffffffff
sub eax, edx
sub eax, 0x36b38817
mov r8d, 0x9542241f
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xffffffff
and edx, 0x6e27e090
and eax, 0x91d81f6f
sub eax, edx
mov ecx, dword [rcx]
or ecx, 4
mov dword [rbp + 0xa0], ecx
cmp eax, 0xaab2c731
jae 0x1401231a2
mov rax, qword [rbp + 0xe0]
mov ecx, dword [rbp + 0xa0]
mov dword [rax], ecx
jmp 0x140122e9b
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rax]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
add rcx, rax
sub rsp, 0x20
call fcn.140124bf0
add rsp, 0x20
xor eax, 0xffffffff
or eax, 0xfffffe3f
xor eax, 0xffffffff
cmp eax, 0x40
je 0x14012250b
mov ecx, dword [0x1401445c4]
mov r8d, dword [0x1401445c8]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
add ecx, 0x4251430e
add ecx, 0xaa84b65d
sub ecx, 0x4251430e
xor ecx, 0xff918de
mov eax, ecx
xor eax, 0x64022c4
and eax, ecx
cmp eax, 0x9aac336c
ja 0x1401231a7
mov eax, dword [0x1401445cc]
and eax, dword [0x1401445d0]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x208fc0ca
add eax, ecx
sub eax, 0x4905487
xor eax, 0xe522e206
cmp eax, 0x5da6513f
jbe 0x140122003
jmp 0x140122038
mov rcx, qword [rbp + 0xf0]
xor eax, eax
cmp rax, qword [rcx]
jae 0x140122506
mov edx, dword [0x1401445d4]
add edx, dword [0x1401445d8]
xor edx, 0xffffffff
or edx, 0xd1d91301
mov eax, edx
xor eax, 0xffffffff
and edx, 0x7525fae9
mov ecx, eax
and ecx, 0x8ada0516
imul ecx, edx
mov edx, eax
and edx, 0x7525fae9
or eax, 0x7525fae9
imul eax, edx
add eax, ecx
add eax, 0xcffe7f76
cmp eax, 0x61aba372
je 0x1401231ac
mov rcx, qword [rbp + 0xf8]
mov edx, dword [0x1401445dc]
mov r9d, dword [0x1401445e0]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, edx
and r8d, r10d
mov eax, edx
or eax, r10d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
or edx, 0xe755eee0
mov eax, edx
and eax, 0x57b2cb88
xor edx, 0xffffffff
and edx, 0xa84d3477
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, 0x5071bc8a
add eax, edx
mov rcx, qword [rcx]
mov qword [rbp + 0x90], rcx
mov rcx, qword [rcx]
add rcx, 4
mov qword [rbp + 0x98], rcx
cmp eax, 0x9d1e022b
je 0x1401231ac
mov rcx, qword [rbp + 0x90]
mov rax, qword [rbp + 0x98]
movsxd rax, dword [rax]
add rcx, rax
sub rsp, 0x20
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ios_char__struct_std::char_traits_char__::rdbuf_void_const___ptr64]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xf8]
mov qword [rbp + 0x78], rcx
mov rax, qword [rax]
mov qword [rbp + 0x80], rax
mov rax, qword [rax]
add rax, 4
mov qword [rbp + 0x88], rax
mov eax, dword [0x1401445e4]
mov edx, dword [0x1401445e8]
xor edx, 0xffffffff
mov ecx, eax
xor ecx, edx
and ecx, eax
mov eax, ecx
and eax, 0x34b0fdd7
shl eax, 1
add ecx, 0x34b0fdd7
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
or eax, 0xb0945142
xor ecx, 0xffffffff
or ecx, 0x4f6baebd
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
sub eax, 0xd572dc4c
cmp eax, 0x8695d9f1
jbe 0x1401231b1
mov rcx, qword [rbp + 0x80]
mov rax, qword [rbp + 0x88]
movsxd rax, dword [rax]
add rcx, rax
sub rsp, 0x20
mov rax, qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::fill_void_const___ptr64]
call rax
mov rcx, qword [rbp + 0x78]
add rsp, 0x20
mov dl, al
sub rsp, 0x20
mov rax, qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sputc_char____ptr64]
call rax
add rsp, 0x20
mov dword [rbp + 0x74], eax
jmp 0x14012220a
sub rsp, 0x20
call fcn.140120480
mov edx, dword [rbp + 0x74]
add rsp, 0x20
mov ecx, eax
sub rsp, 0x20
call fcn.140120060
add rsp, 0x20
mov byte [rbp + 0x73], al
mov eax, dword [0x1401445f4]
add eax, dword [0x1401445f8]
imul eax, eax, 0x21446186
sub eax, 0x7018ab36
or eax, 0x6ecd115b
cmp eax, 0xb213ccb7
ja 0x1401231d7
mov edx, dword [0x1401445fc]
xor edx, dword [0x140144600]
mov eax, edx
xor eax, 0x2fe195dc
and edx, 0xd01e6a23
shl edx, 1
sub edx, eax
mov ecx, edx
xor ecx, 0xffffffff
mov eax, ecx
and eax, 0xd9b2fd3c
and edx, 0x264d02c3
or eax, edx
xor eax, 0x98200c3
or ecx, 0x2fcf0200
xor ecx, 0xffffffff
or eax, ecx
mov edx, eax
and edx, 0x978ca20d
mov ecx, eax
or ecx, 0x978ca20d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x68735df2
or eax, 0x68735df2
imul eax, edx
add eax, ecx
cmp eax, 0x744df73e
jbe 0x1401231d7
mov al, byte [rbp + 0x73]
test al, 1
jne 0x1401222d7
jmp 0x14012232b
mov rax, qword [rbp + 0xe0]
mov ecx, dword [rax]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
or eax, 4
mov dword [rbp + 0x6c], eax
mov rcx, qword [rbp + 0xe0]
mov edx, dword [rbp + 0x6c]
mov eax, dword [0x14014461c]
xor eax, dword [0x140144620]
and eax, 0x1963390e
imul eax, eax, 0x93254cf
xor eax, 0x4a38ee09
mov dword [rcx], edx
cmp eax, 0x45eb4113
je 0x1401231dc
jmp 0x140122506
mov ecx, dword [0x14014462c]
mov edx, dword [0x140144630]
xor edx, 0xffffffff
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, eax
and ecx, 0x95463d2c
shl ecx, 1
xor eax, 0x95463d2c
add eax, ecx
sub eax, 0x99f78bb2
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x71ed56e5
and eax, 0x8e12a91a
sub eax, ecx
cmp eax, 0x3e28bd66
jbe 0x1401231ed
mov eax, dword [0x140144634]
mov ecx, dword [0x140144638]
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
imul ecx, eax, 0xc4f94a9f
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xdf09e0e3
and ecx, 0x20f61f1c
or eax, ecx
mov ecx, eax
and ecx, 0x759e6553
shl ecx, 1
add eax, 0x759e6553
sub eax, ecx
cmp eax, 0x7b1240c2
jae 0x1401231f2
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
sub rax, 1
mov qword [rbp + 0x60], rax
mov ecx, dword [0x140144644]
mov eax, dword [0x140144648]
xor eax, 0xffffffff
sub eax, 0xffffffff
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xb36c0c1d
and ecx, 0x4c93f3e2
or eax, ecx
imul eax, eax, 0x3195a078
and eax, 0xa1cb9ba0
cmp eax, 0x1608065a
jb 0x1401231f7
mov rcx, qword [rbp + 0xf0]
mov eax, dword [0x14014464c]
mov r8d, dword [0x140144650]
mov edx, eax
add edx, 1
xor eax, 0xffffffff
or eax, r8d
add eax, edx
sub eax, 0xe990bb8a
mov r8d, 0xb37b7cd5
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x60]
mov r9d, eax
mov r8d, r9d
xor r8d, 0xffffffff
mov eax, r8d
and eax, 0x69844f30
and r9d, 0x967bb0cf
or eax, r9d
xor eax, 0x1c77981
or r8d, 0x97bcc94e
xor r8d, 0xffffffff
or eax, r8d
mov qword [rcx], rdx
cmp eax, 0x6ec4b38
jbe 0x14012240c
mov ecx, dword [0x140144654]
xor ecx, dword [0x140144658]
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xe3120a2b
and ecx, 0x1cedf5d4
or eax, ecx
xor eax, 0x277d6d0d
add eax, 0x62e7a9dc
mov ecx, eax
xor ecx, 0xccab29a2
xor ecx, 0xffffffff
and ecx, 0xccab29a2
shl ecx, 1
sub ecx, 0xccab29a2
sub eax, ecx
cmp eax, 0xcbf1bed2
jae 0x14012320a
mov eax, dword [str.Cq_C5:C]
mov ecx, dword [0x140144660]
xor ecx, 0xffffffff
add eax, ecx
add eax, 1
xor eax, 0xffffffff
or eax, 0xe329869d
xor eax, 0xffffffff
or eax, 0x57fd3290
imul eax, eax, 0xa5a4d0da
cmp eax, 0x56f70dc4
jbe 0x14012320a
jmp 0x140122038
jmp 0x14012250b
mov rax, qword [rbp + 0xe0]
mov eax, dword [rax]
mov dword [rbp + 0x5c], eax
mov eax, dword [0x140144664]
xor edx, edx
div dword [0x140144668]
mov ecx, eax
sub ecx, 0x45c5a54a
sub ecx, 0x9383e3e
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x631b6df0
and ecx, 0x9ce4920f
or eax, ecx
xor eax, 0x804f3631
cmp eax, 0x7164956e
ja 0x14012320f
mov ecx, dword [rbp + 0x5c]
mov eax, dword [0x14014466c]
mov r9d, dword [0x140144670]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0xc9e27116
xor edx, edx
div r8d
xor eax, 0xb1e585be
add eax, 0x4e47044e
cmp ecx, 0
sete cl
mov byte [rbp + 0x5b], cl
cmp eax, 0x8346c4df
ja 0x14012320f
mov eax, dword [0x140144674]
xor edx, edx
div dword [0x140144678]
sub eax, 0x44c072ff
add eax, 0x2ae3ea14
add eax, 0x44c072ff
sub eax, 0x7c340858
and eax, 0xfafa8f4d
cmp eax, 0xb39e8a89
jae 0x140123214
mov eax, dword [str.oyB_]
mov ecx, dword [0x140144680]
xor ecx, 0xffffffff
sub ecx, 0xffffffff
sub eax, ecx
sub eax, 0x4a9358f4
add eax, 0xa0981a1c
sub eax, 0x636c4853
cmp eax, 0xe6639509
jb 0x140123214
mov al, byte [rbp + 0x5b]
test al, 1
jne 0x140122626
jmp 0x140122894
mov ecx, dword [0x140144684]
mov edx, dword [0x140144688]
mov eax, ecx
and eax, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
sub eax, 0x9e2c4f99
add eax, 0xaed385b2
add eax, 0xadf7bea6
cmp eax, 0xa17dc2f3
ja 0x140123219
mov rax, qword [rbp + 0xf8]
mov rax, qword [rax]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rax, rcx
mov qword [rbp + 0x50], rax
mov eax, dword [0x140144694]
mov ecx, dword [0x140144698]
add eax, 0x4184eede
sub eax, ecx
sub eax, 0x4184eede
sub eax, 0x7cf67e00
mov ecx, 0xf36269f7
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, eax
add ecx, 0x4dfb9313
xor eax, eax
sub eax, ecx
cmp eax, 0x385105e0
jb 0x14012321e
mov rcx, qword [rbp + 0x50]
mov eax, dword [0x14014469c]
sub eax, dword [0x1401446a0]
mov r8d, 0xeec3e5d9
xor edx, edx
div r8d
xor eax, 0xb9a09be3
add eax, 0x946655a9
mov dword [rbp + 0x34], eax
sub rsp, 0x20
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ios_char__struct_std::char_traits_char__::rdbuf_void_const___ptr64]
mov rdx, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x34]
mov qword [rbp + 0x38], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x40], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x48], rcx
cmp eax, 0xb94d1bf
jb 0x1401226b4
mov r8, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x38]
sub rsp, 0x20
call fcn.140124c10
add rsp, 0x20
mov qword [rbp + 0x28], rax
jmp 0x14012273d
mov eax, dword [0x1401446a4]
mov ecx, dword [str._uPz]
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
or eax, 0xc1ae3399
or eax, 0xfd12cb6
mov ecx, eax
xor ecx, 0x178ce55c
and eax, 0xe8731aa3
shl eax, 1
sub eax, ecx
cmp eax, 0xaaff9e15
jbe 0x140123234
mov rcx, qword [rbp + 0xd0]
mov edx, dword [0x1401446ac]
mov r8d, dword [0x1401446b0]
mov eax, edx
and eax, r8d
xor edx, r8d
or eax, edx
mov r8d, 0xf4645920
xor edx, edx
div r8d
add eax, 0xfb63c985
or eax, 0xfa55ce33
mov rcx, qword [rcx]
mov qword [rbp + 0x20], rcx
cmp eax, 0xb7a8cbea
jbe 0x14012277a
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x20]
cmp rax, rcx
setne al
mov byte [rbp + 0x1f], al
mov eax, dword [0x1401446bc]
xor edx, edx
div dword [0x1401446c0]
mov ecx, eax
xor ecx, 0x2662fc98
xor ecx, 0xffffffff
and ecx, 0x2662fc98
shl ecx, 1
sub ecx, 0x2662fc98
sub eax, ecx
imul eax, eax, 0x51870237
xor eax, 0x4af04b47
cmp eax, 0x7809afa8
jae 0x1401227d0
mov al, byte [rbp + 0x1f]
test al, 1
jne 0x14012281f
jmp 0x140122894
mov eax, dword [0x1401446c4]
imul eax, dword [0x1401446c8]
mov edx, eax
and edx, 0x99a137b3
mov ecx, eax
or ecx, 0x99a137b3
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x665ec84c
or eax, 0x665ec84c
imul eax, edx
add eax, ecx
mov ecx, 0x9b97503c
xor edx, edx
div ecx
sub eax, 0xc923334f
cmp eax, 0x9ea7363c
ja 0x140123239
mov rax, qword [rbp + 0xe0]
mov eax, dword [rax]
mov dword [rbp + 0x18], eax
mov rax, qword [rbp + 0xe0]
mov edx, dword [rbp + 0x18]
mov ecx, edx
and ecx, 4
xor edx, 4
or ecx, edx
mov dword [rax], ecx
jmp 0x140122e70
mov eax, dword [0x1401446ec]
mov ecx, dword [0x1401446f0]
sub eax, 0x2cfc7607
add eax, ecx
add eax, 0x2cfc7607
mov edx, eax
xor edx, 0xffffffff
and edx, 0x6a3ef3f1
mov ecx, eax
and ecx, 0x95c10c0e
imul ecx, edx
mov edx, eax
and edx, 0x6a3ef3f1
or eax, 0x6a3ef3f1
imul eax, edx
add eax, ecx
add eax, 0x5e5d44da
xor eax, 0x8bd85ba3
cmp eax, 0x81992eeb
je 0x140122894
jmp 0x1401228ee
mov eax, dword [0x1401446f4]
mov edx, dword [0x1401446f8]
mov ecx, eax
and ecx, edx
or eax, edx
add ecx, eax
mov eax, ecx
and eax, 0x9b3e38cf
xor ecx, 0xffffffff
or ecx, 0x64c1c730
xor ecx, 0xffffffff
or eax, ecx
add eax, 0x8a1056ae
add eax, 0xd8e9e6d
cmp eax, 0x23cdb0ba
jb 0x14012323e
mov rcx, qword [rbp + 0xf0]
mov edx, dword [0x1401446fc]
xor edx, dword [0x140144700]
add edx, 0x6a156caf
mov eax, edx
xor eax, 0x16b2ff9d
and eax, edx
sub eax, 0x4c8866c6
mov rcx, qword [rcx]
mov qword [rbp + 0x10], rcx
cmp eax, 0x8f3e6c2a
je 0x14012323e
mov rcx, qword [rbp + 0x10]
xor eax, eax
cmp rax, rcx
setb al
mov byte [rbp + 0xf], al
mov eax, dword [0x14014471c]
sub eax, dword [0x140144720]
imul eax, eax, 0x8d64adc1
xor ecx, ecx
sub ecx, eax
add ecx, 0xc7ec3bd7
xor eax, eax
sub eax, ecx
and eax, 0xa523b927
cmp eax, 0x2f39cfa3
jb 0x140123243
mov al, byte [rbp + 0xf]
test al, 1
jne 0x1401229b4
jmp 0x140122e19
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rax]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
add rcx, rax
sub rsp, 0x20
call fcn.140124c30
add rsp, 0x20
mov qword [rbp], rax
mov eax, dword [0x140144724]
mov edx, dword [0x140144728]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
imul eax, eax, 0x7685aa0c
add eax, 0x4ed1f7a8
xor eax, 0x21a86e95
cmp eax, 0x385157f5
ja 0x140123248
mov rax, qword [rbp + 0xf8]
mov rax, qword [rax]
mov qword [rbp - 0x10], rax
mov rax, qword [rax]
movsxd rax, dword [rax + 4]
mov qword [rbp - 8], rax
mov eax, dword [0x140144734]
or eax, dword [0x140144738]
mov edx, eax
xor edx, 0xffffffff
and edx, 0x21da3274
mov ecx, eax
and ecx, 0xde25cd8b
imul ecx, edx
mov edx, eax
and edx, 0x21da3274
or eax, 0x21da3274
imul eax, edx
add eax, ecx
mov edx, eax
and edx, 0x6388c397
mov ecx, eax
or ecx, 0x6388c397
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x9c773c68
or eax, 0x9c773c68
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x33ffc21a
shl ecx, 1
add eax, 0x33ffc21a
sub eax, ecx
cmp eax, 0x5f95025a
jae 0x14012324d
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
add rcx, rax
sub rsp, 0x20
mov rax, qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::fill_void_const___ptr64]
call rax
mov rcx, qword [rbp]
add rsp, 0x20
mov dl, al
sub rsp, 0x20
mov rax, qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::sputc_char____ptr64]
call rax
add rsp, 0x20
mov dword [rbp - 0x14], eax
jmp 0x140122be1
mov eax, dword [0x140144784]
or eax, dword [0x140144788]
mov ecx, 0x1c129cd4
xor edx, edx
div ecx
xor eax, 0xc26eb344
mov ecx, eax
xor ecx, 0x420ea5c2
xor ecx, 0xffffffff
and ecx, 0x420ea5c2
shl ecx, 1
sub ecx, 0x420ea5c2
sub eax, ecx
cmp eax, 0xa3e1a920
je 0x140123270
mov eax, dword [0x14014478c]
mov edx, dword [0x140144790]
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
mov ecx, 0x3d9d629f
xor edx, edx
div ecx
and eax, 0x4827757a
mov ecx, eax
and ecx, 0xc39b0f6b
mov edx, eax
xor edx, 0x3c64f094
add eax, edx
sub eax, ecx
cmp eax, 0x6d56ce41
jae 0x140122b95
jmp 0x140122e9b
sub rsp, 0x20
call fcn.140124c50
add rsp, 0x20
mov dword [rbp - 0x34], eax
mov eax, dword [0x140144794]
sub eax, dword [0x140144798]
xor eax, 0x61cda19e
mov edx, eax
xor edx, 0xffffffff
and edx, 0x1b380a6
mov ecx, eax
and ecx, 0xfe4c7f59
imul ecx, edx
mov edx, eax
and edx, 0x1b380a6
or eax, 0x1b380a6
imul eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0x37892ad0
and eax, 0xc876d52f
shl eax, 1
sub eax, ecx
cmp eax, 0x43e09a85
jb 0x140123275
mov edx, dword [rbp - 0x14]
mov ecx, dword [rbp - 0x34]
sub rsp, 0x20
call fcn.140120060
add rsp, 0x20
test al, 1
jne 0x140122c66
jmp 0x140122cd1
mov rax, qword [rbp + 0xe0]
mov ecx, dword [rax]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and eax, 0xfffffffb
xor eax, 0xffffffff
mov dword [rbp - 0x38], eax
mov rcx, qword [rbp + 0xe0]
mov eax, dword [0x1401447ac]
mov r8d, dword [0x1401447b0]
mov edx, r8d
and edx, eax
xor edx, 0xffffffff
add eax, r8d
add eax, 1
add eax, edx
mov r8d, 0x4467fa47
xor edx, edx
div r8d
mov edx, dword [rbp - 0x38]
xor eax, 0x9bb388d1
imul eax, eax, 0x78a460d7
mov dword [rcx], edx
cmp eax, 0x19f92183
je 0x140122c82
jmp 0x140122e19
mov eax, dword [0x1401447d4]
xor edx, edx
div dword [0x1401447d8]
imul eax, eax, 0x3ea5cd3e
xor eax, 0x34a7ec7a
sub eax, 0x1297bda
cmp eax, 0x1a412bbb
ja 0x14012328d
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
mov rcx, qword [rbp + 0xf0]
mov rdx, qword [rbp - 0x40]
mov eax, dword [0x1401447ec]
mov r8d, dword [0x1401447f0]
xor eax, 0xffffffff
xor r8d, 0xffffffff
and eax, r8d
xor eax, 0xffffffff
mov r8d, eax
xor r8d, 0x7240e562
xor r8d, 0xffffffff
and r8d, 0x7240e562
shl r8d, 1
sub r8d, 0x7240e562
sub eax, r8d
and eax, 0x40e40031
add eax, 0xc745fbe
add rdx, 0xffffffffffffffff
mov qword [rcx], rdx
cmp eax, 0x119c9035
jb 0x140123292
mov ecx, dword [0x1401447f4]
mov eax, dword [0x1401447f8]
add ecx, 0xb4cedeec
add ecx, eax
sub ecx, 0xb4cedeec
mov eax, ecx
and eax, 0xb36da66e
xor ecx, 0xffffffff
and ecx, 0x4c925991
or eax, ecx
xor eax, 0xffffffff
mov edx, eax
and edx, 0xca2f472e
mov ecx, eax
or ecx, 0xca2f472e
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x35d0b8d1
or eax, 0x35d0b8d1
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x3a22f07f
shl ecx, 1
add eax, 0x3a22f07f
sub eax, ecx
cmp eax, 0x558fd589
je 0x1401232c3
mov eax, dword [0x1401447fc]
add eax, dword [0x140144800]
xor eax, 0xffffffff
or eax, 0x18f7ca6b
xor eax, 0xffffffff
sub eax, 0xc01f070b
sub eax, 0xc59f2f8b
add eax, 0xc01f070b
or eax, 0x11fd649f
cmp eax, 0x68093712
jbe 0x1401232c3
jmp 0x1401228ee
mov eax, dword [0x14014480c]
mov edx, dword [0x140144810]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xeaf0c9cc
and eax, 0x150f3633
sub eax, ecx
add eax, 0xe965558a
add eax, 0xcba3e7b7
sub eax, 0xe965558a
and eax, 0xbb936a4d
cmp eax, 0x6b3fe534
jb 0x1401232c8
jmp 0x140122e70
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rax]
mov rax, qword [rcx]
movsxd rax, dword [rax + 4]
add rcx, rax
xor eax, eax
mov edx, eax
sub rsp, 0x20
call qword [sym.imp.MSVCP140.dll_public:_long_long___int64____cdecl_std::ios_base::width_long_long___int64_____ptr64]
add rsp, 0x20
jmp 0x140122b55
mov rax, qword [rbp + 0xf8]
mov rax, qword [rax]
mov qword [rbp - 0x50], rax
mov rax, qword [rax]
mov eax, dword [rax + 4]
mov dword [rbp - 0x44], eax
mov eax, dword [0x140144814]
sub eax, dword [0x140144818]
and eax, 0x5614cd2c
and eax, 0x5ad311d5
mov ecx, eax
xor ecx, 0x6fadd398
and eax, 0x90522c67
shl eax, 1
sub eax, ecx
cmp eax, 0x84795f6b
jbe 0x1401232cd
mov ecx, dword [rbp - 0x44]
mov eax, dword [0x14014481c]
xor edx, edx
div dword [0x140144820]
xor eax, 0x1233c905
mov r8d, eax
and r8d, 0x2d9a33b5
mov edx, eax
or edx, 0x2d9a33b5
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0xd265cc4a
or eax, 0xd265cc4a
imul eax, r8d
add eax, edx
mov r8d, eax
and r8d, 0xaab2be61
mov edx, eax
or edx, 0xaab2be61
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x554d419e
or eax, 0x554d419e
imul eax, r8d
add eax, edx
movsxd rcx, ecx
mov qword [rbp - 0x58], rcx
cmp eax, 0x514ebe27
jbe 0x1401232cd
mov ecx, dword [0x140144824]
or ecx, dword [0x140144828]
mov eax, ecx
xor eax, 0x8d2e6706
and eax, ecx
xor eax, 0x19d5d1bd
sub eax, 0xa1a989a
cmp eax, 0x6ac3606e
ja 0x1401232d2
mov rcx, qword [rbp + 0xe0]
mov r8, qword [rbp - 0x58]
mov eax, dword [0x14014482c]
mov r10d, dword [0x140144830]
mov r11d, r10d
xor r11d, 0xffffffff
mov r9d, eax
and r9d, r11d
mov edx, eax
or edx, r11d
xor edx, 0xffffffff
imul edx, r9d
mov r9d, eax
and r9d, r10d
or eax, r10d
imul eax, r9d
add eax, edx
mov r9d, 0x10a6090f
xor edx, edx
div r9d
mov rdx, qword [rbp - 0x50]
mov r9d, eax
mov eax, r9d
xor eax, 0xffffffff
mov r10d, r9d
xor r10d, 0xffffffff
or eax, r10d
xor eax, 0xffffffff
or eax, 0x1611309d
xor r9d, 0xffffffff
or r9d, 0xe9eecf62
and eax, r9d
xor eax, 0xffffffff
imul eax, eax, 0x47fc69d9
add rdx, r8
mov qword [rbp - 0x68], rdx
mov ecx, dword [rcx]
mov dword [rbp - 0x5c], ecx
cmp eax, 0x9e75e188
ja 0x140122f92
mov edx, dword [rbp - 0x5c]
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
mov rax, qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
xor r8d, r8d
call rax
add rsp, 0x20
jmp 0x14012304a
mov rcx, qword [rbp + 0xf8]
mov edx, dword [0x14014483c]
mov r8d, dword [0x140144840]
xor r8d, 0xffffffff
mov eax, edx
xor eax, r8d
and eax, edx
mov r8d, 0xb17f27d8
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x53857b6
and edx, 0xfac7a849
or eax, edx
add eax, 0xdadd4955
mov rcx, qword [rcx]
mov qword [rbp - 0x70], rcx
cmp eax, 0xf35ebeff
jae 0x1401232d7
mov ecx, dword [0x140144844]
mov edx, dword [0x140144848]
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
imul eax, eax, 0x93bcde15
or eax, 0xfd3e569
mov ecx, eax
and ecx, 0xd300f582
xor ecx, 0xffffffff
add eax, 0xd300f582
add eax, 1
add eax, ecx
cmp eax, 0x62832b5c
jb 0x1401232dc
mov rcx, qword [rbp + 0x100]
sub rsp, 0x20
call fcn.1401242a0
add rsp, 0x20
mov eax, dword [0x14014485c]
or eax, dword [0x140144860]
or eax, 0x50cfebe6
mov ecx, eax
xor ecx, 0xddb65389
xor ecx, 0xffffffff
or eax, 0xddb65389
and eax, ecx
and eax, 0x469832dc
cmp eax, 0x1b0abe2d
jb 0x1401232f5
mov rax, qword [rbp - 0x70]
lea rsp, [rbp + 0x138]
pop rsi
pop rbp
ret
mov rax, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x108]
add rcx, rax
sub rsp, 0x20
call fcn.140124230
add rsp, 0x20
jmp 0x140121c0f
jmp 0x140121c8b
mov rax, qword [rbp + 0xf0]
mov qword [rax], 0
jmp 0x140121d45
mov rcx, qword [rbp + 0x100]
mov rax, qword [rbp + 0xf8]
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.140124bd0
mov rcx, qword [rbp + 0x100]
call fcn.14011fc20
add rsp, 0x20
jmp 0x140121e47
jmp 0x140121e9d
jmp 0x140121f0a
jmp 0x140122003
jmp 0x140122097
mov rcx, qword [rbp + 0x80]
mov rax, qword [rbp + 0x88]
movsxd rax, dword [rax]
add rcx, rax
sub rsp, 0x20
call fcn.140124c70
add rsp, 0x20
jmp 0x1401221c6
jmp 0x140122253
mov rax, qword [rbp + 0xe0]
mov ecx, dword [rbp + 0x6c]
mov dword [rax], ecx
jmp 0x1401222f3
jmp 0x14012232b
jmp 0x1401223be
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0x60]
mov qword [rax], rcx
jmp 0x14012240c
jmp 0x1401224cc
jmp 0x140122555
jmp 0x1401225e8
jmp 0x14012265d
mov rcx, qword [rbp + 0x50]
sub rsp, 0x20
call fcn.140124c30
add rsp, 0x20
jmp 0x1401226b4
jmp 0x14012277a
jmp 0x14012286d
jmp 0x14012292c
jmp 0x140122974
jmp 0x140122a0e
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
add rcx, rax
sub rsp, 0x20
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::fill_void_const___ptr64]
add rsp, 0x20
jmp 0x140122a9f
jmp 0x140122b95
mov edx, dword [rbp - 0x14]
mov ecx, dword [rbp - 0x34]
sub rsp, 0x20
call fcn.1401242c0
add rsp, 0x20
jmp 0x140122c46
jmp 0x140122cfa
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp - 0x40]
movabs rdx, 0x1302aaf878c7b54d
add rcx, rdx
add rcx, 0xffffffffffffffff
movabs rdx, 0x1302aaf878c7b54d
sub rcx, rdx
mov qword [rax], rcx
jmp 0x140122d08
jmp 0x140122dde
jmp 0x140122e19
jmp 0x140122ee4
jmp 0x140122f92
jmp 0x14012304a
mov rcx, qword [rbp + 0x100]
sub rsp, 0x20
call fcn.1401242a0
add rsp, 0x20
jmp 0x1401230de
jmp 0x1401230f2