Function at 0x35a5a1
Capabilities:
Check for vm using instruction vpcext
Contain obfuscated stackstrings
Reference the vmware io port

Disassembly:
pop eax
add eax, 0xe
mov dword [eax], ecx
jmp 0x3522a0
jmp 0x355a75
jmp 0x355a7b
jmp 0x35794b
mov ecx, ebx
jmp 0x358a52
push ebx
mov ebx, esp
jmp 0x35a088
mov esi, dword [esp]
push 0x5ef685e6
jmp 0x3596ed
add ebp, 0x3e9f9532
jmp 0x3593a7
mov edx, 4
add ebx, edx
pop edx
xchg dword [esp], ebx
mov esp, dword [esp]
cmp dword [ebp + 0x122d38c3], 0
jne 0x358d55
cmp dword [ebp + 0x122d3b0f], 0
je 0x358d6a
push eax
mov eax, eax
mov eax, 0x43d
mov dword [ebp + 0x122d3788], eax
call dword [ebp + 0x122d5919]
pop eax
push ecx
sub esp, 4
jmp 0x35de6d
push edi
jmp 0x3591c5
pop esp
add esp, 4
push 0x34fdc872
mov dword [esp], esi
mov dword [esp], 0xa3df085
mov dword [esp], eax
jmp 0x35a9fa
mov edi, esp
add edi, 4
push edx
jmp 0x359793
xor eax, 0x7bbe28f5
push ebp
mov dword [esp], 0x2cf41e00
jmp 0x35dfca
pop dword [esp]
pop esp
sub esp, 4
jmp 0x35d7c1
push ebx
mov ebx, 0x5f7ffc01
mov edi, 0x7e7f2331
sub edi, ebx
mov ebx, dword [esp]
add esp, 4
push edx
mov edx, 0x2b3f3907
add esi, edx
pop edx
jmp 0x35d820
mov eax, esp
add eax, 4
add eax, 4
xchg dword [esp], eax
pop esp
add eax, 4
jmp 0x35bd2f
xchg dword [esp], edx
jmp 0x35ae02
inc ebp
add ebp, 0x9ac76314
jmp 0x359d54
mov eax, edi
jmp 0x35b2d7
xchg dword [esp], ebx
mov esp, dword [esp]
mov dword [esp], ecx
mov ecx, 0x3fdfa1ca
push edx
mov edx, 0x3e5ffe27
jmp 0x35ab92
push eax
jmp 0x35a55f
xchg dword [esp], ecx
pop esp
mov dword [esp], ebx
mov ebx, 4
add edx, 0x2f73891f
push eax
mov eax, 0x7fe615aa
jmp 0x35cd33
mov dword [esp], ebx
mov ebx, esp
add ebx, 4
add ebx, 4
xchg dword [esp], ebx
pop esp
jmp 0x358d7b
xor dword [esp], 0x7db3066b
push dword [esp]
jmp 0x35e444
add ebx, 0x3f7f0067
shr ebx, 7
xchg ebx, ebp
inc ebp
xchg ebx, ebp
not ebx
push eax
mov eax, 0x12fdca4
jmp 0x35bbd6
mov dword [esp], ecx
mov dword [esp], edi
mov edi, 0x3fdfa1ca
sub dword [esp + 4], edi
pop edi
pop edi
jmp 0x3598f9
mov edx, 4
add edi, edx
pop edx
jmp 0x35a7ce
mov dword [esp], edi
push 0x6ec6bdf7
mov dword [esp], eax
push ebp
jmp 0x35977d
push ebx
jmp 0x359d44
mov ebx, esp
add ebx, 4
sub ebx, 4
jmp 0x359424
xor edx, ebp
mov ebp, dword [esp]
jmp 0x359d88
add esp, 4
add ebx, edx
mov edx, dword [esp]
jmp 0x35da7b
push dword [esp + 4]
mov ebx, dword [esp]
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
jmp 0x35dc28
mov edi, dword [esp]
add esp, 4
cmp dword [ebp + 0x122d38c3], 0
jne 0x359f00
cmp dword [ebp + 0x122d3b0f], 0
je 0x359f0f
push eax
mov eax, eax
mov eax, 0
call dword [ebp + 0x122d21fc]
pop eax
push eax
jmp 0x35d6c2
mov esi, dword [esp]
add esp, 4
mov ecx, dword [esp]
push edx
mov edx, esp
add edx, 4
sub edx, 4
jmp 0x359361
push edi
jmp 0x35aa05
mov dword [esp], 0x3ffe2234
dec dword [esp]
not dword [esp]
and dword [esp], 0x7dee2393
jmp 0x35dc41
sub edx, 0x7e4e49c0
jmp 0x35a741
mov eax, dword [esp]
jmp 0x35a644
sub ebp, 0x8943ff7f
add eax, ebp
pop ebp
add eax, esi
push ebx
mov ebx, 0x7f0746b3
sub eax, ebx
pop ebx
sub eax, 0x5dbee08
push dword [esp]
jmp 0x35b332
sub ebx, 4
xchg dword [esp], ebx
pop esp
mov dword [esp], ecx
jmp 0x35aa29
add dword [esp], 0x17dfb42a
pop edi
push eax
jmp 0x35af9b
push esp
mov eax, dword [esp]
push ebp
mov ebp, esp
jmp 0x35d366
push ebx
mov ebx, esp
sub esp, 4
mov dword [esp], ebp
push ebx
push eax
mov dword [esp], edi
mov edi, 0x57fef0eb
add edi, 0xf7bbc66f
push eax
jmp 0x3593fb
shl edi, 8
add edi, 0xe9e7c004
sub eax, edi
jmp 0x35ae5e
pop eax
jmp 0x3591b6
push 0x3143e960
mov dword [esp], edi
mov dword [esp], 0x18a1365a
jmp 0x35beab
or edx, 0x3f773031
sub edx, 0xe7ddc825
mov esi, edx
pop edx
jmp 0x35aca2
xchg dword [esp], edi
pop esp
jmp 0x35afa5
pop esp
push dword [esp]
mov ecx, dword [esp]
push edx
mov edx, esp
add edx, 4
push ebx
mov ebx, 4
add edx, ebx
pop ebx
xchg dword [esp], edx
jmp 0x358da7
mov dword [esp], 0x3a9fdb61
mov dword [esp], ebp
mov dword [esp], ebx
jmp 0x35a197
sub esp, 4
mov dword [esp], edi
jmp 0x35e1ba
mov edi, 4
add ebx, edi
pop edi
sub ebx, 4
xor ebx, dword [esp]
xor dword [esp], ebx
xor ebx, dword [esp]
pop esp
mov dword [esp], esp
add dword [esp], 4
jmp 0x35d217
mov ecx, edi
push esi
push ecx
pop esi
mov eax, esi
jmp 0x35a062
sub edx, 0xbe679de6
shl edx, 4
xor edx, 0xa8583b40
sub edi, 0x76745fbf
sub edi, 0x15d7b738
sub edi, edx
add edi, 0x15d7b738
add edi, 0x76745fbf
mov edx, dword [esp]
add esp, 4
sub edi, 0x3674f957
jmp 0x35c778
xor edx, esi
pop esi
mov eax, edx
push dword [esp]
pop edx
sub esp, 4
mov dword [esp], edx
push esp
pop edx
push eax
mov eax, 4
jmp 0x35b034
add edi, 0x3674f957
add edi, 0x57de3f50
pop ecx
push 0xc83c2f2
mov dword [esp], edi
pop eax
pop edi
push 0x4aa61062
mov dword [esp], edx
jmp 0x35da59
pop esp
mov dword [esp], ebx
mov ebx, esp
jmp 0x35b248
push dword [esp]
pop edi
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
xor ecx, dword [esp]
xor dword [esp], ecx
xor ecx, dword [esp]
pop esp
jmp 0x35d9a8
mov eax, 0x7ff50eca
jmp 0x35c4a0
push eax
jmp 0x35b363
pop dword [esp]
mov esp, dword [esp]
sub esp, 4
jmp 0x35bd3f
add edx, eax
pop eax
push ecx
mov ecx, esp
add ecx, 4
jmp 0x35e309
push edx
mov edx, 4
jmp 0x35c3b0
mov ebx, eax
pop eax
pop edi
jmp 0x35dc62
push dword [esp]
pop esi
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
jmp 0x35dde5
sub esp, 4
push esp
pop dword [esp]
add dword [esp], 4
mov eax, dword [esp]
push eax
jmp 0x3591e6
mov dword [esp], edi
jmp 0x35bda9
add edi, 4
add edi, 4
xchg dword [esp], edi
mov esp, dword [esp]
jmp 0x35dc17
shr ecx, 2
jmp 0x35c90f
add ebx, eax
pop eax
add eax, ebx
pop ebx
push eax
jmp 0x35d5af
mov ebx, dword [esp]
sub esp, 4
mov dword [esp], edi
jmp 0x35cabd
sub eax, 4
xchg dword [esp], eax
mov esp, dword [esp]
jmp 0x35b39f
mov dword [esp], edi
jmp 0x35944e
mov edi, 0x7db3066b
xor eax, edi
mov edi, dword [esp]
add esp, 4
push ecx
mov dword [esp], edi
mov edi, eax
push ebx
mov ebx, esp
add ebx, 4
jmp 0x35a4b0
xor edx, 0x5af5336d
xor edx, 0x30fa8fee
jmp 0x35cfb0
mov dword [esp], ebp
mov ebp, 0x6fb595c1
neg ebp
push edi
jmp 0x35c6d1
add ebx, edx
pop edx
add ebx, 4
push edi
mov dword [esp], ebx
push dword [esp + 4]
jmp 0x35c42f
mov ebx, dword [esp]
push 0x5f8014cf
mov dword [esp], eax
mov eax, esp
push ecx
mov ecx, 4
add eax, ecx
pop ecx
add eax, 4
xchg dword [esp], eax
pop esp
pop dword [esp]
pop esp
jmp 0x359ee8
or eax, 0x7e6f083a
xor eax, 0x6820bad0
jmp 0x35dd7e
mov edx, 0x325274cc
add edx, ebp
pop ebp
add edx, 0x2aff89f2
dec edx
and edx, 0x567555ef
jmp 0x35a755
mov edi, 0x75cf8500
or edi, 0x3ef9ed41
not edi
dec edi
push ecx
mov ecx, 0x5fde9e26
inc ecx
shr ecx, 6
neg ecx
jmp 0x35b52b
mov eax, dword [esp]
jmp 0x35e29b
pop edx
mov ebp, ebx
pop ebx
shr ebp, 6
dec ebp
add ebp, 0xff082827
add ebx, ebp
pop ebp
push edx
jmp 0x358d35
add edi, ecx
jmp 0x35aceb
sub ecx, 0x3abf0bdc
push ebp
mov ebp, 0x17fd3267
neg ebp
or ebp, 0x7f4ee982
or ebp, 0x5ffda949
add ebp, 0xdce0b76d
sub ecx, ebp
pop ebp
sub edi, ecx
jmp 0x35d77b
push edx
mov dword [esp], ebx
push ecx
mov ecx, 0x5bbf5a51
sub dword [esp + 4], ecx
pop ecx
jmp 0x35e1ce
mov edi, esp
jmp 0x35b458
add edx, eax
pop eax
add edx, ebx
sub edx, 0x7fe615aa
sub edx, 0x2f73891f
pop ebx
jmp 0x35e337
mov ebx, 0x586f4eeb
jmp 0x359726
xor ebx, edx
jmp 0x35c761
push dword [esp]
push dword [esp]
mov eax, dword [esp]
add esp, 4
push 0x1e978471
mov dword [esp], eax
mov eax, esp
add eax, 4
push ebx
jmp 0x35cda6
add ebp, 4
add ebp, 4
xchg dword [esp], ebp
pop esp
push edi
mov edi, 4
add eax, edi
pop edi
push edi
mov edi, 0x705e9897
push edi
not dword [esp]
pop edi
add edi, 0x747552fa
sub esp, 4
mov dword [esp], esi
mov esi, 0x7fdf5c45
and edi, esi
pop esi
jmp 0x35a666
push dword [esp + 4]
jmp 0x35a728
push ebx
push ebx
mov dword [esp], esi
push ecx
mov dword [esp], 0x5cbf01c5
jmp 0x358afd
add eax, esi
mov esi, dword [esp]
jmp 0x35db3d
pop ecx
add ebp, edi
pop edi
jmp 0x358d14
mov dword [esp], edx
mov edx, esp
add edx, 4
push esi
mov esi, 4
add edx, esi
pop esi
push edx
push dword [esp + 4]
pop edx
pop dword [esp]
pop esp
jmp 0x35d9db
pop dword [esp]
jmp 0x35a849
add esi, edi
sub esi, 0x2b3f3907
pop edi
push esi
jmp 0x35bcea
xchg dword [esp], eax
pop esp
mov dword [esp], ebx
mov ebx, eax
jmp 0x35c95a
mov dword [ebp + 0x122d2c40], eax
mov dword [ebp + 0x122d23a5], 0
push esi
jmp 0x35a961
push eax
xor dword [esp], 0x57996d98
jmp 0x35de2e
add esp, 4
push eax
mov dword [esp], ebx
jmp 0x359ed0
add esp, 4
push ebp
mov ebp, 0x3cfd02ab
add ebp, 0x6e5ef4f6
add ebp, 0x5cef4e91
jmp 0x35a364
pop esi
xor dword [esp + 4], ebx
mov ebx, dword [esp]
add esp, 4
pop eax
jmp 0x35913e
xchg dword [esp], ecx
pop esp
jmp 0x35b018
add dword [esp], 0x2a3196
mov dword [esp], eax
jmp 0x35a31a
shr ebx, 2
xor ebx, 0x678fcd00
push eax
mov eax, 0x57b03bd1
xor ebx, eax
pop eax
push edx
mov edx, 0x7c3b12ad
and edx, 0x77efd959
jmp 0x35be03
xchg dword [esp], ecx
pop esp
add esp, 4
cmp dword [ebp + 0x122d38c3], 0
jne 0x35ddfe
cmp dword [ebp + 0x122d3b0f], 0
je 0x35de0d
push eax
mov eax, eax
mov eax, 0
call dword [ebp + 0x122d2a8d]
pop eax
cmp dword [ebp + 0x122d3b0f], 0
je 0x35de23
push eax
mov eax, 0
call dword [ebp + 0x122d5952]
pop eax
sub esp, 4
jmp 0x35988f
pop edx
jmp 0x35e0b6
mov dword [esp], esi
mov dword [esp], ebx
jmp 0x35dff5
mov dword [esp], eax
jmp 0x35a59d
mov ebx, eax
push ebx
add dword [esp], 0x6addb2dc
pop ecx
sub ecx, 0x6addb2dc
pop ebx
sub esp, 4
mov dword [esp], esi
mov dword [esp], ecx
mov eax, dword [esp]
push edx
jmp 0x35e174
push edx
mov dword [esp], esi
push edx
push ebp
mov ebp, 0x4d9d3700
jmp 0x35c641
push esi
mov dword [esp], esp
add dword [esp], 4
pop edx
push edi
mov edi, 4
add edx, edi
pop edi
add edx, 4
push edx
push dword [esp + 4]
mov edx, dword [esp]
add esp, 4
jmp 0x35d7e4
mov edi, 0x777bf18a
sub dword [esp + 4], edi
mov edi, dword [esp]
add esp, 4
jmp 0x35c72f
pop eax
add eax, 0x5bbf5a51
pop ebx
cmp dword [ebp + 0x122d38c3], 0
jne 0x35e1e7
cmp dword [ebp + 0x122d3b0f], 0
je 0x35e1f6
push eax
mov eax, eax
mov eax, 0
call dword [ebp + 0x122d30c0]
pop eax
push eax
push dword [esp]
pop eax
push edx
mov dword [esp], ebx
mov ebx, esp
add ebx, 4
push edx
mov edx, 0x3fff4ec1
jmp 0x35a1b0
add esp, 4
push esi
mov esi, 0x777bf18a
push esi
mov esi, 0x5dbee08
jmp 0x35d736
sub ecx, 4
jmp 0x3594bc
xchg dword [esp], edx
mov esp, dword [esp]
jmp 0x35e35a
cmp dword [ebp + 0x122d38c3], 0
jne 0x35e36c
cmp dword [ebp + 0x122d3b0f], 0
je 0x35e37d
push eax
push ebx
mov eax, eax
mov eax, 0
call dword [ebp + 0x122d2be4]
pop ebx
pop eax
push edi
mov edi, esp
add edi, 4
push edx
mov edx, 0x5b9db3c7
not edx
add edx, 1
inc edx
not edx
xor edx, 0x5b9db3c1
sub edi, edx
pop edx
xchg dword [esp], edi
pop esp
mov dword [esp], eax
jmp 0x359717
pop eax
push edi
jmp 0x358fff