Function at 0x14000f640
Capabilities:
Write file on windows

Disassembly:
mov r11, rsp
sub rsp, 0x2a8
mov rax, qword [0x140049010]
xor rax, rsp
mov qword [rsp + 0x280], rax
mov r8, qword [0x140101ac0]
cmp dword [r8 + 0x18cc310], 1
je 0x14000fb94
cmp dword [r8 + 0x1a36728], 1
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
mov qword [r11 - 8], r12
mov qword [r11 - 0x10], r14
mov qword [r11 - 0x18], r15
jne 0x14000f7c3
mov ecx, 0xe00038
call fcn.1400186ec
xor edx, edx
mov qword [rsp + 0x38], rax
mov r8d, 0xe00038
mov rcx, rax
mov rbx, rax
call fcn.140019d10
mov r8, qword [0x140101ac0]
lea r15, vtable.CLocalRs232.0
xor edi, edi
mov qword [rbx], r15
mov qword [rbx + 0xe00028], rdi
lea rdx, str.._s
mov qword [rbx + 0xe00030], rdi
lea rcx, [rsp + 0x80]
mov qword [rbx + 0xc], rdi
mov dword [rbx + 8], 1
mov qword [rbx + 0xe0001c], rdi
mov dword [rbx + 0x14], edi
mov dword [rbx + 0xe00018], edi
mov qword [r8 + 0x1a36720], rbx
add r8, 0x1a36708
call fcn.140001180
mov rcx, qword [0x140101ac0]
lea rdx, [rsp + 0x80]
mov r8d, dword [rcx + 0x1a36718]
mov rcx, qword [rcx + 0x1a36720]
call fcn.140012fe0
mov rcx, qword [0x140101ac0]
cmp eax, 1
jne 0x14000f758
mov dword [rcx + 0x18cc310], eax
lea rdx, str._s_opened
jmp 0x14000f785
mov r8, qword [rcx + 0x1a36720]
test r8, r8
je 0x14000f778
mov rax, qword [r8]
mov edx, 1
mov rcx, r8
call qword [rax]
mov rcx, qword [0x140101ac0]
mov dword [rcx + 0x18cc310], edi
lea rdx, str.Can_not_open__s
or dword [rcx + 0x11b0b44], 0x20
lea r8, [rcx + 0x1a36708]
add rcx, 0x11b0a44
call fcn.140001180
mov rax, qword [0x140101ac0]
or dword [rax + 0x11b0b44], 0x10
cmp dword [rax + 0x18cc310], 1
jne 0x14000fb27
mov ebp, dword [rsp + 0x38]
jmp 0x14000fa37
add r8, 0x1a36708
lea rdx, str.._s
lea rcx, [rsp + 0x180]
call fcn.140001180
mov r9d, 0xa
lea rdx, str.V_0_0_0_c_c
lea rcx, [rsp + 0x40]
lea r8d, [r9 + 3]
call fcn.140001180
lea rax, [rsp + 0x40]
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rax + rsi], 0
jne 0x14000f805
lea r14, [0x140041d68]
xor edi, edi
lea r12, [0x140041d88]
lea r15, vtable.CLocalRs232.0
mov ecx, 0xe00038
call fcn.1400186ec
xor edx, edx
mov qword [rsp + 0x30], rax
mov r8d, 0xe00038
mov rcx, rax
mov rbx, rax
call fcn.140019d10
mov rax, qword [0x140101ac0]
lea rdx, [rsp + 0x180]
mov ebp, dword [r14]
mov rcx, rbx
mov qword [rbx], r15
mov r8d, ebp
mov qword [rbx + 0xe00028], rdi
mov qword [rbx + 0xe00030], rdi
mov qword [rbx + 0xc], rdi
mov dword [rbx + 8], 1
mov qword [rbx + 0xe0001c], rdi
mov dword [rbx + 0x14], edi
mov dword [rbx + 0xe00018], edi
mov qword [rax + 0x1a36720], rbx
call fcn.140012fe0
cmp eax, 1
jne 0x14000fb03
mov rcx, qword [0x140101ac0]
lea rdx, str.comm_speed_check__d_bps
mov r8d, ebp
mov dword [rcx + 0x18cc310], eax
add rcx, 0x11b0a44
call fcn.140001180
mov rax, qword [0x140101ac0]
or dword [rax + 0x11b0b44], 0x10
cmp dword [rax + 0x18cc310], 1
jne 0x14000f90c
mov rbx, qword [rax + 0x1a36720]
cmp dword [rbx + 8], 1
je 0x14000f90c
mov rcx, qword [rbx + 0xe00028]
lea r9, [rsp + 0x38]
mov r8d, esi
mov qword [rsp + 0x20], rdi
lea rdx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rbx + 0xe00020], edi
mov r8d, 0x1f4
call fcn.14000f520
mov ebx, eax
test eax, eax
jg 0x14000f92c
mov rax, qword [0x140101ac0]
mov dword [rax + 0x18cc310], edi
jmp 0x14000f991
mov r9, qword [0x140101ac0]
mov edx, edi
mov rcx, qword [r9 + 0x1a36720]
mov r8d, dword [rcx + 0xe00018]
mov eax, dword [rcx + 0xe0001c]
cmp r8d, eax
je 0x14000f969
inc eax
mov dword [rcx + 0xe0001c], eax
cmp eax, 0x700000
jb 0x14000f963
mov dword [rcx + 0xe0001c], edi
inc edx
cmp edx, ebx
jl 0x14000f943
lea rcx, [r9 + 0x11b12e0]
mov r8d, 4
lea rdx, str.B290
call fcn.1400246f0
test eax, eax
je 0x14000fa1a
mov rax, qword [0x140101ac0]
mov rbx, qword [rax + 0x1a36720]
mov rcx, qword [rbx + 0xe00028]
test rcx, rcx
je 0x14000f9eb
cmp rcx, 0xffffffffffffffff
je 0x14000f9eb
mov dword [rbx + 0x10], 1
mov edx, 0xffffffff
mov rcx, qword [rbx + 0xe00030]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbx + 0xe00030]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbx + 0xe00028]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [0x140101ac0]
mov qword [rbx + 0xe00028], rdi
mov rcx, qword [rax + 0x1a36720]
test rcx, rcx
je 0x14000fa08
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rax, qword [0x140101ac0]
add r14, 4
cmp r14, r12
jl 0x14000f825
jmp 0x14000fb27
mov rdx, qword [0x140101ac0]
mov r8d, ebx
add rdx, 0x11b12e0
call fcn.14000d350
mov rax, qword [0x140101ac0]
mov dword [rax + 0x18cc310], 1
mov dword [rax + 0x1a36718], ebp
or dword [rax + 0x11b0b44], 0x20
nop
test byte [rax + 0x11b0b44], 0x10
je 0x14000fa81
test dword [rax + 0x11b0b48], 0x100000
jne 0x14000fa81
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rax, qword [0x140101ac0]
inc edi
cmp edi, 0xbb8
jl 0x14000fa50
mov r9d, dword [rax + 0x1a36718]
lea r8, [rax + 0x1a36708]
lea rcx, [rax + 0x11b0a44]
lea rdx, str._s_opened___dbps
call fcn.140001180
mov rax, qword [0x140101ac0]
or dword [rax + 0x11b0b44], 0x10
cmp dword [rax + 0x18cc384], 1
jne 0x14000fb5c
mov ebx, dword [rax + 0x18cc3dc]
call fcn.14000c480
call fcn.14000c670
call fcn.14000cc40
mov rcx, qword [0x140101ac0]
cmp dword [rcx + 0x18cc670], 0x134d875
jge 0x14000fb5c
cmp ebx, dword [rcx + 0x18cc3dc]
je 0x14000fb5c
or dword [rcx + 0x11b0b48], 0x20000
or dword [rcx + 0x11b0b48], 0x80000
jmp 0x14000fb5c
mov rax, qword [0x140101ac0]
mov rcx, qword [rax + 0x1a36720]
test rcx, rcx
je 0x14000fb27
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rax, qword [0x140101ac0]
mov dword [rax + 0x18cc310], edi
lea r8, [rax + 0x1a36708]
or dword [rax + 0x11b0b44], 0x20
lea rcx, [rax + 0x11b0a44]
lea rdx, str.Can_not_open__s
call fcn.140001180
mov rax, qword [0x140101ac0]
or dword [rax + 0x11b0b44], 0x10
mov r14, qword [rsp + 0x298]
mov r12, qword [rsp + 0x2a0]
mov rdi, qword [rsp + 0x2c8]
mov rsi, qword [rsp + 0x2c0]
mov rbp, qword [rsp + 0x2b8]
mov rbx, qword [rsp + 0x2b0]
mov r15, qword [rsp + 0x290]
mov rcx, qword [rsp + 0x280]
xor rcx, rsp
call fcn.140018440
add rsp, 0x2a8
ret