Function at 0x430f90
Capabilities:
Print debug messages

Disassembly:
mov al, byte [esp + 4]
sub esp, 0x20
mov byte [0x787b3c], al
mov eax, dword [esp + 0x28]
push ebx
push ebp
push esi
push edi
push eax
mov dword [0x787c88], 1
mov dword [0x787c70], eax
call fcn.00430070
mov ecx, dword [0x787b3c]
mov ebp, eax
and ecx, 0xff
add esp, 4
xor edi, edi
mov dword [0x787b38], ebp
lea eax, [ecx - 1]
cmp eax, 9
ja case.default.0x430fde
jmp dword [eax*4 + 0x431218]
mov eax, dword [esp + 0x3c]
cmp eax, edi
jne 0x431003
push str.Didnt_set_color_for_fade_to_col_transition___using_black
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov dword [0x787c74], edi
jmp 0x4310aa
mov dl, byte [eax]
mov byte [0x787c74], dl
mov cl, byte [eax + 1]
mov byte [0x787c75], cl
mov bl, byte [eax + 2]
mov byte [0x787c76], bl
jmp 0x4310b6
mov dword [0x787c74], edi
jmp case.0x430fde.2
or bl, 0xff
mov byte [0x787c74], 0xff
mov byte [0x787c75], 0xff
mov byte [0x787c76], bl
jmp 0x4310b6
mov eax, dword [esp + 0x3c]
cmp eax, edi
jne 0x431077
push str.Didnt_set_color_for_swipe_transition___using_black
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ebp, dword [0x787b38]
mov dword [0x787c74], edi
mov bl, byte [0x787c76]
mov dword [0x787c8c], 0x437f0000
jmp 0x4310b6
mov dl, byte [eax]
mov byte [0x787c74], dl
mov cl, byte [eax + 1]
mov byte [0x787c75], cl
mov bl, byte [eax + 2]
mov byte [0x787c76], bl
mov dword [0x787c8c], 0x437f0000
jmp 0x4310b6
push str.Unknown_transition_type
call fcn.00459e30
add esp, 4
mov ebp, dword [0x787b38]
mov bl, byte [0x787c76]
mov eax, dword [0x787b3c]
xor ecx, ecx
and eax, 0xff
mov dword [esp + 0x34], ecx
lea edx, [eax - 1]
mov dword [esp + 0x3c], edx
jmp 0x4310d3
mov edx, dword [esp + 0x3c]
mov esi, ecx
mov eax, 0x3f800000
shl esi, 5
cmp ecx, 3
mov dword [esi + 0x787b5c], edi
mov dword [esi + 0x787b54], eax
mov dword [esi + 0x787b50], edi
ja case.default.0x4310f4
jmp dword [ecx*4 + 0x431240]
mov dword [esi + 0x787b60], edi
mov dword [esi + 0x787b64], edi
jmp case.default.0x4310f4
mov dword [esi + 0x787b64], edi
jmp 0x431125
mov dword [esi + 0x787b60], edi
mov dword [esi + 0x787b64], eax
jmp case.default.0x4310f4
mov dword [esi + 0x787b64], eax
mov dword [esi + 0x787b60], eax
cmp edx, 9
mov dword [0x787c90], 0
ja case.default.0x431146
xor eax, eax
mov al, byte [edx + 0x431260]
jmp dword [eax*4 + 0x431250]
fld dword [0x47f470]
fsub dword [0x787c8c]
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], edi
fidiv dword [esp + 0x10]
jmp 0x43117b
fld dword [0x787c8c]
fchs
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], edi
fidiv dword [esp + 0x18]
fstp dword [0x787c90]
fld dword [0x787c8c]
call fcn.004650b8
jmp 0x4311d8
fld dword [0x787c8c]
call fcn.004650b8
fld dword [0x47f354]
fsub dword [0x787c94]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], edi
fidiv dword [esp + 0x20]
jmp 0x4311d2
fld dword [0x787c8c]
call fcn.004650b8
fld dword [0x787c94]
fchs
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], edi
fidiv dword [esp + 0x28]
fstp dword [0x787c78]
xor ecx, ecx
xor edx, edx
mov dl, byte [0x787c75]
mov ch, al
mov cl, byte [0x787c74]
xor eax, eax
shl ecx, 8
or ecx, edx
mov al, bl
shl ecx, 8
or ecx, eax
mov dword [esi + 0x787b58], ecx
mov ecx, dword [esp + 0x34]
inc ecx
cmp ecx, 4
mov dword [esp + 0x34], ecx
jl 0x4310cf
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
sal byte [ebp + 0x28], 0xa1
lock xor byte [eax + eax + 0x6a], cl
add byte [edx + 4], ch
push 0x787b48
mov edx, dword [eax]
push 0x1c4
push 5
push eax
call dword [edx + 0x64]
test eax, eax
jge 0x431395
push str.Didnt_draw_primitive
call esi
pop esi
ret
pop esi
ret