Function at 0x4e2880
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
mov eax, dword [0x641a90]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
xorps xmm0, xmm0
push edi
mov edi, ecx
push 0
push ebx
movdqu xmmword [edi + 0x4fa34], xmm0
movdqu xmmword [edi + 0x4fa44], xmm0
mov dword [edi + 0x4fa54], 0
push dword [edi + 0x4fa58]
call fcn.00595cb4
add esp, 0xc
mov ecx, edi
call fcn.004d2a10
mov ecx, edi
mov word [edi], ax
call fcn.004d2a10
and eax, 0xffffff00
cmp eax, 0x52617700
jne 0x4e2c36
push 0
mov ecx, edi
call fcn.004d2a10
add eax, ebx
push eax
push dword [edi + 0x4fa58]
call fcn.00595cb4
add esp, 0xc
mov ecx, edi
call fcn.004d2a10
mov ecx, edi
mov ebx, eax
call fcn.004d2a10
test ebx, ebx
je 0x4e2b4f
push esi
lea esp, [esp]
dec ebx
mov ecx, edi
mov dword [ebp - 0x34], ebx
call fcn.004d2a10
mov ecx, edi
mov ebx, eax
call fcn.004d2a10
mov ecx, edi
call fcn.004d2a10
mov ecx, edi
mov dword [ebp - 0x30], eax
call fcn.004d2a10
push dword [edi + 0x4fa58]
mov esi, eax
call fcn.005960c7
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 8]
add eax, esi
push 0
push eax
push dword [edi + 0x4fa58]
call fcn.00595cb4
add esp, 0x10
cmp ebx, 0x210
ja 0x4e2a96
je 0x4e2a83
add ebx, 0xffffff00
cmp ebx, 0x12
ja case.0x4e2aaf.539
jmp dword [ebx*4 + 0x4e2c48]
and esi, 3
movsx eax, byte [esi + str.0653]
sub eax, 0x30
mov dword [edi + 0x245d4], eax
jmp case.0x4e2aaf.539
xor esi, esi
lea ecx, [ecx]
push 0xb
mov ecx, edi
call fcn.004d3030
fstp dword [ebp + esi*4 - 0x28]
inc esi
cmp esi, 9
jb 0x4e29b0
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.004e99e0
jmp case.0x4e2aaf.539
lea esi, [edi + 0x24644]
mov ebx, 3
mov edi, edi
push 0xb
mov ecx, edi
call fcn.004d3030
fstp dword [esi]
add esi, 4
dec ebx
jne 0x4e29e0
jmp case.0x4e2aaf.539
mov word [edi + 0x44a6], si
jmp case.0x4e2aaf.539
mov word [edi + 0x44a4], si
jmp case.0x4e2aaf.539
mov word [edi + 0x44ae], si
jmp case.0x4e2aaf.539
mov word [edi + 0x44ac], si
jmp case.0x4e2aaf.539
mov word [edi + 0x44aa], si
jmp case.0x4e2aaf.539
mov word [edi + 0x44a8], si
jmp case.0x4e2aaf.539
mov dword [edi + 0x4fa34], esi
jmp case.0x4e2aaf.539
mov eax, dword [ebp + 8]
add eax, esi
mov dword [edi + 0x398], eax
jmp case.0x4e2aaf.539
mov eax, dword [ebp + 8]
add eax, esi
mov dword [edi + 0x3a0], eax
mov eax, dword [ebp - 0x30]
mov dword [edi + 0x3ac], eax
jmp case.0x4e2aaf.539
mov ecx, dword [ebp - 0x2c]
lea eax, [ecx - 4]
mov dword [edi + 0x4fa38], eax
jmp 0x4e2b32
push esi
mov ecx, edi
call fcn.004d8670
fstp dword [edi + 0x4fa54]
jmp case.0x4e2aaf.539
add ebx, 0xfffffde6
cmp ebx, 0xe7
ja case.0x4e2aaf.539
movzx eax, byte [ebx + 0x4e2cb8]
jmp dword [eax*4 + 0x4e2c94]
mov dword [edi + 0x4fa3c], esi
jmp case.0x4e2aaf.539
mov eax, dword [ebp + 8]
add eax, esi
mov dword [edi + 0x394], eax
jmp case.0x4e2aaf.539
mov dword [edi + 0x4fa40], esi
jmp case.0x4e2aaf.539
mov dword [edi + 0x4fa44], esi
jmp case.0x4e2aaf.539
mov eax, dword [ebp + 8]
add eax, esi
mov dword [edi + 0x4fa48], eax
jmp case.0x4e2aaf.539
mov dword [edi + 0x4fa4c], esi
jmp case.0x4e2aaf.539
mov eax, dword [ebp + 8]
add eax, esi
mov dword [edi + 0x4fa50], eax
jmp case.0x4e2aaf.539
mov byte [edi + 0x290], 0
lea esi, [edi + 0x251]
push dword [edi + 0x4fa58]
push 0x3f
push 1
push esi
call fcn.00595b79
push str._camera
push esi
call fcn.00596770
add esp, 0x18
test eax, eax
je case.0x4e2aaf.539
mov byte [eax], 0
mov ecx, dword [ebp - 0x2c]
push 0
push ecx
push dword [edi + 0x4fa58]
call fcn.00595cb4
mov ebx, dword [ebp - 0x34]
add esp, 0xc
test ebx, ebx
jne 0x4e2920
pop esi
cmp dword [edi + 0x4fa34], 3
mov eax, 0x4e7820
mov ecx, 0x4e76f0
mov dword [edi + 0x43f4], 0xffff
cmovl eax, ecx
mov dword [edi + 0x446c4], eax
movq xmm0, qword [str.Phase_One]
movq qword [edi + 0x211], xmm0
mov ax, word [0x5e039c]
mov word [edi + 0x219], ax
cmp byte [edi + 0x251], 0
jne 0x4e2c36
movzx eax, word [edi + 0x44a4]
cmp eax, 0x1020
jg 0x4e2c19
je 0x4e2c07
cmp eax, 0x80c
je 0x4e2bcd
cmp eax, 0xa7a
jne 0x4e2c36
mov eax, dword [str.H_10]
mov dword [edi + 0x251], eax
mov al, byte [0x5e03b0]
jmp 0x4e2c30
movq xmm0, qword [str.LightPhase]
movq qword [edi + 0x251], xmm0
mov ax, word [0x5e03a8]
mov word [edi + 0x259], ax
mov al, byte [0x5e03aa]
mov byte [edi + 0x25b], al
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005920c1
mov esp, ebp
pop ebp
ret 4
mov eax, dword [str.H_20]
mov dword [edi + 0x251], eax
mov al, byte [0x5e03b8]
jmp 0x4e2c30
cmp eax, 0x1570
jne 0x4e2c36
mov eax, dword [str.H_25]
mov dword [edi + 0x251], eax
mov al, byte [0x5e03c0]
mov byte [edi + 0x255], al
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop ebx
call fcn.005920c1
mov esp, ebp
pop ebp
ret 4