Function at 0x4111d0
Capabilities:
Access peb ldr_data
Check for time delay via gettickcount

Disassembly:
push 0xffffffffffffffff
push 0x552dde
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebp
push esi
mov esi, ecx
push edi
mov eax, dword [esi + 0x348]
lea ebp, [esi + 0x348]
mov ecx, ebp
mov dword [esp + 0xc], ebp
call dword [eax + 4]
mov eax, dword [esi + 0x384]
mov edi, dword [esp + 0x30]
inc eax
mov dword [esp + 0x28], 0
cmp edi, eax
je 0x411247
cmp edi, 7
jne 0x411223
cmp eax, 1
jne 0x411247
mov edx, dword [ebp]
mov ecx, ebp
mov dword [esp + 0x28], 0xffffffff
call dword [edx + 8]
pop edi
pop esi
pop ebp
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
add esp, 0x20
ret 4
push ebx
push edi
push str._StormPlayer__PlayPro_:ProStep:_d.
call fcn.00411490
mov ebx, 1
add esp, 8
cmp edi, ebx
jne 0x41128d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esi + 0x344], eax
lea eax, [esp + 0x14]
lea ecx, [esp + 0x1c]
push eax
push ecx
lea ecx, [esi + 0x378]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
call fcn.004132d0
jmp 0x411465
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
call ebx
mov ecx, dword [esi + 0x344]
lea edx, [esp + 0x14]
sub eax, ecx
push edx
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x20]
push eax
lea ecx, [esi + 0x378]
mov dword [esp + 0x1c], edi
call fcn.004132d0
call ebx
cmp edi, 7
mov dword [esi + 0x344], eax
jne 0x4113a3
mov eax, dword [esi + 0x384]
cmp eax, 2
jne 0x411397
mov edx, dword [0x5d2ac0]
mov ecx, 0x5d2ac0
mov dword [esp + 0x34], 0x5d2ac0
call dword [edx + 4]
mov eax, dword [0x5cb048]
mov byte [esp + 0x2c], 1
test eax, eax
jne 0x41135e
mov eax, dword [0x5cb044]
test eax, eax
jne 0x41135e
push 0x380
call sub.MFC42.DLL_operatornew
mov edi, eax
add esp, 4
mov dword [esp + 0x14], edi
test edi, edi
mov byte [esp + 0x2c], 2
je 0x411332
mov ecx, edi
call fcn.00472270
mov dword [edi], vtable.CComObjectNoRef_class_CKMPPlayer_.0
jmp 0x411334
xor edi, edi
mov eax, dword [0x5b4b90]
mov ecx, 0x5d0190
push eax
push 0x406940
mov byte [esp + 0x34], 1
mov dword [0x5cb044], edi
call fcn.00406500
mov dword [0x5cb048], 1
mov edx, dword [0x5d2ac0]
mov edi, dword [0x5cb044]
mov ecx, 0x5d2ac0
mov byte [esp + 0x2c], 0
call dword [edx + 8]
mov eax, dword [edi]
lea ebx, [esi + 0x340]
push ebx
push edi
call dword [eax + 0xe0]
mov ecx, dword [ebx]
push ecx
push str._StormPlayer__PlayPro_:HaveAD:_d.
call fcn.00411490
add esp, 8
mov ecx, esi
call fcn.00411920
jmp 0x411465
cmp edi, 2
jne 0x411465
mov edx, dword [0x5d2ac0]
mov ecx, 0x5d2ac0
mov dword [esp + 0x34], ecx
call dword [edx + 4]
mov eax, dword [0x5cb048]
mov bl, 3
test eax, eax
mov byte [esp + 0x2c], bl
jne 0x41142c
mov eax, dword [0x5cb044]
test eax, eax
jne 0x41142c
push 0x380
call sub.MFC42.DLL_operatornew
mov edi, eax
add esp, 4
mov dword [esp + 0x14], edi
test edi, edi
mov byte [esp + 0x2c], 4
je 0x411401
mov ecx, edi
call fcn.00472270
mov dword [edi], vtable.CComObjectNoRef_class_CKMPPlayer_.0
jmp 0x411403
xor edi, edi
mov eax, dword [0x5b4b90]
mov ecx, 0x5d0190
push eax
push 0x406940
mov byte [esp + 0x34], bl
mov dword [0x5cb044], edi
call fcn.00406500
mov dword [0x5cb048], 1
mov edx, dword [0x5d2ac0]
mov edi, dword [0x5cb044]
mov ecx, 0x5d2ac0
mov byte [esp + 0x2c], 0
call dword [edx + 8]
mov eax, dword [edi]
add esi, 0x340
push esi
push edi
call dword [eax + 0xe0]
mov ecx, dword [esi]
push ecx
push str._StormPlayer__PlayPro_:HaveAD:_d.
call fcn.00411490
add esp, 8
mov edx, dword [ebp]
mov ecx, ebp
mov dword [esp + 0x2c], 0xffffffff
call dword [edx + 8]
mov ecx, dword [esp + 0x24]
pop ebx
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
add esp, 0x20
ret 4