Function at 0x433d18
Capabilities:
Write file on windows

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov dword [rbp + 0x20], r8d
mov dword [rbp + 0x28], r9d
mov rax, qword [rbp + 0x18]
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x20]
test rax, rax
je 0x433e13
cmp dword [rbp + 0x20], 0x64
jne 0x433d6c
mov rax, qword [rbp + 0x38]
movzx eax, byte [rax]
test al, al
je 0x433d6c
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x28]
cmp qword [rbp + 0x30], rax
je 0x433e13
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x20]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042e7e9
test eax, eax
jne 0x433d8e
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 0x20]
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x48], rdx
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x40], 0
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x44], 0
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 8]
test eax, eax
jne 0x433dcf
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 0x28]
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x30], rdx
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x80], 1
mov ecx, 8
call fcn.0050c076
mov rdx, rax
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x88], rdx
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x88]
mov qword [rax], 0
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x20], 0
mov rax, qword [rbp + 0x38]
mov rcx, rax
call sub.msvcrt.dll_strlen
mov rdx, rax
mov rax, qword [rbp + 0x38]
add rax, rdx
mov qword [rbp - 0x20], rax
mov eax, dword [rbp + 0x20]
cmp eax, 0x62
je 0x434574
cmp eax, 0x62
jg 0x433e9f
cmp eax, 0x24
je 0x434334
cmp eax, 0x24
jg 0x433e6c
cmp eax, 0x1e
je 0x434574
cmp eax, 0x1f
je 0x434577
cmp eax, 0xc
je 0x434577
jmp 0x4343e6
cmp eax, 0x38
je 0x434574
cmp eax, 0x38
jg 0x433e88
cmp eax, 0x2a
je 0x434574
jmp 0x4343e6
cmp eax, 0x3c
je 0x43450f
cmp eax, 0x44
je 0x4342ac
jmp 0x4343e6
cmp eax, 0xc0
je 0x433f25
cmp eax, 0xc0
jg 0x433ee8
cmp eax, 0x82
je 0x434220
cmp eax, 0x82
jg 0x433ecd
cmp eax, 0x64
je 0x434096
jmp 0x4343e6
cmp eax, 0x84
je 0x4341fe
cmp eax, 0xa2
je 0x434259
jmp 0x4343e6
cmp eax, 0xe0
je 0x433fde
cmp eax, 0xe0
jg 0x433f0a
cmp eax, 0xc2
je 0x434283
jmp 0x4343e6
cmp eax, 0xe2
je 0x4342f0
cmp eax, 0xe4
je 0x434312
jmp 0x4343e6
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x44]
test eax, eax
je 0x433f3a
cmp dword [rbp + 0x28], 1
je 0x43457a
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x60]
test eax, eax
jne 0x433f76
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov r9, rax
mov r8d, 0x1c
mov edx, 1
lea rcx, str.N_LBRAC_not_within_function_n
call main
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 0x30]
mov rax, qword [rbp + 0x30]
add rdx, rax
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x38]
add rax, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042ed22
test eax, eax
jne 0x433faa
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.004394e7
test eax, eax
jne 0x433fc8
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x70]
lea edx, [rax + 1]
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x70], edx
jmp 0x434599
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x44]
test eax, eax
je 0x433ff3
cmp dword [rbp + 0x28], 1
je 0x43457d
mov rax, qword [rbp - 0x18]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.004394e7
test eax, eax
jne 0x434011
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 0x30]
mov rax, qword [rbp + 0x30]
add rdx, rax
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x38]
add rax, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042ee02
test eax, eax
jne 0x434045
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x70]
lea edx, [rax - 1]
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x70], edx
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x70]
test eax, eax
jns 0x434580
mov rax, qword [sym.imp.msvcrt.dll___iob_func]
call rax
add rax, 0x60
mov r9, rax
mov r8d, 0x12
mov edx, 1
lea rcx, str.Too_many_N_RBRACs_n
call main
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x60]
test eax, eax
je 0x434129
mov rax, qword [rbp + 0x30]
mov qword [rbp - 8], rax
mov rax, qword [rbp + 0x38]
movzx eax, byte [rax]
test al, al
je 0x4340e0
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x68]
cmp rax, 0xffffffffffffffff
je 0x4340e0
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x68]
cmp qword [rbp - 8], rax
jbe 0x4340e0
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x68]
mov qword [rbp - 8], rax
mov rax, qword [rbp - 0x18]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.004394e7
test eax, eax
je 0x434108
mov rax, qword [rbp - 8]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042ec79
test eax, eax
jne 0x434112
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x60], 0
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x68], 0xffffffffffffffff
mov rax, qword [rbp + 0x38]
movzx eax, byte [rax]
test al, al
jne 0x43413e
mov eax, 1
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x434167
mov rax, qword [rbp + 0x38]
mov rcx, rax
call fcn.0050c190
mov rdx, rax
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x20], rdx
jmp 0x4341ed
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x20]
mov qword [rbp - 0x28], rax
mov rax, qword [rbp + 0x38]
movzx eax, byte [rax]
cmp al, 0x2f
je 0x4341a3
mov rax, qword [rbp + 0x38]
movzx eax, byte [rax]
cmp al, 0x5c
je 0x4341a3
mov rax, qword [rbp + 0x38]
movzx eax, byte [rax]
test al, al
je 0x4341bc
mov rax, qword [rbp + 0x38]
add rax, 1
movzx eax, byte [rax]
cmp al, 0x3a
jne 0x4341bc
mov rax, qword [rbp + 0x38]
mov rcx, rax
call fcn.0050c190
mov rdx, rax
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x20], rdx
jmp 0x4341e1
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x20]
mov rdx, qword [rbp + 0x38]
mov r8d, 0
mov rcx, rax
call fcn.005004b2
mov rdx, rax
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x20], rdx
mov rax, qword [rbp - 0x28]
mov rcx, rax
call sub.msvcrt.dll_free
mov rax, qword [rbp - 0x18]
mov rdx, qword [rbp + 0x30]
mov qword [rax + 0x28], rdx
jmp 0x434599
mov rax, qword [rbp + 0x38]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042e90a
test eax, eax
jne 0x434583
mov eax, 0
jmp 0x43459e
mov rcx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x38]
mov rax, qword [rbp - 0x18]
mov r8, rcx
mov rcx, rax
call fcn.0043912d
mov rax, qword [rbp + 0x38]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042e90a
test eax, eax
jne 0x434586
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov rcx, rax
call fcn.00439230
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042e90a
test eax, eax
jne 0x434589
mov eax, 0
jmp 0x43459e
mov rcx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x38]
mov rax, qword [rbp - 0x18]
mov r8, rcx
mov rcx, rax
call fcn.004392d7
test eax, eax
jne 0x43458c
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x60]
test eax, eax
je 0x4342c1
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x38]
jmp 0x4342c6
mov eax, 0
mov rdx, qword [rbp + 0x30]
add rdx, rax
mov eax, dword [rbp + 0x28]
mov r8, rdx
mov edx, eax
mov rcx, qword [rbp + 0x10]
call fcn.0042ee98
test eax, eax
jne 0x43458f
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp + 0x38]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042f008
test eax, eax
jne 0x434592
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp + 0x38]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042f02f
test eax, eax
jne 0x434595
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp + 0x38]
movzx eax, byte [rax]
test al, al
jne 0x4343b3
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x60]
test eax, eax
je 0x434598
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 8]
test eax, eax
je 0x434365
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x38]
add qword [rbp + 0x30], rax
mov rax, qword [rbp - 0x18]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.004394e7
test eax, eax
je 0x43438d
mov rax, qword [rbp + 0x30]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042ec79
test eax, eax
jne 0x434397
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x60], 0
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x68], 0xffffffffffffffff
jmp 0x434598
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x60]
test eax, eax
je 0x4343e6
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x68]
cmp rax, 0xffffffffffffffff
je 0x4343da
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x68]
cmp qword [rbp + 0x30], rax
jae 0x4343e6
mov rax, qword [rbp - 0x18]
mov rdx, qword [rbp + 0x30]
mov qword [rax + 0x68], rdx
mov rax, qword [rbp + 0x38]
mov edx, 0x3a
mov rcx, rax
call sub.msvcrt.dll_strchr
mov qword [rbp - 0x30], rax
cmp qword [rbp - 0x30], 0
je 0x4344c3
mov rax, qword [rbp - 0x30]
add rax, 1
movzx eax, byte [rax]
cmp al, 0x66
je 0x434428
mov rax, qword [rbp - 0x30]
add rax, 1
movzx eax, byte [rax]
cmp al, 0x46
jne 0x4344c3
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x60]
test eax, eax
je 0x4344a1
mov rax, qword [rbp + 0x30]
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x68]
cmp rax, 0xffffffffffffffff
je 0x434463
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x68]
cmp qword [rbp - 0x10], rax
jbe 0x434463
mov rax, qword [rbp - 0x18]
mov rax, qword [rax + 0x68]
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x18]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.004394e7
test eax, eax
je 0x43448b
mov rax, qword [rbp - 0x10]
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.0042ec79
test eax, eax
jne 0x434495
mov eax, 0
jmp 0x43459e
mov rax, qword [rbp - 0x18]
mov qword [rax + 0x68], 0xffffffffffffffff
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 8]
test eax, eax
je 0x4344b8
mov rax, qword [rbp - 0x18]
mov rdx, qword [rbp + 0x30]
mov qword [rax + 0x38], rdx
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x60], 1
mov r8d, dword [rbp + 0x28]
mov ecx, dword [rbp + 0x20]
mov rax, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x20]
mov qword [rsp + 0x30], rdx
mov rdx, qword [rbp + 0x38]
mov qword [rsp + 0x28], rdx
mov rdx, qword [rbp + 0x30]
mov qword [rsp + 0x20], rdx
mov r9d, r8d
mov r8d, ecx
mov rdx, rax
mov rcx, qword [rbp + 0x10]
call fcn.004345a4
test eax, eax
jne 0x434509
mov eax, 0
jmp 0x43459e
nop
jmp 0x434599
cmp qword [rbp + 0x38], 0
je 0x43453a
mov rax, qword [rbp + 0x38]
lea rdx, str.gcc2_compiled.
mov rcx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x43453a
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x40], 2
jmp 0x434572
cmp qword [rbp + 0x38], 0
je 0x434565
mov rax, qword [rbp + 0x38]
lea rdx, str.gcc_compiled.
mov rcx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x434565
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x40], 1
jmp 0x434572
mov rax, qword [rbp - 0x18]
mov dword [rax + 0x44], 1
jmp 0x434599
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
jmp 0x434599
nop
mov eax, 1
add rsp, 0x70
pop rbp
ret