Function at 0x44ae80
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x23c
mov eax, dword [0x47f1f0]
mov dword [ebp - 0x14], eax
push edi
mov dword [ebp - 0x238], ecx
movzx eax, word [ebp + 0xc]
cmp eax, 4
je 0x44aea8
xor al, al
jmp 0x44b099
mov ecx, dword [ebp + 8]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 0x238]
add ecx, 0x2768
call fcn.004503f0
mov dword [ebp - 0x23c], eax
mov edx, dword [ebp - 8]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x23c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x23c]
call dword [edx + 0x2c]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x44aeec
mov al, 1
jmp 0x44b099
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x10]
call dword [edx + 0x8c]
mov byte [ebp - 1], al
call dword [sym.imp.PlatformData.dll_public:_static_class_CParameterGlobal____cdecl_CParameterGlobal::GetInstance_void_]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
movzx ecx, byte [eax + 0xc]
cmp ecx, 2
jne 0x44af22
movzx edx, byte [ebp - 1]
cmp edx, 1
je 0x44af22
mov al, 1
jmp 0x44b099
mov eax, dword [ebp - 0xc]
movzx ecx, byte [eax + 0xc]
cmp ecx, 3
jne 0x44af35
mov al, 1
jmp 0x44b099
mov dx, word [0x470bdc]
mov word [ebp - 0x218], dx
mov ecx, 0x7f
xor eax, eax
lea edi, [ebp - 0x216]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x10]
call dword [edx + 0x30]
push eax
push 0x470be0
push 0x100
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.MSVCR71.dll__snwprintf]
add esp, 0x10
lea ecx, [ebp - 0x218]
push ecx
mov ecx, dword [ebp - 0x238]
add ecx, 0x7618
mov edx, dword [ebp - 0x238]
mov eax, dword [edx + 0x7618]
call dword [eax + 0x1c]
mov ecx, dword [ebp - 0xc]
movzx edx, byte [ecx + 0x1a]
test edx, edx
je 0x44b097
call fcn.00408560
mov dword [ebp - 0x220], eax
mov byte [ebp - 0x219], 0
call dword [sym.imp.GameEngine.dll_public:_static_class_CD3DSound____cdecl_CD3DSound::GetInstance_void_]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0
je 0x44aff7
push 0
push 0x470bfc
push 0x470c08
mov eax, dword [ebp - 0x220]
push eax
mov ecx, dword [ebp - 0x224]
call dword [sym.imp.GameEngine.dll_public:_bool___thiscall_CD3DSound::PlaySoundW_struct_HINSTANCE_____wchar_t_const___wchar_t_const___bool_]
mov byte [ebp - 0x219], al
movzx ecx, byte [ebp - 0x219]
test ecx, ecx
jne 0x44b097
push 0x470c1c
push 0x470c28
mov edx, dword [ebp - 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov dword [ebp - 0x228], eax
cmp dword [ebp - 0x228], 0
je 0x44b097
mov eax, dword [ebp - 0x228]
push eax
mov ecx, dword [ebp - 0x220]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x22c], 0
je 0x44b08a
mov edx, dword [ebp - 0x22c]
push edx
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [ebp - 0x234], eax
push 7
mov eax, dword [ebp - 0x220]
push eax
mov ecx, dword [ebp - 0x234]
push ecx
call dword [sym.imp.WINMM.dll_PlaySoundW]
mov dword [ebp - 0x230], eax
mov edx, dword [ebp - 0x22c]
push edx
call fcn.0042f4c0
mov eax, dword [ebp - 0x22c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeResource]
mov al, 1
mov ecx, dword [ebp - 0x14]
call fcn.0045d95d
pop edi
mov esp, ebp
pop ebp
ret 8