Function at 0x4d0790
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x3c
push ebx
push esi
push edi
mov edi, ecx
mov esi, edx
push str.RIFX
mov edx, edi
xor ecx, ecx
call fcn.0041ad90
add esp, 4
mov dword [esi], eax
test eax, eax
je 0x4d07c9
mov dword [esp + 0x14], fcn.004108c0
mov dword [esp + 0x18], 0x4042e0
jmp 0x4d07d9
mov dword [esp + 0x14], fcn.00410860
mov dword [esp + 0x18], fcn.00404290
mov eax, dword [edi + 4]
push edi
call eax
add esp, 4
mov dword [esi + 4], eax
mov edx, edi
mov ecx, 8
push str.WAVE
call fcn.0041ad90
add esp, 4
test eax, eax
jne 0x4d0817
push str.XWMA
mov edx, edi
lea ecx, [eax + 8]
call fcn.0041ad90
add esp, 4
test eax, eax
je 0x4d0961
mov eax, dword [edi + 4]
push edi
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
call eax
mov ecx, dword [esi]
add esp, 4
mov dword [esp + 0x3c], ecx
mov edx, edi
lea ecx, [esp + 0x24]
mov dword [esp + 0x30], 0xc
mov ebx, eax
call fcn.004e8210
test eax, eax
je 0x4d098b
jmp 0x4d0880
mov eax, dword [esp + 0x24]
cmp eax, 0x666d7420
ja 0x4d08fa
je 0x4d08ea
cmp eax, 0x64617461
ja 0x4d08e1
je 0x4d08ce
cmp eax, 0x57696948
je 0x4d08bb
cmp eax, 0x584d4132
jne 0x4d0948
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x24], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x28], eax
jmp 0x4d0978
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x34], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x38], eax
jmp 0x4d0978
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x1c], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x20], eax
jmp 0x4d0978
cmp eax, 0x66616374
je 0x4d0961
jmp 0x4d0948
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x18], eax
jmp 0x4d0978
cmp eax, 0x736d706c
ja 0x4d0941
je 0x4d0931
cmp eax, 0x6d657461
je 0x4d0921
cmp eax, 0x7365656b
jne 0x4d0948
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x44], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x48], eax
jmp 0x4d0978
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x4c], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x50], eax
jmp 0x4d0978
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x3c], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x40], eax
jmp 0x4d0978
cmp eax, 0x766f7262
je 0x4d096a
mov eax, dword [esp + 0x28]
add eax, dword [esp + 0x2c]
cmp eax, ebx
jbe 0x4d0978
push str.WWISE:_broken_.wem__bad_extract___n
call fcn.0040b9e0
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x2c], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x30], eax
mov edx, edi
lea ecx, [esp + 0x24]
call fcn.004e8210
test eax, eax
jne 0x4d0880
mov edx, str.wem_bnk
mov ecx, edi
call fcn.0040b140
mov edx, dword [esi + 0x24]
mov dword [esi + 0xc], eax
test edx, edx
je 0x4d09db
lea eax, [esi + 0x88]
mov dword [esi + 0x58], 0x165
push eax
lea eax, [esi + 0x84]
mov ecx, edi
push eax
lea eax, [esi + 0x7c]
push eax
lea eax, [esi + 0x80]
push eax
lea eax, [esi + 0x60]
push eax
lea eax, [esi + 0x5c]
lea ebx, [esi + 0x58]
push eax
call fcn.004e5fc0
add esp, 0x18
jmp 0x4d0be2
cmp dword [esi + 0x18], 0x10
jb 0x4d0961
push edi
push dword [esi + 0x14]
lea ebx, [esi + 0x58]
call dword [esp + 0x20]
movzx eax, ax
mov dword [ebx], eax
mov eax, dword [esi + 0x14]
add eax, 2
push edi
push eax
call dword [esp + 0x28]
movzx eax, ax
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x14]
add eax, 4
push edi
push eax
call dword [esp + 0x2c]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x14]
add eax, 8
push edi
push eax
call dword [esp + 0x34]
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x14]
add eax, 0xc
push edi
push eax
call dword [esp + 0x40]
movzx eax, ax
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x14]
add eax, 0xe
push edi
push eax
call dword [esp + 0x48]
add esp, 0x30
movzx eax, ax
cmp dword [esi + 0x18], 0x10
mov dword [esi + 0x6c], eax
jbe 0x4d0a73
mov eax, dword [ebx]
cmp eax, 0x165
je 0x4d0a73
cmp eax, 0x166
je 0x4d0a73
mov eax, dword [esi + 0x14]
add eax, 0x10
push edi
push eax
call dword [esp + 0x20]
movzx eax, ax
add esp, 8
mov dword [esi + 0x78], eax
cmp dword [esi + 0x78], 6
jb 0x4d0aa4
mov eax, dword [esi + 0x14]
add eax, 0x14
push edi
push eax
call dword [esp + 0x1c]
movzx ecx, al
add esp, 8
mov dword [esi + 0x74], eax
cmp ecx, dword [esi + 0x5c]
jne 0x4d0aa4
mov ecx, eax
shr ecx, 8
and cl, 0xf
shr eax, 0xc
mov byte [esi + 0x70], cl
mov dword [esi + 0x74], eax
cmp dword [esi + 0x58], 0x166
jne 0x4d0be2
cmp dword [esi], 0
mov edx, dword [esi + 0x14]
mov dword [esp + 0x20], edx
je 0x4d0acc
mov ecx, fcn.00410810
mov dword [esp + 0x1c], fcn.004108c0
jmp 0x4d0ad9
mov ecx, fcn.004107c0
mov dword [esp + 0x1c], fcn.00410860
push edi
push edx
mov dword [esp + 0x20], ecx
lea ebx, [esi + 0x58]
call ecx
mov ecx, 0x166
add esp, 8
cmp ax, cx
jne 0x4d0be2
mov eax, dword [esp + 0x20]
lea ebx, [esi + 0x58]
add eax, 0x10
push edi
push eax
call dword [esp + 0x20]
add esp, 8
cmp ax, 0x22
jl 0x4d0be2
mov ebx, dword [esp + 0x20]
push edi
lea eax, [ebx + 0x18]
push eax
call dword [esp + 0x24]
lea ecx, [ebx + 0x28]
mov dword [esp + 0x28], eax
push edi
push ecx
call dword [esp + 0x2c]
lea ecx, [ebx + 0x2c]
mov dword [esp + 0x28], eax
push edi
push ecx
call dword [esp + 0x34]
add eax, dword [esp + 0x30]
mov dword [esp + 0x34], eax
lea eax, [ebx + 0x30]
cdq
push 1
push edx
push eax
lea eax, [esp + 0x37]
push eax
mov eax, dword [edi]
push edi
call eax
add esp, 0x2c
cmp eax, 1
je 0x4d0b62
mov ebx, 1
jmp 0x4d0ba0
mov al, byte [esp + 0x13]
xor ebx, ebx
test al, al
setne bl
test al, al
jne 0x4d0ba0
mov edx, dword [esp + 0x18]
xor ebx, ebx
mov ecx, dword [esp + 0x1c]
test ecx, ecx
setg bl
lea eax, [edx - 0x180]
test eax, eax
jne 0x4d0ba8
mov eax, dword [esp + 0x20]
add ecx, 0xffffff80
add eax, 0xfffffe80
xor edx, edx
cmp ecx, eax
setge dl
dec edx
and ebx, edx
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
lea eax, [esi + 0x7c]
test eax, eax
je 0x4d0bb9
mov ecx, dword [esp + 0x20]
mov dword [eax], ecx
mov ecx, dword [esp + 0x1c]
lea eax, [esi + 0x84]
test eax, eax
je 0x4d0bc5
mov dword [eax], edx
lea eax, [esi + 0x88]
test eax, eax
je 0x4d0bd1
mov dword [eax], ecx
lea ecx, [esi + 0x80]
lea eax, [esi + 0x58]
test ecx, ecx
je 0x4d0be0
mov dword [ecx], ebx
mov ebx, eax
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x4d0c45
cmp dword [esi + 0x40], 0x34
jb 0x4d0c45
add eax, 0x1c
push edi
push eax
call dword [esp + 0x1c]
add esp, 8
cmp eax, 1
jne 0x4d0c45
mov eax, dword [esi + 0x3c]
add eax, 0x28
push edi
push eax
call dword [esp + 0x1c]
add esp, 8
test eax, eax
jne 0x4d0c45
mov eax, dword [esi + 0x3c]
add eax, 0x2c
mov dword [esi + 0x80], 1
push edi
push eax
call dword [esp + 0x1c]
mov dword [esi + 0x84], eax
mov eax, dword [esi + 0x3c]
add eax, 0x30
push edi
push eax
call dword [esp + 0x24]
add esp, 0x10
inc eax
mov dword [esi + 0x88], eax
cmp dword [esi + 0x1c], 0
je 0x4d0961
mov ecx, dword [ebx]
cmp ecx, 0x3040
jg 0x4d0d33
je 0x4d0d27
cmp ecx, 0x161
jg 0x4d0cdb
je 0x4d0d03
mov eax, ecx
sub eax, 1
je 0x4d0dc9
sub eax, 1
je 0x4d0c96
sub eax, 0x67
jne 0x4d0d9f
mov dword [esi + 0x54], 1
jmp 0x4d0dd9
mov ebx, dword [esi + 0x5c]
mov edx, dword [esi + 0x78]
imul eax, ebx, 0x2e
mov dword [esi + 0x54], 1
add eax, 0xc
cmp edx, eax
je 0x4d0d7a
cmp edx, 0xa
jne 0x4d0cc0
cmp dword [esi + 0x34], 0
jne 0x4d0d7a
imul eax, ebx, 0x104
cmp dword [esi + 0x64], eax
jne 0x4d0dd9
mov dword [esi + 0x54], 0xd
jmp 0x4d0dd9
cmp ecx, 0x166
jg 0x4d0d0f
je 0x4d0cf7
mov eax, ecx
sub eax, 0x162
je 0x4d0d03
sub eax, 3
jne 0x4d0d9f
mov dword [esi + 0x54], 4
jmp 0x4d0dd9
mov dword [esi + 0x54], 5
jmp 0x4d0dd9
cmp ecx, 0x3039
jne 0x4d0d9f
mov dword [esi + 0x54], 9
jmp 0x4d0dd9
mov dword [esi + 0x54], 0xa
jmp 0x4d0dd9
cmp ecx, 0xfffb
jg 0x4d0d8c
je 0x4d0d83
cmp ecx, 0xaac0
jg 0x4d0d72
je 0x4d0d69
cmp ecx, 0x3041
je 0x4d0d60
cmp ecx, 0x8311
jne 0x4d0d9f
mov dword [esi + 0x54], 0xd
jmp 0x4d0dd9
mov dword [esi + 0x54], 0xc
jmp 0x4d0dd9
mov dword [esi + 0x54], 6
jmp 0x4d0dd9
cmp ecx, 0xfff0
jne 0x4d0d9f
mov dword [esi + 0x54], 3
jmp 0x4d0dd9
mov dword [esi + 0x54], 7
jmp 0x4d0dd9
mov eax, ecx
sub eax, 0xfffc
je 0x4d0dd2
sub eax, 2
je 0x4d0dc9
sub eax, 1
je 0x4d0dc0
cmp dword [esi + 0xc], 0
je 0x4d0961
push ecx
push str.WWISE:_unknown_codec_0x_04x__report__n
call fcn.0040b9e0
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esi + 0x54], 2
jmp 0x4d0dd9
mov dword [esi + 0x54], 0
jmp 0x4d0dd9
mov dword [esi + 0x54], 8
mov eax, dword [esi + 0x1c]
mov edx, dword [esi + 0x20]
add eax, edx
mov ebx, dword [esi + 4]
cmp eax, ebx
jbe 0x4d0e6d
sub edx, ebx
add edx, dword [esi + 0x1c]
cmp edx, 0x5000
jae 0x4d0e17
cmp ebx, 0x10000
jbe 0x4d0e17
push str.WWISE:_wrong_expected_size__re_rip___n
call fcn.0040b9e0
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x54]
test eax, eax
je 0x4d0e66
cmp eax, 1
je 0x4d0e66
cmp eax, 2
je 0x4d0e66
cmp eax, 3
je 0x4d0e66
cmp eax, 4
je 0x4d0e66
cmp eax, 9
je 0x4d0e66
cmp eax, 0xa
je 0x4d0e66
cmp eax, 0xc
je 0x4d0e66
cmp eax, 0xd
je 0x4d0e66
cmp eax, 5
je 0x4d0e66
cmp eax, 8
je 0x4d0e66
push str.WWISE:_wrong_expected_size__maybe_prefetch__report__n
call fcn.0040b9e0
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esi + 8], 1
cmp ecx, 0xfffe
jne 0x4d0e98
cmp dword [esi + 8], 0
je 0x4d0e98
mov ecx, dword [esi + 0x1c]
mov edx, edi
push str.OggS
call fcn.0041ad90
add esp, 4
test eax, eax
je 0x4d0e98
mov dword [esi + 0x54], 0xb
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret