Function at 0x100332ff
Capabilities:
Write file on windows

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0xd0
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
mov qword [rbp + 0x28], r9
mov rax, qword [rbp + 0x10]
add rax, 0x78
mov eax, dword [rax]
mov dword [rbp - 0x14], eax
mov rax, qword [rbp + 0x10]
add rax, 0x520
mov eax, dword [rax]
mov dword [rbp - 8], eax
movabs rax, 0x40
mov r8, rax
mov eax, 0
mov r11, rax
lea rax, [rbp - 0x60]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memset
mov eax, dword [rbp + 0x20]
cmp eax, 0
jle 0x10033382
movabs rax, 0x38
mov word [rbp - 0x2a], ax
mov eax, dword [rbp + 0x20]
mov word [rbp - 0x28], ax
movabs rax, 0x40
mov qword [rbp - 0x40], rax
mov eax, dword [rbp + 0x30]
add eax, 3
and eax, 0xfffffffc
mov dword [rbp + 0x30], eax
mov eax, 0x7f
mov byte [rbp - 0x60], al
mov eax, 0x45
mov byte [rbp - 0x5f], al
mov eax, 0x4c
mov byte [rbp - 0x5e], al
mov eax, 0x46
mov byte [rbp - 0x5d], al
mov eax, 2
mov byte [rbp - 0x5c], al
mov eax, 1
mov byte [rbp - 0x5b], al
mov eax, 1
mov byte [rbp - 0x5a], al
mov eax, dword [rbp - 0x14]
cmp eax, 3
jne 0x100333e0
mov eax, 1
mov word [rbp - 0x50], ax
jmp 0x100334d5
mov eax, dword [rbp - 0x14]
and eax, 4
cmp eax, 0
je 0x100333fd
mov eax, 3
mov word [rbp - 0x50], ax
jmp 0x10033406
mov eax, 2
mov word [rbp - 0x50], ax
mov rax, qword [rbp + 0x10]
add rax, 0x58
mov rax, qword [rax]
cmp rax, 0
je 0x10033454
mov rax, qword [rbp + 0x10]
add rax, 0x58
mov ecx, 0
mov r9, rcx
mov ecx, 1
mov r8, rcx
mov rax, qword [rax]
mov r11, rax
mov rax, qword [rbp + 0x10]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.10030f3e
mov qword [rbp - 0x48], rax
jmp 0x1003348e
mov eax, dword [rbp - 0x14]
and eax, 2
cmp eax, 0
setne al
movzx eax, al
mov ecx, 0
mov r9, rcx
mov r8, rax
lea rax, [0x10056743]
mov r11, rax
mov rax, qword [rbp + 0x10]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.10030f3e
mov qword [rbp - 0x48], rax
mov rax, qword [rbp - 0x48]
cmp rax, 0xffffffffffffffff
jne 0x100334b5
mov rax, qword [rbp + 0x10]
add rax, 0x538
mov rax, qword [rax]
add rax, 0x40
mov rax, qword [rax]
mov qword [rbp - 0x48], rax
mov rax, qword [rbp + 0x10]
add rax, 0x210
mov eax, dword [rax]
cmp eax, 0
je 0x100334d5
mov eax, 0xffffffff
jmp 0x1003392c
mov eax, 0x3e
mov word [rbp - 0x4e], ax
mov eax, 1
mov dword [rbp - 0x4c], eax
mov eax, dword [rbp + 0x30]
movsxd rax, eax
mov qword [rbp - 0x38], rax
movabs rax, 0x40
mov word [rbp - 0x2c], ax
movabs rax, 0x40
mov word [rbp - 0x26], ax
mov eax, dword [rbp - 8]
mov word [rbp - 0x24], ax
mov eax, dword [rbp - 8]
sub eax, 1
mov word [rbp - 0x22], ax
mov rax, qword [rbp + 0x18]
mov r9, rax
movabs rax, 0x40
mov r8, rax
movabs rax, 1
mov r11, rax
lea rax, [rbp - 0x60]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fwrite
mov rax, qword [rbp + 0x28]
cmp rax, 0
je 0x1003359b
mov eax, dword [rbp + 0x20]
movsxd rax, eax
movabs rcx, 0x38
imul rax, rcx
mov rcx, qword [rbp + 0x18]
mov r9, rcx
mov r8, rax
movabs rax, 1
mov r11, rax
mov rax, qword [rbp + 0x28]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fwrite
mov eax, dword [rbp + 0x20]
movsxd rax, eax
movabs rcx, 0x38
imul rax, rcx
add rax, 0x40
shl rax, 0x20
shr rax, 0x20
mov dword [rbp - 0xc], eax
mov rax, qword [rbp + 0x10]
add rax, 0x578
mov rax, qword [rax]
mov r11, rax
mov rax, qword [rbp + 0x10]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.10031afe
mov eax, 1
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
mov ecx, dword [rbp - 8]
cmp eax, ecx
jge 0x10033714
jmp 0x10033609
mov eax, dword [rbp - 4]
mov ecx, eax
add eax, 1
mov dword [rbp - 4], eax
jmp 0x100335e9
mov rax, qword [rbp + 0x10]
add rax, 0x518
mov qword [rbp - 0xb0], rax
mov rax, qword [rbp + 0x38]
cmp rax, 0
je 0x1003363f
mov eax, dword [rbp - 4]
movsxd rax, eax
shl rax, 2
mov rcx, qword [rbp + 0x38]
add rcx, rax
jmp 0x10033647
mov eax, dword [rbp - 4]
jmp 0x1003364b
mov ecx, dword [rcx]
mov eax, ecx
movsxd rax, eax
shl rax, 3
mov rcx, qword [rbp - 0xb0]
mov rcx, qword [rcx]
add rcx, rax
mov rcx, qword [rcx]
mov qword [rbp - 0x20], rcx
mov rax, qword [rbp - 0x20]
add rax, 0x28
mov eax, dword [rax]
cmp eax, 8
je 0x1003370f
mov rax, qword [rbp - 0x20]
add rax, 0x48
mov ecx, dword [rbp - 0xc]
mov eax, dword [rax]
cmp ecx, eax
jae 0x100336b5
mov rax, qword [rbp + 0x18]
mov r11, rax
mov eax, 0
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fputc
mov eax, dword [rbp - 0xc]
mov ecx, eax
add eax, 1
mov dword [rbp - 0xc], eax
jmp 0x10033679
mov rax, qword [rbp - 0x20]
add rax, 0x3c
mov eax, dword [rax]
mov dword [rbp - 0x10], eax
mov eax, dword [rbp - 0x10]
cmp eax, 0
je 0x10033704
mov rax, qword [rbp - 0x20]
add rax, 8
mov ecx, dword [rbp - 0x10]
movsxd rcx, ecx
mov rdx, qword [rbp + 0x18]
mov r9, rdx
mov r8, rcx
movabs rcx, 1
mov r11, rcx
mov rax, qword [rax]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fwrite
mov eax, dword [rbp - 0xc]
mov ecx, dword [rbp - 0x10]
add eax, ecx
mov dword [rbp - 0xc], eax
jmp 0x100335fc
mov eax, dword [rbp - 0xc]
movsxd rax, eax
mov rcx, qword [rbp - 0x38]
cmp rax, rcx
jae 0x1003374e
mov rax, qword [rbp + 0x18]
mov r11, rax
mov eax, 0
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fputc
mov eax, dword [rbp - 0xc]
mov ecx, eax
add eax, 1
mov dword [rbp - 0xc], eax
jmp 0x10033714
mov eax, 0
mov dword [rbp - 4], eax
mov eax, dword [rbp - 4]
mov ecx, dword [rbp - 8]
cmp eax, ecx
jge 0x10033927
jmp 0x10033776
mov eax, dword [rbp - 4]
mov ecx, eax
add eax, 1
mov dword [rbp - 4], eax
jmp 0x10033756
lea rax, [rbp - 0xa0]
mov qword [rbp - 0xa8], rax
movabs rax, 0x40
mov r8, rax
mov eax, 0
mov r11, rax
mov rax, qword [rbp - 0xa8]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memset
mov rax, qword [rbp + 0x10]
add rax, 0x518
mov ecx, dword [rbp - 4]
movsxd rcx, ecx
shl rcx, 3
mov rax, qword [rax]
add rax, rcx
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
cmp rax, 0
je 0x100338ec
mov rax, qword [rbp - 0xa8]
mov rcx, qword [rbp - 0x20]
add rcx, 0x20
mov ecx, dword [rcx]
mov dword [rax], ecx
mov rax, qword [rbp - 0xa8]
add rax, 4
mov rcx, qword [rbp - 0x20]
add rcx, 0x28
mov ecx, dword [rcx]
mov dword [rax], ecx
mov rax, qword [rbp - 0xa8]
add rax, 8
mov rcx, qword [rbp - 0x20]
add rcx, 0x2c
mov ecx, dword [rcx]
movsxd rcx, ecx
mov qword [rax], rcx
mov rax, qword [rbp - 0xa8]
add rax, 0x38
mov rcx, qword [rbp - 0x20]
add rcx, 0x38
mov ecx, dword [rcx]
movsxd rcx, ecx
mov qword [rax], rcx
mov rax, qword [rbp - 0xa8]
add rax, 0x2c
mov rcx, qword [rbp - 0x20]
add rcx, 0x30
mov ecx, dword [rcx]
mov dword [rax], ecx
mov rax, qword [rbp - 0x20]
add rax, 0x50
mov rax, qword [rax]
cmp rax, 0
je 0x10033888
mov rax, qword [rbp - 0xa8]
add rax, 0x28
mov rcx, qword [rbp - 0x20]
add rcx, 0x50
mov rcx, qword [rcx]
add rcx, 0x24
mov ecx, dword [rcx]
mov dword [rax], ecx
mov rax, qword [rbp - 0xa8]
add rax, 0x30
mov rcx, qword [rbp - 0x20]
add rcx, 0x34
mov ecx, dword [rcx]
movsxd rcx, ecx
mov qword [rax], rcx
mov rax, qword [rbp - 0xa8]
add rax, 0x10
mov rcx, qword [rbp - 0x20]
add rcx, 0x40
mov rcx, qword [rcx]
mov qword [rax], rcx
mov rax, qword [rbp - 0xa8]
add rax, 0x18
mov rcx, qword [rbp - 0x20]
add rcx, 0x48
mov ecx, dword [rcx]
mov qword [rax], rcx
mov rax, qword [rbp - 0xa8]
add rax, 0x20
mov rcx, qword [rbp - 0x20]
add rcx, 0x3c
mov ecx, dword [rcx]
mov qword [rax], rcx
mov rax, qword [rbp + 0x18]
mov r9, rax
movabs rax, 0x40
mov r8, rax
movabs rax, 1
mov r11, rax
mov rax, qword [rbp - 0xa8]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_fwrite
jmp 0x10033769
mov eax, 0
leave
ret