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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xb4
mov eax, dword [0x4f5a388]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xor esi, esi
mov dword [ebp - 0x78], eax
mov eax, dword [edi]
push edi
mov ebx, ecx
mov dword [ebp - 0xa0], edi
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x7c], esi
mov dword [ebp - 0x88], esi
call dword [eax + 0x1c]
mov dword [ebp - 0x70], eax
jmp 0x4f4de41
cmp dword [ebp - 0x9c], 0x46464952
je 0x4f4dc16
cmp dword [ebp - 0x9c], 0x66657270
je 0x4f4dbf5
cmp dword [ebp - 0x9c], 0x6c797473
jne 0x4f4de33
mov edi, dword [ebp - 0x98]
mov dword [ebp - 0x88], 1
cmp edi, 0x5e
jb 0x4f4db6e
push 0x5e
pop edi
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
lea edx, [ebp - 0xa4]
push edx
push edi
lea edx, [ebp - 0x64]
push edx
push eax
call dword [ecx + 0xc]
cmp eax, esi
mov dword [ebp - 0x68], eax
jl 0x4f4de65
cmp dword [ebp - 0xa4], edi
jne 0x4f4de65
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebx + 0x54]
mov dword [ebx + 0x60], esi
mov dword [ebx + 0x5c], esi
call fcn.04f5269c
mov al, byte [ebp - 0x44]
movzx ecx, word [ebp - 0x40]
mov byte [ebx + 0x64], al
mov al, byte [ebp - 0x42]
mov byte [ebx + 0x65], al
movzx eax, word [ebp - 0x3e]
cdq
idiv ecx
lea ecx, [ebx + 0x4c]
mov word [ebx + 0x66], ax
movzx eax, word [ebp - 0x3a]
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x26]
push eax
fild dword [ebp - 0x6c]
fstp qword [ebx + 0x68]
call fcn.04f5269c
lea edi, [ebx + 0x3c]
lea esi, [ebp - 0x36]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0xa0]
jmp 0x4f4de31
lea eax, [ebp - 0x9c]
push eax
push dword [ebp - 0x70]
mov ecx, ebx
call fcn.04f4bae4
cmp eax, esi
mov dword [ebp - 0x68], eax
jl 0x4f4de85
jmp 0x4f4de33
cmp dword [ebp - 0x94], 0x4e424141
je 0x4f4dce4
cmp dword [ebp - 0x94], 0x54504141
jne 0x4f4de33
cmp dword [ebp - 0x88], esi
je 0x4f4de33
push 8
call fcn.04f57727
pop ecx
cmp eax, esi
je 0x4f4dc56
mov dword [eax + 4], esi
mov dword [ebp - 0x6c], eax
jmp 0x4f4dc59
mov dword [ebp - 0x6c], esi
cmp dword [ebp - 0x6c], esi
je 0x4f4de5c
push 0x48
call fcn.04f57727
pop ecx
cmp eax, esi
je 0x4f4dc79
push esi
push esi
mov ecx, eax
call fcn.04f4da26
jmp 0x4f4dc7b
xor eax, eax
mov ecx, dword [ebp - 0x6c]
mov dword [ecx], eax
cmp eax, esi
je 0x4f4de5c
lea ecx, [ebx + 0x38]
push ecx
lea ecx, [ebx + 0x70]
push ecx
lea ecx, [ebp - 0x9c]
push ecx
push edi
mov ecx, eax
call fcn.04f4cf60
cmp eax, esi
mov dword [ebp - 0x68], eax
jl 0x4f4de65
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
test byte [eax + 0x16], 0x10
lea eax, [ebx + 0x18]
push eax
je 0x4f4dcc4
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ecx, [ebx + 0x78]
jmp 0x4f4dccd
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ecx, [ebx + 0x74]
push dword [ebp - 0x6c]
call fcn.04f4b76a
lea eax, [ebx + 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x4f4de33
push 8
call fcn.04f57727
pop ecx
cmp eax, esi
je 0x4f4dcf5
mov dword [eax + 4], esi
mov esi, eax
test esi, esi
je 0x4f4dd16
and dword [esi], 0
push esi
push 0x4f414fc
push 3
push 0
push 0x4f4133c
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [ebp - 0x68], eax
jmp 0x4f4dd1d
mov dword [ebp - 0x68], 0x8007000e
cmp dword [ebp - 0x68], 0
jl 0x4f4de6e
and dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0x70]
mov edx, dword [eax]
lea ecx, [ebp - 0xac]
push ecx
push 1
xor ecx, ecx
push ecx
push dword [ebp - 0xb4]
push eax
call dword [edx + 0x14]
mov dword [ebp - 0x68], eax
test eax, eax
jl 0x4f4de6e
mov ecx, dword [ebp - 0x70]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xac]
lea ecx, [ebp - 0xac]
push ecx
push 0
xor ecx, ecx
push ecx
add eax, 0xfffffff4
push eax
push dword [ebp - 0x70]
call dword [edx + 0x14]
mov dword [ebp - 0x68], eax
test eax, eax
jl 0x4f4de6e
mov eax, dword [esi]
mov ecx, dword [eax]
lea edx, [ebp - 0x80]
push edx
push 0x4f41afc
push eax
call dword [ecx]
mov dword [ebp - 0x68], eax
test eax, eax
jl 0x4f4de6e
mov eax, dword [ebp - 0x80]
push dword [ebp - 0x70]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x4f4ddae
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi]
and dword [ebp - 0x84], 0
and dword [ebp - 0x74], 0
mov ecx, dword [eax]
lea edx, [ebp - 0x74]
push edx
push 0x4f415fc
push eax
call dword [ecx]
mov dword [ebp - 0x68], eax
test eax, eax
jl 0x4f4de6e
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
lea edx, [ebp - 0x84]
push edx
push eax
call dword [ecx + 0xc]
mov dword [ebp - 0x68], eax
test eax, eax
jl 0x4f4de05
test byte [ebp - 0x84], 2
je 0x4f4de05
mov eax, dword [esi]
mov dword [ebx + 0x80], eax
mov eax, dword [ebp - 0x74]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp - 0x68], 0
jl 0x4f4de6e
lea eax, [ebx + 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebx + 0x7c]
mov dword [esi + 4], eax
lea eax, [ebx + 0x18]
push eax
mov dword [ebx + 0x7c], esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor esi, esi
mov eax, dword [edi]
push esi
lea ecx, [ebp - 0x9c]
push ecx
push edi
call dword [eax + 0x10]
mov eax, dword [edi]
push esi
push dword [ebp - 0x78]
lea ecx, [ebp - 0x9c]
push ecx
push edi
call dword [eax + 0xc]
test eax, eax
je 0x4f4db26
jmp 0x4f4de85
mov dword [ebp - 0x68], 0x8007000e
jmp 0x4f4de85
mov dword [ebp - 0x68], 0x80004005
jmp 0x4f4de85
test esi, esi
je 0x4f4de85
mov eax, dword [esi]
test eax, eax
je 0x4f4de7e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push esi
call fcn.04f57743
pop ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov esi, dword [ebx + 0x70]
test esi, esi
je 0x4f4dead
add ebx, 0x64
mov ecx, dword [esi]
push ebx
add ecx, 0xa4
call fcn.04f48afe
mov esi, dword [esi + 4]
test esi, esi
jne 0x4f4de98
cmp dword [ebp - 0x68], 0
pop edi
pop esi
pop ebx
jne 0x4f4dec0
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x4f4dec0
mov dword [ebp - 0x68], eax
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x68]
xor ecx, ebp
call fcn.04f5803c
leave
ret 8