Function at 0x41c990
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x30
push ebx
push ebp
mov ebp, dword [esp + 0x3c]
xor eax, eax
push esi
push edi
push eax
mov dword [0x486320], eax
mov dword [0x486324], eax
mov dword [0x486328], eax
mov dword [0x48632c], eax
mov dword [0x486330], eax
mov dword [0x486334], eax
mov dword [0x486338], eax
mov eax, dword [0x486344]
push ebp
push eax
call fcn.00435f77
add esp, 0xc
call fcn.00401240
mov word [0x465c48], ax
call fcn.00401240
and eax, 0xffffff00
cmp eax, 0x52617700
jne 0x41cd30
push 0
call fcn.00401240
mov ecx, dword [0x486344]
add eax, ebp
push eax
push ecx
call fcn.00435f77
add esp, 0xc
call fcn.00401240
mov esi, eax
mov dword [esp + 0x14], esi
call fcn.00401240
test esi, esi
je 0x41cc1f
jmp 0x41ca27
mov ebp, dword [esp + 0x44]
dec dword [esp + 0x14]
call fcn.00401240
mov edi, eax
call fcn.00401240
call fcn.00401240
mov ebx, eax
call fcn.00401240
mov edx, dword [0x486344]
push edx
mov esi, eax
call fcn.00435c4a
add esp, 4
push 0
mov dword [esp + 0x1c], eax
mov eax, dword [0x486344]
add ebp, esi
push ebp
push eax
call fcn.00435f77
add esp, 0xc
cmp edi, 0x210
ja 0x41cb7d
je 0x41cb72
lea eax, [edi - 0x100]
cmp eax, 0x12
ja case.0x41ca8c.257
jmp dword [eax*4 + 0x41cd38]
and esi, 3
movsx ecx, byte [esi + str.0653]
sub ecx, 0x30
mov dword [0x486340], ecx
jmp case.0x41ca8c.257
xor esi, esi
lea ecx, [ecx]
push 8
call fcn.004012e0
fstp dword [esp + esi*4 + 0x20]
inc esi
add esp, 4
cmp esi, 9
jb 0x41cab0
lea eax, [esp + 0x1c]
call fcn.004180a0
jmp case.0x41ca8c.257
xor esi, esi
push 8
call fcn.004012e0
fstp dword [esi + 0x466110]
add esi, 4
add esp, 4
cmp esi, 0xc
jb 0x41cad4
jmp case.0x41ca8c.257
mov word [0x4ac484], si
jmp case.0x41ca8c.257
mov word [0x465d20], si
jmp case.0x41ca8c.257
mov word [0x4660a0], si
jmp case.0x41ca8c.257
mov word [0x4ac498], si
jmp case.0x41ca8c.257
mov word [0x466040], si
jmp case.0x41ca8c.257
mov word [0x4ac486], si
jmp case.0x41ca8c.257
mov dword [0x486320], esi
jmp case.0x41ca8c.257
mov dword [0x465d28], ebp
jmp case.0x41ca8c.257
mov dword [0x465c54], ebp
mov dword [0x465f6c], ebx
jmp case.0x41ca8c.257
mov edx, dword [esp + 0x18]
add edx, 0xfffffffc
mov dword [0x486324], edx
jmp case.0x41ca8c.257
mov dword [0x486338], esi
jmp case.0x41ca8c.257
lea eax, [edi - 0x21a]
cmp eax, 0xe7
ja case.0x41ca8c.257
movzx eax, byte [eax + 0x41cda0]
jmp dword [eax*4 + 0x41cd84]
mov dword [0x486334], esi
jmp case.0x41ca8c.257
mov dword [0x486160], ebp
jmp case.0x41ca8c.257
mov dword [0x486328], esi
jmp case.0x41ca8c.257
movzx ecx, word [0x4660a0]
sub esi, ecx
mov dword [0x486330], esi
jmp case.0x41ca8c.257
mov dword [0x48632c], ebp
jmp case.0x41ca8c.257
mov edx, dword [0x486344]
push edx
push 0x3f
push 1
push 0x466060
mov byte [0x46609f], 0
call fcn.00435763
push str._camera
push 0x466060
call fcn.00434a10
add esp, 0x18
test eax, eax
je case.0x41ca8c.257
mov byte [eax], 0
mov eax, dword [esp + 0x18]
mov ecx, dword [0x486344]
push 0
push eax
push ecx
call fcn.00435f77
add esp, 0xc
cmp dword [esp + 0x14], 0
jne 0x41ca23
cmp dword [0x486320], 3
mov dword [0x4862f0], 0x406680
jl 0x41cc3c
mov dword [0x4862f0], 0x4068d0
cmp byte [0x466060], 0
mov edx, dword [0x45b3dc]
mov eax, dword [0x45b3e0]
mov cx, word [0x45b3e4]
mov dword [0x466044], 0xffff
mov dword [0x4ac3c0], edx
mov dword [0x4ac3c4], eax
mov word [0x4ac3c8], cx
jne 0x41cd30
movzx eax, word [0x465d20]
cmp eax, 0x1020
jg 0x41cd11
je 0x41ccf3
cmp eax, 0x80c
je 0x41ccbb
cmp eax, 0xa7a
jne 0x41cd30
mov edx, dword [str.H_10]
mov al, byte [0x45b3f8]
mov dword [0x466060], edx
mov byte [0x466064], al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov ecx, dword [str.LightPhase]
mov edx, dword [0x45b3ec]
mov ax, word [0x45b3f0]
mov dword [0x466060], ecx
mov cl, byte [0x45b3f2]
mov dword [0x466064], edx
mov word [0x466068], ax
mov byte [0x46606a], cl
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
mov edx, dword [str.H_20]
mov al, byte [0x45b400]
mov dword [0x466060], edx
mov byte [0x466064], al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret
cmp eax, 0x1570
jne 0x41cd30
mov ecx, dword [str.H_25]
mov dl, byte [0x45b408]
mov dword [0x466060], ecx
mov byte [0x466064], dl
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x30
ret