Function at 0x14012a300
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0xe0]
sub rsp, 0x1e0
mov rax, qword [0x1402a1fc0]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov rsi, rcx
xor ebx, ebx
call fcn.1401e1ad8
lea r15, str.DataGlobalEditorConfig.json
mov qword [rbp + 0x80], r15
mov qword [rbp + 0x88], 0x1c
lea r8, [rbp + 0x80]
mov edx, eax
lea rcx, [rsp + 0x40]
call fcn.1400ff950
nop
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rcx, qword [rsp + 0x40]
mov r9d, 0xffffffff
lea r8d, [rbx + 3]
lea rdx, [rbp + 0x90]
call fcn.1401e1ed4
mov edx, eax
mov r14d, 0xffff
test eax, eax
jne 0x1401284e1
mov eax, dword [rbp + 0xa0]
test al, 1
mov ecx, 0x1ff
mov r8d, 0x16d
cmovne ecx, r8d
mov dword [rbp + 0x84], ecx
bt eax, 0xa
jae 0x1401284d3
mov ecx, dword [rbp + 0xa4]
cmp ecx, 0xa000000c
jne 0x1401284c4
lea eax, [rbx + 4]
jmp 0x140128503
cmp ecx, 0xa0000003
jne 0x1401284d3
mov eax, 0xa
jmp 0x140128503
movzx eax, al
and eax, 0x10
or eax, 0x20
shr eax, 4
jmp 0x140128503
mov dword [rbp + 0x84], r14d
sub eax, 2
je 0x1401284fe
sub eax, 1
je 0x1401284fe
sub eax, 0x32
je 0x1401284fe
cmp eax, 0x46
mov eax, ebx
jne 0x140128503
mov eax, 1
mov dword [rbp + 0x80], edx
lea rcx, [0x1402a6630]
mov qword [rbp + 0x88], rcx
movaps xmm0, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x80], xmm0
test eax, eax
je 0x1401285fd
cmp eax, 1
sete dil
lea rcx, [rsp + 0x40]
call fcn.140101d20
test dil, dil
je 0x14012860d
mov r8d, 2
mov rdx, r15
lea rcx, [rsp + 0x70]
call fcn.140114a10
nop
mov rdx, qword [str.__global_scale_:_1___open_windows_:__]
mov rcx, rax
call fcn.140010d50
nop
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x70], rax
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x6c], edx
lea rcx, [rsp + 0x78]
call fcn.140030d90
lea rcx, [rbp - 0x80]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x18]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
mov qword [rbp + 0xc8], rbx
lea r8, [rbp + 0x90]
lea rcx, [rbp + 0x80]
call fcn.14012a390
lea rdi, [rsi + 0x138]
movzx edx, byte [rdi]
movzx ecx, byte [rax]
mov byte [rdi], cl
mov byte [rax], dl
lea rcx, [rax + 8]
mov rdx, qword [rdi + 8]
mov r8, qword [rcx]
mov qword [rdi + 8], r8
mov qword [rcx], rdx
movzx edx, byte [rax]
call fcn.140018780
nop
jmp 0x1401286bb
mov dil, 1
test edx, edx
jne 0x1401289db
jmp 0x140128535
lea rax, [rbp + 0x90]
mov qword [rsp + 0x38], rax
mov qword [rbp + 0xc8], rbx
mov r8d, 1
mov rdx, r15
lea rcx, [rsp + 0x70]
call fcn.140030110
nop
lea r8, [rbp + 0x90]
mov rdx, rax
lea rcx, [rbp + 0x80]
call fcn.14012a4b0
lea rdi, [rsi + 0x138]
movzx edx, byte [rdi]
movzx ecx, byte [rax]
mov byte [rdi], cl
mov byte [rax], dl
lea rcx, [rax + 8]
mov rdx, qword [rdi + 8]
mov r8, qword [rcx]
mov qword [rdi + 8], r8
mov qword [rcx], rdx
movzx edx, byte [rax]
call fcn.140018780
nop
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x70], rax
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x6c], edx
lea rcx, [rbp - 0x80]
call fcn.140030d90
lea rcx, [rbp - 0x78]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x20]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], 0xf
mov r8d, 0xc
lea rdx, str.global_scale
lea rcx, [rsp + 0x40]
call fcn.140005440
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.14010e170
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
lea rdx, [rsp + 0x38]
mov rcx, rax
call fcn.14001d950
mov rdi, qword [0x140369a98]
test rdi, rdi
je 0x14012871a
inc dword [rdi + 0xf8]
mov ecx, 0x6168
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x68], rcx
mov qword [rbp + 0x80], rax
test rax, rax
je 0x14012874c
xor edx, edx
mov rcx, rax
call fcn.14003b340
jmp 0x14012874f
mov rax, rbx
mov qword [0x140369a98], rax
call fcn.1400422c0
mov rax, qword [0x140369a98]
test rdi, rdi
cmovne rax, rdi
mov qword [0x140369a98], rax
test rax, rax
je 0x14012877b
inc dword [rax + 0xf8]
mov ecx, 0x630
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rdi, rax
mov qword [rbp + 0x80], rax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x60], rdi
test rdi, rdi
je 0x1401287bf
xor edx, edx
mov r8d, 0x630
mov rcx, rdi
call fcn.1401e227b
mov rcx, rdi
call fcn.1400e59d0
mov rbx, rax
mov rcx, rbx
call fcn.1400e5ed0
mov rax, qword [0x140369c88]
test rax, rax
cmove rax, rbx
mov qword [0x140369c88], rax
mov rdi, qword [0x140369a98]
lea rcx, [rdi + 0x38d8]
movss xmm5, dword [rsp + 0x38]
movaps xmm1, xmm5
call fcn.14003c6d0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rax
mov byte [rsp + 0x7c], 1
mov dword [rbp - 0x78], 2
mov dword [rbp - 0x74], 1
movss xmm0, dword [0x140257910]
movss dword [rbp - 0x4c], xmm0
movss xmm1, dword [0x140257644]
movss dword [rbp - 0x40], xmm1
mov word [rbp - 0x3c], r14w
mulss xmm5, dword [0x1402577f8]
movss dword [rbp - 0x7c], xmm5
lea rdx, [rsp + 0x70]
mov rcx, qword [rdi + 0x38]
call fcn.1400a8ce0
mov qword [rsi + 0x148], rax
mov qword [rdi + 0x48], rax
mov rbx, qword [rdi + 0x38]
cmp dword [rbx + 0x78], 0
jne 0x14012888e
xor edx, edx
mov rcx, rbx
call fcn.1400a8ce0
mov rax, qword [rbx + 0x488]
test rax, rax
jne 0x1401288af
lea rax, [0x1400a9380]
mov qword [0x14036b620], rax
lea rax, [0x14036b620]
mov rcx, rbx
call qword [rax]
or dword [rdi + 8], 0x443
mov byte [rdi + 0x67], 1
xor ecx, ecx
call fcn.1400a21b0
mov rcx, qword [rsi + 0x120]
mov rcx, qword [rcx + 0x58]
call fcn.1400af3b0
call fcn.1400b09a0
lea rcx, [0x1402a6c78]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x80]
lea rcx, [rsi + 0xa0]
call fcn.14012de90
lea rcx, [0x1402b4480]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x80]
lea rcx, [rsi + 0xa0]
call fcn.14012e120
lea rcx, [0x1402a6ef0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x80]
lea rcx, [rsi + 0xa0]
call fcn.14012e3b0
lea rcx, [0x1402a6f70]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x80]
lea rcx, [rsi + 0xa0]
call fcn.14012e640
lea rcx, [0x1402a6ec0]
call qword [sym.imp.VCRUNTIME140.dll___std_type_info_hash]
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x80]
lea rcx, [rsi + 0xa0]
call fcn.14012e8d0
xor eax, eax
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.1401e0b10
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
lea r8, [rsp + 0x40]
lea rdx, [rbp + 0x80]
lea rcx, str.exists
call fcn.140127bc0
int3
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x1402a1fc0]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rsi, rcx
xor r13d, r13d
mov rax, qword [0x140369a98]
test rax, rax
je 0x140128fdd
mov rax, qword [rax + 0xa0]
jmp 0x140128fe0
mov rax, r13
cmp dword [rax + 0x30], r13d
jne 0x140128feb
call fcn.1400b19a0
call fcn.1400aff20
call fcn.140044f10
mov r12d, 1
cmp byte [rsi + 0x150], r13b
je 0x1401294cc
mov r8, qword [0x140369a98]
mov rax, qword [r8 + 0x4a30]
mov rdx, qword [rax]
mov ecx, dword [r8 + 0x4900]
or ecx, r12d
mov dword [r8 + 0x4900], ecx
movsd xmm0, qword [rdx + 0x18]
movsd qword [r8 + 0x4914], xmm0
mov qword [r8 + 0x491c], r13
mov dword [r8 + 0x4904], r12d
mov byte [r8 + 0x493c], r12b
or ecx, 2
mov dword [r8 + 0x4900], ecx
movsd xmm0, qword [rdx + 0x20]
movsd qword [r8 + 0x4924], xmm0
mov dword [r8 + 0x4908], r12d
mov eax, dword [rdx]
bts ecx, 8
mov dword [r8 + 0x4900], ecx
mov dword [r8 + 0x4964], eax
mov r9d, dword [rdx]
lea r8, str.DockSpaceViewport__08X
lea edx, [r12 + 0x1f]
lea rcx, [rbp + 7]
call fcn.14003d760
xorps xmm1, xmm1
lea ecx, [r12 + 2]
call fcn.14003fd80
xorps xmm1, xmm1
lea ecx, [r12 + 3]
call fcn.14003fd80
mov rbx, qword [0x140369a98]
lea rcx, [rbx + 0x49a0]
movss xmm1, dword [rbx + 0x38e0]
movss xmm0, dword [rbx + 0x38e4]
mov dword [rbp - 0x31], 2
movss dword [rbp - 0x2d], xmm1
movss dword [rbp - 0x29], xmm0
lea rdx, [rbp - 0x31]
call fcn.140071910
mov qword [rbx + 0x38e0], r13
xor edx, edx
mov r8d, 0x282027
lea rcx, [rbp + 7]
call fcn.14004b690
lea ecx, [r12 + 2]
call fcn.14003fe90
mov rax, qword [0x140369a98]
mov rbx, qword [rax + 0x4018]
movsxd rcx, dword [rbx + 0x128]
mov rax, qword [rbx + 0x130]
mov r8d, dword [rax + rcx*4 - 4]
xor edx, edx
lea rcx, str.DockSpace
call fcn.14003d900
mov edi, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x4060], eax
jne 0x14012915b
lea r8, str.DockSpace
lea edx, [r12 + 0xa]
mov ecx, eax
call fcn.140070500
mov qword [rbp - 0x39], r13
xor r8d, r8d
lea rdx, [rbp - 0x39]
mov ecx, edi
call fcn.140063d80
call fcn.14004e3d0
mov dword [rsi + 0x130], edi
mov rax, qword [rsi + 0x28]
mov rbx, qword [rax]
cmp rbx, rax
je 0x140129323
movabs r15, 0x100000001b3
mov rcx, qword [rbx + 0x30]
mov rax, qword [rcx]
call qword [rax + 8]
test al, al
jne 0x140129316
lea rax, [rbp - 0x59]
mov qword [rbp - 0x21], rax
mov byte [rbp - 0x59], 0
xor eax, eax
mov qword [rbp - 0x51], rax
xor edx, edx
lea rcx, [rbp - 0x51]
call fcn.140018780
mov byte [rbp - 0x59], 4
mov byte [rbp - 0x39], 0
mov rax, qword [rbp - 0x39]
mov qword [rbp - 0x51], rax
mov qword [rbp + 7], r13
mov qword [rbp + 0x17], r13
mov qword [rbp + 0x1f], 0xf
mov r8d, 0xc
lea rdx, str.open_windows
lea rcx, [rbp + 7]
call fcn.140005440
lea rdx, [rbp + 7]
lea rcx, [rsi + 0x138]
call fcn.14010e170
mov rdi, rax
lea r14, [rbx + 0x10]
mov rdx, r14
lea rcx, [rbp - 0x19]
call fcn.140005230
mov rdx, rax
mov rcx, rdi
call fcn.14010e170
nop
movzx edx, byte [rax]
movzx ecx, byte [rbp - 0x59]
mov byte [rax], cl
mov byte [rbp - 0x59], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rbp - 0x51]
mov qword [rax + 8], rdx
mov qword [rbp - 0x51], rcx
movzx edx, byte [rbp - 0x59]
lea rcx, [rbp - 0x51]
call fcn.140018780
nop
mov rdi, rbx
mov r9, qword [r14 + 0x10]
mov r8, r14
cmp qword [r14 + 0x18], 0x10
jb 0x140129264
mov r8, qword [r14]
movabs rcx, 0xcbf29ce484222325
mov rdx, r13
test r9, r9
je 0x140129294
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r15
inc rdx
cmp rdx, r9
jb 0x140129280
mov rdx, qword [rsi + 0x50]
and rdx, rcx
add rdx, rdx
mov rcx, qword [rsi + 0x38]
mov rax, qword [rcx + rdx*8]
cmp qword [rcx + rdx*8 + 8], rbx
jne 0x1401292cc
cmp rax, rbx
jne 0x1401292c1
mov rax, qword [rsi + 0x28]
mov qword [rcx + rdx*8], rax
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1401292d8
mov rax, qword [rbx + 8]
mov qword [rcx + rdx*8 + 8], rax
jmp 0x1401292d8
cmp rax, rbx
jne 0x1401292d8
mov rax, qword [rbx]
mov qword [rcx + rdx*8], rax
mov rbx, qword [rbx]
dec qword [rsi + 0x30]
mov rax, qword [rdi + 8]
mov qword [rax], rbx
mov rax, qword [rdi + 8]
mov qword [rbx + 8], rax
mov rcx, qword [r14 + 0x20]
test rcx, rcx
je 0x1401292ff
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov rcx, r14
call fcn.1400053c0
mov edx, 0x38
mov rcx, rdi
call fcn.1401e0dc8
jmp 0x140129319
mov rbx, qword [rbx]
cmp rbx, qword [rsi + 0x28]
jne 0x140129192
mov r14b, 1
mov rax, qword [rsi + 0x68]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1401294cc
nop word [rax + rax]
mov rdi, qword [rbx + 0x30]
test r14b, r14b
je 0x1401293d9
lea r14, [rdi + 8]
lea rcx, [rdi + 0x58]
mov r8d, 0xd
lea rdx, str.Properties
call fcn.1400055a0
mov rdi, rax
mov qword [rbp - 0x59], r13
mov qword [rbp - 0x49], r13
mov qword [rbp - 0x41], 0xf
mov byte [rbp - 0x59], 0
mov r8d, 0xd
lea rdx, str.Properties__
lea rcx, [rbp - 0x59]
call fcn.140005440
nop
mov r8, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0x10
jb 0x1401293a3
mov rdi, qword [rdi]
mov rdx, rdi
lea rcx, [rbp - 0x59]
call fcn.1400055a0
cmp qword [rax + 0x18], 0x10
jb 0x1401293b9
mov rax, qword [rax]
xor r8d, r8d
mov rdx, r14
mov rcx, rax
call fcn.14004b690
nop
lea rcx, [rbp - 0x59]
call fcn.1400053c0
xor r14b, r14b
jmp 0x14012947d
lea r15, [rdi + 8]
add rdi, 0x58
mov qword [rbp + 7], r13
mov qword [rbp + 0x17], r13
mov qword [rbp + 0x1f], 0xf
mov byte [rbp + 7], 0
mov r8d, 0xd
lea rdx, str.Properties__
lea rcx, [rbp + 7]
call fcn.140005440
nop
mov r8, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0x10
jb 0x14012941a
mov rdi, qword [rdi]
mov rdx, rdi
lea rcx, [rbp + 7]
call fcn.1400055a0
mov qword [rbp - 0x59], r13
mov qword [rbp - 0x49], r13
mov qword [rbp - 0x41], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x59], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x49], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rbp - 0x59]
cmp qword [rbp - 0x41], 0x10
cmovae rcx, qword [rbp - 0x59]
xor r8d, r8d
mov rdx, r15
call fcn.14004b690
nop
lea rcx, [rbp - 0x59]
call fcn.1400053c0
nop
lea rcx, [rbp + 7]
call fcn.1400053c0
mov rdx, qword [rbx + 0x30]
add rdx, 0x10
lea rcx, [0x14020c99c]
call fcn.1400c0230
mov rcx, qword [rbx + 0x30]
mov rax, qword [rcx]
call qword [rax + 8]
call fcn.14004e3d0
mov rax, qword [rbx + 0x30]
cmp byte [rax + 8], 0
jne 0x1401294bf
lea rcx, [rsi + 0x60]
mov r8, rbx
lea rdx, [rbp - 0x31]
call fcn.14012a890
mov rbx, qword [rax]
jmp 0x1401294c2
mov rbx, qword [rbx]
cmp rbx, qword [rsi + 0x68]
jne 0x140129340
call fcn.1400476a0
mov rax, qword [0x140369a98]
mov rcx, qword [rax + 0x4a30]
mov rcx, qword [rcx]
add rcx, 0xa8
cmp byte [rcx], 0
cmove rcx, r13
call fcn.1400b0fe0
mov rax, qword [0x140369a98]
test dword [rax + 8], 0x400
je 0x1401295d7
call fcn.1401d5e90
mov r13, rax
call fcn.14005c8c0
mov rbx, qword [0x140369a98]
mov r14d, r12d
cmp dword [rbx + 0x38c8], r12d
jle 0x1401295cf
mov esi, 8
mov r15d, esi
mov rax, qword [rbx + 0x38d0]
mov rdi, qword [r15 + rax]
test dword [rdi + 4], 0x1000
jne 0x14012956f
mov rax, qword [rbx + 0x3868]
test rax, rax
je 0x14012955c
xor edx, edx
mov rcx, rdi
call rax
mov rax, qword [rbx + 0x38a8]
test rax, rax
je 0x14012956f
xor edx, edx
mov rcx, rdi
call rax
inc r14d
add r15, rsi
mov eax, dword [rbx + 0x38c8]
cmp r14d, eax
jl 0x140129535
cmp eax, 1
jle 0x1401295cf
mov rax, qword [rbx + 0x38d0]
mov rdi, qword [rsi + rax]
test dword [rdi + 4], 0x1000
jne 0x1401295bf
mov rax, qword [rbx + 0x3870]
test rax, rax
je 0x1401295ac
xor edx, edx
mov rcx, rdi
call rax
mov rax, qword [rbx + 0x38b0]
test rax, rax
je 0x1401295bf
xor edx, edx
mov rcx, rdi
call rax
inc r12d
add rsi, 8
cmp r12d, dword [rbx + 0x38c8]
jl 0x140129585
mov rcx, r13
call fcn.1401d5ec0
xor eax, eax
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1401e0b10
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x190
mov rax, qword [0x1402a1fc0]
xor rax, rsp
mov qword [rsp + 0x180], rax
mov rdi, rcx
mov rbx, qword [0x140369c88]
mov qword [0x140369c88], 0
test rbx, rbx
je 0x14012966c
mov rcx, rbx
call fcn.1400f5260
mov rax, qword [0x140369a98]
test rax, rax
je 0x140129663
dec dword [rax + 0xf8]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rbx, qword [0x140369a98]
mov qword [0x140369a98], rbx
call fcn.140042770
mov qword [0x140369a98], 0
test rbx, rbx
je 0x1401296b2
mov rcx, rbx
call fcn.1400727a0
mov rax, qword [0x140369a98]
test rax, rax
je 0x1401296a9
dec dword [rax + 0xf8]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r8d, 2
lea rdx, str.DataGlobalEditorConfig.json
lea rcx, [rsp + 0x48]
call fcn.140114a10
nop
lea rdx, [rdi + 0x138]
mov rcx, rax
call fcn.14012b230
nop
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x48], rax
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
lea r8d, [rcx - 0xa8]
mov dword [rsp + rcx + 0x44], r8d
lea rcx, [rsp + 0x50]
call fcn.140030d90
lea rcx, [rsp + 0x58]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rsp + 0xf0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rdx, [rdi + 0x138]
lea rcx, [rsp + 0x38]
call fcn.140018e10
mov rbx, rax
mov qword [rsp + 0x30], rax
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov qword [rsp + 0x178], rax
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x150]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__localtime64_s]
mov dl, 0x3c
lea rcx, [0x14036a7b0]
call fcn.140010b90
mov rdx, qword [0x140369f78]
mov rcx, rax
call fcn.140010d50
mov rcx, rax
lea rdx, [0x14020c3e8]
call fcn.140010d50
mov edx, dword [rsp + 0x158]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x14020c3e4]
call fcn.140010d50
mov edx, dword [rsp + 0x154]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x14020c3e4]
call fcn.140010d50
mov edx, dword [rsp + 0x150]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x14020c3e0]
call fcn.140010d50
mov rdx, rbx
lea rcx, [0x14036a7b0]
call fcn.14012b230
mov dl, 0xa
lea rcx, [0x14036a7b0]
call fcn.140010b90
nop
lea rcx, [rbx + 8]
movzx edx, byte [rbx]
call fcn.140018780
nop
xor eax, eax
mov rcx, qword [rsp + 0x180]
xor rcx, rsp
call fcn.1401e0b10
mov rbx, qword [rsp + 0x1a8]
add rsp, 0x190
pop rdi
ret
test rdx, rdx
je 0x14012a31e
cmp rdx, 4
je 0x14012a319
cmp rdx, 6
je 0x14012a314
xor eax, eax
ret
jmp 0x140129610
jmp 0x140128f90
jmp 0x1401283f0