Function at 0x14010d5f0
Capabilities:
Read file on windows

Disassembly:
push rdi
push r12
sub rsp, 0x78
mov rax, qword [0x1402a83b0]
xor rax, rsp
mov qword [rsp + 0x48], rax
xor eax, eax
mov rdi, rcx
xor r8d, r8d
mov qword [rcx + 0x55b78], rax
mov qword [rcx + 0x55b80], rax
mov qword [rcx + 0x55b88], rax
mov qword [rcx + 0x55b90], rax
mov dword [rcx + 0x55b98], eax
mov rcx, qword [rcx + 0x55ba0]
mov r12d, edx
call fcn.1401c1f88
mov rcx, rdi
call fcn.1400fbc20
mov rcx, rdi
mov word [rdi], ax
call fcn.1400fbc20
and eax, 0xffffff00
cmp eax, 0x52617700
jne 0x14010da42
mov rcx, rdi
mov qword [rsp + 0x50], r15
call fcn.1400fbc20
mov rcx, qword [rdi + 0x55ba0]
xor r8d, r8d
lea edx, [r12 + rax]
call fcn.1401c1f88
mov rcx, rdi
call fcn.1400fbc20
mov rcx, rdi
mov r15d, eax
call fcn.1400fbc20
test r15d, r15d
je 0x14010d949
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x58], r14
nop dword [rax + rax]
mov rcx, rdi
dec r15d
call fcn.1400fbc20
mov rcx, rdi
mov esi, eax
call fcn.1400fbc20
mov rcx, rdi
call fcn.1400fbc20
mov rcx, rdi
mov r14d, eax
call fcn.1400fbc20
mov rcx, qword [rdi + 0x55ba0]
mov ebx, eax
call fcn.1401c2310
mov rcx, qword [rdi + 0x55ba0]
lea ebp, [r12 + rbx]
xor r8d, r8d
mov r13d, eax
mov edx, ebp
call fcn.1401c1f88
cmp esi, 0x210
ja 0x14010d86d
je 0x14010d856
add esi, 0xffffff00
cmp esi, 0x12
ja case.0x14010d89a.539
mov eax, esi
lea rsi, [0x140000000]
mov ecx, dword [rsi + rax*4 + 0x10da58]
add rcx, rsi
jmp rcx
mov eax, ebx
and eax, 3
movsx eax, byte [rax + rsi + 0x222cec]
sub eax, 0x30
mov dword [rdi + 0x24628], eax
jmp case.0x14010d89a.539
lea rbx, [rsp + 0x20]
mov esi, 9
nop dword [rax]
mov edx, 0xb
mov rcx, rdi
call fcn.1400fc2c0
lea rbx, [rbx + 4]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss dword [rbx - 4], xmm1
dec rsi
jne 0x14010d770
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.140115560
jmp case.0x14010d89a.539
lea rbx, [rdi + 0x2469c]
mov esi, 3
mov edx, 0xb
mov rcx, rdi
call fcn.1400fc2c0
lea rbx, [rbx + 4]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss dword [rbx - 4], xmm1
dec rsi
jne 0x14010d7b0
jmp case.0x14010d89a.539
mov word [rdi + 0x44f2], bx
jmp case.0x14010d89a.539
mov word [rdi + 0x44f0], bx
jmp case.0x14010d89a.539
mov word [rdi + 0x44fa], bx
jmp case.0x14010d89a.539
mov word [rdi + 0x44f8], bx
jmp case.0x14010d89a.539
mov word [rdi + 0x44f6], bx
jmp case.0x14010d89a.539
mov word [rdi + 0x44f4], bx
jmp case.0x14010d89a.539
mov dword [rdi + 0x55b78], ebx
jmp case.0x14010d89a.539
mov dword [rdi + 0x3e0], ebp
jmp case.0x14010d89a.539
mov dword [rdi + 0x3e8], ebp
mov dword [rdi + 0x3f4], r14d
jmp case.0x14010d89a.539
lea eax, [r13 - 4]
mov dword [rdi + 0x55b7c], eax
jmp case.0x14010d89a.539
mov edx, ebx
mov rcx, rdi
call fcn.140101aa0
movss dword [rdi + 0x55b98], xmm0
jmp case.0x14010d89a.539
add esi, 0xfffffde6
cmp esi, 0xe7
ja case.0x14010d89a.539
mov eax, esi
lea rsi, [0x140000000]
movzx eax, byte [rsi + rax + 0x10dac8]
mov ecx, dword [rsi + rax*4 + 0x10daa4]
add rcx, rsi
jmp rcx
mov dword [rdi + 0x55b80], ebx
jmp case.0x14010d89a.539
mov dword [rdi + 0x3dc], ebp
jmp case.0x14010d89a.539
mov dword [rdi + 0x55b84], ebx
jmp case.0x14010d89a.539
mov dword [rdi + 0x55b88], ebx
jmp case.0x14010d89a.539
mov dword [rdi + 0x55b8c], ebp
jmp case.0x14010d89a.539
mov dword [rdi + 0x55b90], ebx
jmp case.0x14010d89a.539
mov dword [rdi + 0x55b94], ebp
jmp case.0x14010d89a.539
mov edx, 1
mov byte [rdi + 0x29c], 0
mov r9, qword [rdi + 0x55ba0]
lea r8d, [rdx + 0x3e]
lea rcx, [rdi + 0x25d]
call fcn.1401c1e14
lea rdx, str._camera
lea rcx, [rdi + 0x25d]
call fcn.1401c2aac
test rax, rax
je case.0x14010d89a.539
mov byte [rax], 0
mov rcx, qword [rdi + 0x55ba0]
xor r8d, r8d
mov edx, r13d
call fcn.1401c1f88
test r15d, r15d
jne 0x14010d6c0
mov r14, qword [rsp + 0x58]
mov r13, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov rbx, qword [rsp + 0xa0]
cmp dword [rdi + 0x55b78], 3
mov r15, qword [rsp + 0x50]
mov dword [rdi + 0x4440], 0xffff
lea rax, [0x140112a00]
lea rcx, [0x1401128a0]
cmovl rax, rcx
mov qword [rdi + 0x44720], rax
movsd xmm0, qword [str.Phase_One]
movsd qword [rdi + 0x21d], xmm0
movzx eax, word [0x140222d08]
mov word [rdi + 0x225], ax
cmp byte [rdi + 0x25d], 0
jne 0x14010da42
movzx eax, word [rdi + 0x44f0]
cmp eax, 0x80c
je 0x14010da17
cmp eax, 0xa7a
je 0x14010d9fc
cmp eax, 0x1020
je 0x14010d9e1
cmp eax, 0x1570
jne 0x14010da42
mov eax, dword [str.H_25]
mov dword [rdi + 0x25d], eax
movzx eax, byte [0x140222d30]
mov byte [rdi + 0x261], al
jmp 0x14010da42
mov eax, dword [str.H_20]
mov dword [rdi + 0x25d], eax
movzx eax, byte [0x140222d28]
mov byte [rdi + 0x261], al
jmp 0x14010da42
mov eax, dword [str.H_10]
mov dword [rdi + 0x25d], eax
movzx eax, byte [0x140222d20]
mov byte [rdi + 0x261], al
jmp 0x14010da42
movsd xmm0, qword [str.LightPhase]
movsd qword [rdi + 0x25d], xmm0
movzx eax, word [0x140222d18]
mov word [rdi + 0x265], ax
movzx eax, byte [0x140222d1a]
mov byte [rdi + 0x267], al
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.1401bd600
add rsp, 0x78
pop r12
pop rdi
ret