Function at 0x4f0d00
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub esp, 0x54
mov eax, dword [0x551e00]
xor eax, esp
mov dword [esp + 0x50], eax
push ebx
mov ebx, dword [esp + 0x5c]
xor al, al
push ebp
push esi
xor esi, esi
movzx eax, al
test bl, 2
mov ecx, ebx
push edi
mov edi, 1
cmovne eax, edi
and ecx, edi
mov dword [esp + 0x18], ecx
jne 0x4f0d3a
test al, al
je 0x4f0f12
lea eax, [esp + 0x20]
xorps xmm0, xmm0
push eax
movdqu xmmword [esp + 0x24], xmm0
call fcn.004f1980
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4f0d5c
mov esi, edi
jmp 0x4f0f12
mov edi, eax
mov dword [esp + 0x30], esi
push 7
lea eax, [esp + 0x44]
mov dword [esp + 0x40], esi
push eax
xor ebp, ebp
mov dword [esp + 0x18], esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x48], 0x767d677f
mov dword [esp + 0x4c], 0x32382435
mov dword [esp + 0x50], 0x6c610d6a
mov dword [esp + 0x54], 0x7b607044
mov dword [esp + 0x58], 0x56783b35
mov dword [esp + 0x5c], 0x71773821
mov dword [esp + 0x60], 0x180f6c7b
call fcn.004f4f60
lea eax, [esp + 0x38]
mov dword [esp + 0x38], esi
push eax
lea eax, [esp + 0x44]
push eax
call fcn.004f4110
mov dword [esp + 0x1c], eax
xorps xmm0, xmm0
lea eax, [esp + 0x30]
mov dword [esp + 0x38], esi
push eax
movdqu xmmword [esp + 0x44], xmm0
movdqu xmmword [esp + 0x54], xmm0
call fcn.004f15b0
mov ecx, dword [esp + 0x30]
xor edx, edx
cmp eax, 1
cmovne ecx, edx
mov dword [esp + 0x30], ecx
call fcn.004f1540
mov edx, eax
mov dword [esp + 0x34], edx
cmp dword [edi], 0
mov eax, 1
cmove ebp, eax
cmp dword [esp + 0x18], 0
je 0x4f0e29
push dword [esp + 0x1c]
push edi
call fcn.004f0c70
mov edx, dword [esp + 0x34]
test eax, eax
je 0x4f0e29
or esi, eax
cmp dword [esp + 0x2c], 0
je 0x4f0e91
cmp dword [esp + 0x30], 0
je 0x4f0e56
mov eax, dword [edi + 0x44]
cmp eax, edx
jne 0x4f0e47
mov eax, dword [edi + 0x48]
mov dword [esp + 0x3c], eax
jmp 0x4f0e56
mov ecx, dword [esp + 0x10]
cmp eax, dword [esp + 0x30]
cmove ecx, edi
mov dword [esp + 0x10], ecx
cmp dword [edi + 0x44], edx
jne 0x4f0e91
test ebx, 0x100
je 0x4f0e91
call fcn.004f1540
cmp dword [edi + 4], 0
mov edx, eax
je 0x4f0e91
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x4f0e91
lea eax, [edi + 0xd8]
cmp dword [eax], edx
je 0x4f0e8b
or esi, 0x2000
add eax, 0x40
dec ecx
jne 0x4f0e81
add edi, dword [edi]
mov edx, dword [esp + 0x34]
test ebp, ebp
je 0x4f0e03
cmp dword [esp + 0x30], 0
je 0x4f0efc
cmp dword [esp + 0x3c], 0
je 0x4f0efc
mov ebp, dword [esp + 0x10]
test ebp, ebp
je 0x4f0efc
mov ecx, dword [esp + 0x2c]
mov eax, dword [ebp + 0x24]
cmp eax, dword [ecx + 0x24]
ja 0x4f0efc
jb 0x4f0ecb
mov eax, dword [ebp + 0x20]
cmp eax, dword [ecx + 0x20]
jae 0x4f0efc
mov edi, dword [esp + 0x1c]
test edi, edi
je 0x4f0efc
push dword [esp + 0x30]
call edi
test eax, eax
je 0x4f0eea
mov eax, dword [esp + 0x3c]
cmp dword [esp + 0x30], eax
je 0x4f0eea
or esi, 2
push edi
push ebp
call fcn.004f0c70
test eax, eax
je 0x4f0efc
or eax, 0x8000
or esi, eax
push dword [esp + 0x14]
mov dword [esp + 0x34], 0
call fcn.004f8260
mov edi, 1
xor al, al
mov ebp, ebx
and ebp, 4
movzx eax, al
mov ecx, ebx
cmovne eax, edi
and ecx, 8
mov dword [esp + 0x14], ecx
mov ecx, ebx
movzx eax, al
cmovne eax, edi
and ecx, 0x10
mov dword [esp + 0x18], ecx
jne 0x4f0f41
test al, al
je 0x4f1011
call fcn.004f67f0
mov edi, eax
test edi, edi
je 0x4f1011
mov dword [esp + 0x3c], 0
mov ecx, 1
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x30], ecx
test ebp, ebp
je 0x4f0f9a
lea eax, [esp + 0x3c]
push eax
push 4
lea eax, [esp + 0x3c]
push eax
push 7
push 0xffffffffffffffff
call edi
mov ecx, dword [esp + 0x34]
xor edx, edx
test eax, eax
cmovne ecx, edx
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x30]
cmp dword [esp + 0x14], 0
je 0x4f0fc6
lea eax, [esp + 0x3c]
push eax
push 4
lea eax, [esp + 0x40]
push eax
push 0x1e
push 0xffffffffffffffff
call edi
mov ecx, dword [esp + 0x38]
xor edx, edx
test eax, eax
cmovne ecx, edx
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x30]
cmp dword [esp + 0x18], 0
je 0x4f0fed
lea eax, [esp + 0x3c]
push eax
push 4
lea eax, [esp + 0x38]
push eax
push 0x1f
push 0xffffffffffffffff
call edi
mov ecx, dword [esp + 0x30]
test eax, eax
mov eax, 1
cmovne ecx, eax
cmp dword [esp + 0x34], 0
je 0x4f0ffa
or esi, 0x100
cmp dword [esp + 0x38], 0
je 0x4f1007
or esi, 0x200
test ecx, ecx
jne 0x4f1011
or esi, 0x400
test bl, 0x20
je 0x4f102b
call fcn.004f4fc0
test eax, eax
je 0x4f102b
cmp byte [eax + 2], 0
je 0x4f102b
or esi, 0x800
test bl, bl
jns 0x4f104b
call fcn.004f4fc0
test eax, eax
je 0x4f104b
mov eax, dword [eax + 0x10]
test eax, eax
je 0x4f104b
cmp dword [eax + 0xc], 0
je 0x4f104b
or esi, 0x1000
test ebx, 0x200
je 0x4f1062
call fcn.004f7960
test al, al
je 0x4f1062
or esi, 0x40000
test ebx, 0x400
je 0x4f1072
push ebx
call fcn.004f10d0
or esi, eax
test ebx, 0x1000
je 0x4f1089
call fcn.004f7960
test al, al
je 0x4f1089
or esi, 0x200000
test ebx, 0x2000
je 0x4f10b2
call fcn.004f5010
test eax, eax
je 0x4f10b2
cmp dword [eax + 0xf20], 0
jne 0x4f10ac
cmp dword [eax + 0xf24], 0
je 0x4f10b2
or esi, 0x400000
mov ecx, dword [esp + 0x60]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004f9e32
add esp, 0x54
ret 4