Function at 0x140007e7c
Capabilities:
Write file on windows

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x13d0
call fcn.140052940
sub rsp, rax
mov qword [rsp + 0xf0], 0xfffffffffffffffe
mov qword [rsp + 0x1420], rbx
mov rax, qword [0x14006bbc0]
xor rax, rsp
mov qword [rsp + 0x13c0], rax
movsxd rdi, edx
mov rbx, rcx
xor r14d, r14d
mov word [rsp + 0x230], r14w
xor edx, edx
lea r8d, [r14 + 0x7e]
lea rcx, [rsp + 0x232]
call fcn.140025190
mov word [rsp + 0xcb0], r14w
mov esi, 0x1fe
mov r8, rsi
xor edx, edx
lea rcx, [rsp + 0xcb2]
call fcn.140025190
mov word [rsp + 0xab0], r14w
mov r8, rsi
xor edx, edx
lea rcx, [rsp + 0xab2]
call fcn.140025190
mov word [rsp + 0x6b0], r14w
mov r8, rsi
xor edx, edx
lea rcx, [rsp + 0x6b2]
call fcn.140025190
lea rcx, [rsp + 0x130]
call fcn.14001be30
nop
lea r15d, [r14 + 8]
mov rcx, r15
call fcn.140026454
cmp rax, r14
je 0x140007f5f
lea rcx, [rsp + 0x78]
mov qword [rax], rcx
jmp 0x140007f62
mov rax, r14
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x78]
call fcn.140003700
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], r14
lea rdx, [rdi + rbx + 0x16]
mov esi, 2
mov r8, rsi
lea rcx, [rsp + 0x38]
call fcn.140025900
movsx r8, word [rsp + 0x38]
lea eax, [rdi + 2]
movsxd rcx, eax
lea rdx, [rcx + rbx + 0x16]
lea rcx, [rsp + 0x4b0]
call fcn.140025900
movsx eax, word [rsp + 0x38]
cdq
sub eax, edx
sar eax, 1
movsxd rcx, eax
mov word [rsp + rcx*2 + 0x4b0], r14w
mov ebx, 0x200
lea rbp, [0x14006e304]
mov rax, qword [0x14006e308]
cmp word [rax + 0x1aa415], r14w
je 0x14000805f
lea rdx, [rsp + 0x4b0]
lea rcx, [rsp + 0x8b0]
call fcn.140001a50
lea r9, [rsp + 0x8b0]
lea r8, str._r_n____UPDATE_TRACE_WRITER_SETTING:__s____r_n
mov rdx, rbx
lea rcx, [rsp + 0x2b0]
call fcn.1400253f4
mov r9d, esi
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x140097028]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
lea rcx, [rsp + 0x2b0]
call fcn.140025290
mov r8, rax
mov qword [rsp + 0x20], r14
mov r9, rbp
lea rdx, [rsp + 0x2b0]
mov rcx, qword [0x140097028]
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea rdx, [rsp + 0x6b0]
lea rcx, [rsp + 0x4b0]
call fcn.140004660
mov edi, eax
cmp eax, r14d
je 0x14000813b
mov edi, 0xffffffcb
lea rdx, [rsp + 0x4b0]
lea rcx, [rsp + 0x8b0]
call fcn.140001a50
mov r11, qword [0x14006e308]
cmp word [r11 + 0x1aa415], r14w
je 0x14000810b
lea r9, [rsp + 0x8b0]
lea r8, str._r_n____UPDATE_TRACE_WRITER_SETTING:__s____r_n
mov rdx, rbx
lea rcx, [rsp + 0x2b0]
call fcn.1400253f4
mov r9d, esi
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x140097028]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
lea rcx, [rsp + 0x2b0]
call fcn.140025290
mov r8, rax
mov qword [rsp + 0x20], r14
mov r9, rbp
lea rdx, [rsp + 0x2b0]
mov rcx, qword [0x140097028]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r8d, esi
mov ecx, 1
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x8b0]
mov qword [rsp + 0x20], rax
lea r9, str.update_trace_writer
mov edx, 0xc0001007
call fcn.140002ac0
jmp 0x14000895d
lea rdx, [rsp + 0x6b0]
lea rcx, [rsp + 0x130]
call fcn.140020894
cmp eax, r14d
je 0x1400081f8
mov edi, 0xffffffcf
mov rax, qword [0x14006e308]
cmp word [rax + 0x1aa415], r14w
je 0x1400081c8
lea r8, str._r_n_______UPDATE_TW:_PARSEN_des_TW_XML_Files_mi
mov rdx, rbx
lea rcx, [rsp + 0x2b0]
call fcn.1400253f4
mov r9d, esi
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x140097028]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
lea rcx, [rsp + 0x2b0]
call fcn.140025290
mov r8, rax
mov qword [rsp + 0x20], r14
mov r9, rbp
lea rdx, [rsp + 0x2b0]
mov rcx, qword [0x140097028]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r8d, esi
mov ecx, 1
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x6b0]
mov qword [rsp + 0x20], rax
lea r9, str.Update_TraceWriter
mov edx, 0xc0001004
call fcn.140002ac0
jmp 0x14000895d
lea r8, [rsp + 0x78]
lea rdx, str.TraceWriter
lea rcx, [rsp + 0x130]
call fcn.14001ce90
mov r11, qword [rsp + 0xa0]
mov rax, qword [r11]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x50], rax
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
mov ebp, 1
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov r12, qword [rsp + 0xa0]
cmp rbx, r14
je 0x140008259
cmp rbx, qword [rsp + 0x78]
je 0x14000825e
call fcn.1400263ec
cmp rsi, r12
je 0x14000895d
cmp rbx, r14
jne 0x140008276
call fcn.1400263ec
mov r11, r14
jmp 0x140008279
mov r11, qword [rbx]
cmp rsi, qword [r11 + 0x28]
jne 0x140008284
call fcn.1400263ec
mov r13, qword [rsi + 0x10]
cmp r13, r14
je 0x140008303
lea rdx, [0x1400575c8]
mov rcx, r13
call fcn.140019a88
mov r8, rax
mov edx, 0x40
lea rcx, [rsp + 0x230]
call fcn.140025d44
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0x4b0]
call fcn.1400257cc
cmp eax, r14d
jne 0x140008303
mov r12d, r14d
movsxd rcx, r12d
imul rcx, rcx, 0x2098
lea rax, [0x14007152c]
add rcx, rax
lea rdx, [rsp + 0x230]
call fcn.1400257cc
cmp eax, r14d
je 0x140008332
add r12d, ebp
cmp r12d, 0x10
jl 0x1400082ce
cmp r12d, 0x10
je 0x140008328
cmp rbx, r14
jne 0x140008312
call fcn.1400263ec
mov r11, r14
jmp 0x140008315
mov r11, qword [rbx]
cmp rsi, qword [r11 + 0x28]
jne 0x140008320
call fcn.1400263ec
mov rsi, qword [rsi]
jmp 0x140008245
mov edi, 0xfffffff2
jmp 0x14000895d
mov ecx, 0x38
call fcn.140026454
mov rsi, rax
mov qword [rsp + 0x50], rax
cmp rax, r14
je 0x140008373
mov rcx, r15
call fcn.140026454
cmp rax, r14
je 0x14000835b
mov qword [rax], rsi
jmp 0x14000835e
mov rax, r14
mov qword [rsi], rax
mov rcx, rsi
call fcn.140003700
mov qword [rsi + 0x28], rax
mov qword [rsi + 0x30], r14
jmp 0x140008376
mov rsi, r14
mov r8, rsi
lea rdx, str.Setting
mov rcx, r13
call fcn.14001c194
movsxd r15, r12d
mov qword [rsp + 0x50], r15
mov r12, r15
imul r12, r12, 0x2098
lea rax, [0x140071520]
mov word [r12 + rax + 0x98], r14w
mov rax, qword [rsi + 0x28]
mov rcx, qword [rax]
mov qword [rsp + 0x68], rcx
mov rax, qword [rsi]
mov qword [rsp + 0x60], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
mov r13, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
xor edi, edi
mov rbx, qword [rsi + 0x28]
cmp r13, rdi
je 0x1400083e3
cmp r13, qword [rsi]
je 0x1400083e8
call fcn.1400263ec
cmp r14, rbx
je 0x1400084f8
cmp r13, rdi
jne 0x140008400
call fcn.1400263ec
mov r11, rdi
jmp 0x140008404
mov r11, qword [r13]
cmp r14, qword [r11 + 0x28]
jne 0x14000840f
call fcn.1400263ec
mov rbx, qword [r14 + 0x10]
cmp rbx, rdi
je 0x1400084d2
lea rdx, str.Name
mov rcx, rbx
call fcn.140019a88
mov r8, rax
mov edi, 0x100
mov rdx, rdi
lea rcx, [rsp + 0xab0]
call fcn.140025d44
lea rdx, str.Value
mov rcx, rbx
call fcn.140019a88
mov r8, rax
mov rdx, rdi
lea rcx, [rsp + 0xcb0]
call fcn.140025d44
mov rdi, r15
imul rdi, rdi, 0x2098
lea rdx, [0x140071520]
movsx rbx, word [rdi + rdx + 0x98]
shl rbx, 9
add rbx, r12
lea rcx, [rbx + rdx + 0x9a]
lea r8, [rsp + 0xab0]
mov edx, 0x80
call fcn.140025d44
lea rax, [0x140071520]
lea rcx, [rbx + rax + 0x19a]
lea r8, [rsp + 0xcb0]
mov edx, 0x80
call fcn.140025d44
lea rax, [0x140071520]
add word [rdi + rax + 0x98], bp
xor edi, edi
cmp r13, rdi
jne 0x1400084e1
call fcn.1400263ec
mov r11, rdi
jmp 0x1400084e5
mov r11, qword [r13]
cmp r14, qword [r11 + 0x28]
jne 0x1400084f0
call fcn.1400263ec
mov r14, qword [r14]
jmp 0x1400083d5
mov edx, ebp
mov rcx, rsi
call fcn.140003994
mov dword [0x140092310], edi
mov r14d, edi
lea r13, [0x140071520]
cmp di, word [r12 + r13 + 0x98]
jge 0x1400085d6
mov r13, r15
imul r13, r13, 0x2098
lea rdi, [0x140092df0]
lea r15, [0x140071520]
movsxd rsi, r14d
shl rsi, 9
add rsi, r12
lea rbx, [rsi + r15 + 0x9a]
mov rdx, rbx
mov rcx, rdi
call fcn.1400255d8
movsxd r11, dword [0x140092310]
add r11, r11
lea rax, [0x140092310]
mov qword [rax + r11*8 + 4], rdi
mov rcx, rbx
call fcn.140025590
lea rdi, [rdi + rax*2 + 2]
lea rbx, [rsi + r15 + 0x19a]
mov rdx, rbx
mov rcx, rdi
call fcn.1400255d8
movsxd r11, dword [0x140092310]
add r11, r11
lea rax, [0x140092310]
mov qword [rax + r11*8 + 0xc], rdi
mov rcx, rbx
call fcn.140025590
lea rdi, [rdi + rax*2 + 2]
add dword [0x140092310], ebp
add r14d, ebp
movsx eax, word [r13 + r15 + 0x98]
cmp r14d, eax
jl 0x140008539
mov r15, qword [rsp + 0x50]
lea r13, [0x140071520]
mov rsi, qword [r12 + r13 + 4]
xor r14d, r14d
cmp rsi, r14
je 0x14000871e
mov r13, r15
imul r13, r13, 0x2098
lea edx, [r14 + 0x11]
mov edi, dword [rsi + 0x14]
movzx ecx, word [rsi + 0x10]
imul rcx, rcx, 0x69a
mov rax, qword [0x14006e308]
movsx ebx, word [rcx + rax + 8]
movzx eax, word [rsi + 0x10]
shl eax, 0x10
or ebx, eax
mov byte [rsp + 0x30], 6
mov word [rsp + 0x31], dx
mov r8d, 3
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x210]
call fcn.140025900
mov dword [rsp + 0xb0], ebx
lea rcx, [rsp + 0xb4]
call fcn.1400022f0
mov dword [rsp + 0xbc], r14d
mov byte [rsp + 0xc0], r14b
mov r8d, 0x11
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x213]
call fcn.140025900
mov qword [rsp + 0xc8], r14
lea rax, [rsp + 0x210]
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0xd8], 0x14
lea rax, [0x140071520]
mov rax, qword [r13 + rax + 0x8c]
mov r8d, 2
lea rdx, [rsp + 0xc8]
mov ecx, edi
call qword [rax + 0x28]
cmp eax, r14d
jne 0x140008714
mov dword [0x14006e2c0], ebp
lea rcx, [rsp + 0x100]
lea rdx, [rsp + 0xc8]
mov r8d, 0x24
call fcn.140025900
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x100]
xor ecx, ecx
call fcn.140002278
mov rsi, qword [rsi + 8]
cmp rsi, r14
mov edx, 0x11
jne 0x1400085f5
lea r13, [0x140071520]
jmp 0x14000871e
mov edi, 0xfffffff3
jmp 0x14000895d
mov rsi, qword [r12 + r13 + 4]
cmp rsi, r14
je 0x14000895a
lea r12, [r12 + r13 + 0x94]
imul r15, r15, 0x2098
movzx edi, word [rsi + 0x10]
imul rdi, rdi, 0x69a
mov rcx, qword [0x14006e308]
movsx ebx, word [rdi + rcx + 8]
movzx eax, word [rsi + 0x10]
shl eax, 0x10
or ebx, eax
lea rcx, [rdi + rcx + 0x316]
call fcn.140025590
add eax, eax
mov dword [rsp + 0x3c], eax
mov rax, qword [0x14006e308]
lea rcx, [rdi + rax + 0x16]
call fcn.140025590
add eax, eax
mov dword [rsp + 0x34], eax
mov rax, qword [0x14006e308]
lea rcx, [rdi + rax + 0x61a]
call fcn.140025590
add eax, eax
mov dword [rsp + 0x40], eax
mov byte [rsp + 0x30], bpl
movzx ecx, word [rsp + 0x3c]
add cx, word [rsp + 0x34]
add cx, ax
add cx, 0xe
mov word [rsp + 0x31], cx
mov r8d, 3
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xeb0]
call fcn.140025900
mov dword [rsp + 0x70], ebx
mov dword [rsp + 0x74], r14d
mov r8d, 8
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0xeb3]
call fcn.140025900
mov r8d, 2
lea rdx, [rsp + 0x3c]
lea rcx, [rsp + 0xebb]
call fcn.140025900
movsxd r8, dword [rsp + 0x3c]
mov rax, qword [0x14006e308]
lea rdx, [rdi + rax + 0x316]
lea rcx, [rsp + 0xebd]
call fcn.140025900
movsxd r11, dword [rsp + 0x3c]
lea rbx, [rsp + r11 + 0xebd]
mov r8d, 2
lea rdx, [rsp + 0x34]
mov rcx, rbx
call fcn.140025900
add rbx, 2
movsxd r8, dword [rsp + 0x34]
mov rax, qword [0x14006e308]
lea rdx, [rdi + rax + 0x16]
mov rcx, rbx
call fcn.140025900
movsxd r11, dword [rsp + 0x34]
add rbx, r11
mov r8d, 2
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.140025900
movsxd r8, dword [rsp + 0x40]
mov rax, qword [0x14006e308]
lea rdx, [rdi + rax + 0x61a]
lea rcx, [rbx + 2]
call fcn.140025900
mov qword [rsp + 0xc8], r14
lea rax, [rsp + 0xeb0]
mov qword [rsp + 0xd0], rax
mov ecx, dword [rsp + 0x34]
mov edx, dword [rsp + 0x40]
add edx, ecx
mov eax, dword [rsp + 0x3c]
lea ecx, [rdx + rax + 0x11]
mov dword [rsp + 0xd8], ecx
mov rax, qword [r15 + r13 + 0x8c]
mov qword [rsp + 0x20], r12
lea r9, [0x1400021b4]
mov r8d, 2
lea rdx, [rsp + 0xc8]
lea rcx, [0x140092310]
call qword [rax + 8]
cmp eax, r14d
jne 0x140008953
mov dword [0x14006e2c0], ebp
lea rcx, [rsp + 0x100]
lea rdx, [rsp + 0xc8]
mov r8d, 0x24
call fcn.140025900
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x100]
xor ecx, ecx
call fcn.140002278
mov eax, dword [r15 + r13 + 0x94]
mov dword [rsi + 0x14], eax
mov rsi, qword [rsi + 8]
cmp rsi, r14
jne 0x14000873b
jmp 0x14000895a
mov edi, 0xfffffff3
jmp 0x14000895d
mov edi, r14d
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rax]
mov qword [rax], rax
mov rax, qword [rsp + 0xa0]
mov qword [rax + 8], rax
mov qword [rsp + 0xa8], r14
mov rcx, qword [rsp + 0xa0]
cmp rdx, rcx
je 0x1400089a7
mov rbx, qword [rdx]
mov rcx, rdx
call fcn.140024990
mov rdx, rbx
mov rcx, qword [rsp + 0xa0]
cmp rbx, rcx
jne 0x14000898c
call fcn.140024990
mov qword [rsp + 0xa0], r14
mov rcx, qword [rsp + 0x78]
call fcn.140024990
nop
lea rcx, [rsp + 0x130]
call fcn.140017e2c
mov eax, edi
mov rcx, qword [rsp + 0x13c0]
xor rcx, rsp
call fcn.140025570
mov rbx, qword [rsp + 0x1420]
add rsp, 0x13d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret