Function at 0x14001ef50
Capabilities:
Write file on windows

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x50
cmp word [rdx + 0xa], 0x21
mov rbp, rcx
mov rbx, rdx
mov rdi, r8
mov rsi, r9
mov dword [rsp + 0x4c], 0
ja case.0x14001ef87.6
movzx eax, word [rdx + 0xa]
lea rdx, [0x14006097c]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, 0x18
mov edx, 1
lea rcx, str.banner1:_internal_error_n
mov r9, rax
call sym.fwrite
movzx eax, word [rbx + 0xa]
add rsp, 0x50
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov rcx, qword [rcx + 8]
mov dword [rsp + 0x20], r9d
mov rdx, rbx
lea r9, [rsp + 0x4c]
call dbg.smack_search_next
cmp rax, 0xffffffffffffffff
je 0x14001f480
lea rdx, [rax + rax*2]
lea rax, [0x140053200]
lea rdx, [rax + rdx*8]
mov eax, dword [rdx + 0xc]
cmp eax, 0xffffffff
je 0x14001f480
cmp eax, 9
je 0x14001f4a0
cmp eax, 5
je 0x14001f4b0
cmp eax, 0x21
jne 0x14001f025
mov eax, dword [rdx + 0x14]
mov byte [rbx + 0x1c], al
mov eax, 0x21
mov word [rbx + 0xa], ax
mov rcx, qword [rsp + 0xa0]
mov edx, 1
mov dword [rbx], 0
call sym.banout_string
mov rcx, qword [rsp + 0xa0]
mov edx, 1
mov r12, rax
call sym.banout_string_length
test r12, r12
je 0x14001f08a
test eax, eax
je 0x14001f08a
mov rcx, qword [rsp + 0xa8]
mov r9d, eax
mov r8, r12
mov rdx, rbx
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x20], rcx
mov rcx, rbp
call dbg.banner1_parse
mov r9, rsi
mov r8, rdi
mov rdx, rbx
mov rcx, rbp
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x20], rax
call dbg.banner1_parse
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073610]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073570]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073560]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073620]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400735f0]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073600]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400735b0]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073580]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400735a0]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400735d0]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073650]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073640]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x1400735c0]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073590]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x20], r9
mov r9, r8
mov r8, rbx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [0x140073660]
call qword [rax + 0x38]
jmp 0x14001efb5
mov rcx, qword [rsp + 0xa0]
mov r9, rsi
mov r8, rdi
mov edx, 1
call dbg.banout_append
jmp 0x14001efb5
test byte [rbx + 0xc], 1
je 0x14001f480
mov eax, 9
jmp 0x14001f025
cmp dword [rdx + 0x14], 1
mov eax, 5
jne 0x14001f025
movzx edx, word [rbx + 8]
cmp dx, 0x19
je 0x14001f4d4
cmp dx, 0x24b
jne 0x14001f025
mov eax, 0xb
jmp 0x14001f025