Function at 0x45b3b0
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4d044e
mov eax, dword fs:[0]
push eax
sub esp, 0xe8
mov eax, dword [0x5920a4]
xor eax, esp
mov dword [esp + 0xe0], eax
push ebx
push esi
push edi
mov eax, dword [0x5920a4]
xor eax, esp
push eax
lea eax, [esp + 0xf8]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
lea eax, [esp + 0xd4]
mov esi, ecx
call fcn.00461fc0
xor ebx, ebx
push str.name
lea ecx, [esp + 0x14]
mov dword [esp + 0x104], ebx
call fcn.0044be60
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x30]
push eax
push edi
lea ecx, [esp + 0xe0]
mov byte [esp + 0x10c], 1
call fcn.0044e9e0
push 0xffffffffffffffff
push ebx
lea ecx, [esi + 0xc]
push eax
mov byte [esp + 0x10c], 2
call fcn.00448ee0
push ebx
push 1
lea ecx, [esp + 0x34]
call fcn.00448860
push ebx
push 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x108], bl
call fcn.00448860
push str.model
lea ecx, [esp + 0x14]
call fcn.0044be60
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0xbc]
push eax
push edi
lea ecx, [esi + 0xc]
mov byte [esp + 0x10c], 3
call fcn.0044e9e0
push ebx
push 1
lea ecx, [esp + 0x18]
mov byte [esp + 0x108], 5
call fcn.00448860
mov eax, dword [esi]
lea ecx, [esp + 0xb8]
push ecx
mov ecx, esi
call dword [eax + 8]
push str.none
lea ecx, [esp + 0x68]
call fcn.0044be60
push str.colorEffect
lea ecx, [esp + 0x4c]
mov byte [esp + 0x104], 6
call fcn.0044be60
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x84]
push eax
push edi
lea ecx, [esp + 0x70]
mov byte [esp + 0x10c], 7
call fcn.0044e9e0
push ebx
push 1
lea ecx, [esp + 0x50]
call fcn.00448860
push ebx
push 1
lea ecx, [esp + 0x6c]
mov byte [esp + 0x108], 0xa
call fcn.00448860
push str.0_0_0_0
lea ecx, [esp + 0x30]
call fcn.0044be60
push str.colorParams
lea ecx, [esp + 0x14]
mov byte [esp + 0x104], 0xb
call fcn.0044be60
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0xa0]
push eax
push edi
lea ecx, [esp + 0x38]
mov byte [esp + 0x10c], 0xc
call fcn.0044e9e0
push ebx
push 1
lea ecx, [esp + 0x18]
call fcn.00448860
push ebx
push 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x108], 0xf
call fcn.00448860
lea edi, [esp + 0x80]
call fcn.0046e340
mov eax, str.hsvadd
mov edx, edi
call fcn.0045b6b0
test eax, eax
je 0x45b68b
mov eax, str.rgbadd
mov edx, edi
call fcn.0045b6b0
test eax, eax
je 0x45b6a3
mov eax, str.rgbmultiply
mov edx, edi
call fcn.0045b6b0
test eax, eax
je 0x4edfca
mov eax, str.rgbblend
mov edx, edi
call fcn.0045b6b0
test eax, eax
je 0x45b697
mov eax, str.rainbow
mov edx, edi
call fcn.0045b6b0
neg eax
sbb eax, eax
and eax, 0xfffffffb
add eax, 5
mov dword [esi + 0x2c], eax
mov eax, dword [esp + 0xa0]
add esi, 0x30
cmp dword [esp + 0xb4], 0x10
jae 0x45b60f
lea eax, [esp + 0xa0]
lea ecx, [esi + 0xc]
push ecx
lea ecx, [esi + 8]
push ecx
lea ecx, [esi + 4]
push ecx
push esi
push str.__f____f____f___f
push eax
call fcn.004aa35e
add esp, 0x18
xor esi, esi
push ebx
inc esi
push esi
lea ecx, [esp + 0xa4]
call fcn.00448860
push ebx
push esi
lea ecx, [esp + 0x88]
call fcn.00448860
push ebx
push esi
lea ecx, [esp + 0xc0]
call fcn.00448860
push ebx
push esi
lea ecx, [esp + 0xdc]
call fcn.00448860
mov ecx, dword [esp + 0xf8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xe0]
xor ecx, esp
call fcn.004a9c82
mov esp, ebp
pop ebp
ret 4
mov dword [esi + 0x2c], 1
jmp 0x45b5f4
mov dword [esi + 0x2c], 4
jmp 0x45b5f4
mov dword [esi + 0x2c], 2
jmp 0x45b5f4
mov dword [esi + 0x2c], 3
jmp 0x45b5f4