Function at 0x401000
Capabilities:
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
call sub.user32.dll_GetDesktopWindow
cmp eax, 0xfffffeeb
jne 0x4010ac
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
ret
call sub.user32.dll_GetDesktopWindow
cmp eax, 0xffffff35
jne 0x40111c
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
ret
call sub.user32.dll_GetDesktopWindow
cmp eax, 0xfffffee5
jne 0x4011aa
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
ret
call sub.user32.dll_GetDesktopWindow
cmp eax, 0xffffff2f
jne 0x40124c
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
call sub.oleaut32.dll_VarDecRound
ret
jmp 0x498ba2
not ebx
xchg edi, ebx
xor ecx, edi
sub esi, edi
mov esi, 0x7ec577a9
sub ecx, esi
inc esi
or ecx, esi
jmp 0x49945d
call edi
and ebx, 0x8604632b
not esi
sub edx, ebx
xor esi, 0x86055c4f
add edx, 0x8605c1e1
add esi, ebx
add esi, ebx
call fcn.0049a277
xchg ebx, ecx
add ebx, edx
rol ebx, 0x13
xor ecx, esi
jmp 0x49b208
pop edi
xor ebx, esi
neg ecx
ror edx, 0x16
and ebx, edx
or esi, 0x862b68d9
inc esi
add edx, ecx
rol ecx, 0xf
jmp 0x49aa01
push 0x7ec8b1e7
add ecx, ebx
or ebx, edx
xchg ecx, edx
or ecx, edx
and esi, edx
mov edx, ebx
or esi, ecx
add esi, 0x872d5f99
add edx, 0x872d9d45
xchg ecx, ebx
mov ebx, ecx
not esi
rol edx, 0x12
rol edx, 0xa
and esi, ecx
nop
jmp 0x49966d
pop edi
or edx, 0x876924b3
mov esi, ebx
and edx, ebx
xor edx, 0x8769b601
mov ecx, edx
and edx, ebx
add ebx, 0x876a513d
sub esi, edx
xchg esi, ebx
xchg ecx, edx
rol ecx, 0x17
add esi, edx
jmp 0x49b441
push 0x7ec8e571
and esi, ebx
xor ecx, edx
sub esi, ecx
xor ecx, ebx
or edx, 0x87a4d539
xor esi, edx
shr edx, 8
not ebx
rol edx, 8
mov esi, ebx
and edx, ebx
mov ebx, ecx
jmp 0x49abe4
mov edi, 0x3f4d7907
dec esi
add ebx, edx
ror ecx, 0x1b
or ebx, ecx
shr edx, 1
sub edx, ecx
add ebx, 0x885fea7d
sub ebx, ecx
xor edx, ebx
sub ecx, edx
jmp 0x498ed0
mov edi, 0x3f4d7907
add edx, ecx
ror edx, 0x17
xchg ecx, ebx
xchg esi, ebx
or edx, ebx
add ebx, ecx
not ecx
inc ecx
jmp 0x49a9bf
call fcn.0049a277
or esi, ecx
and esi, ebx
nop
add ecx, 0x8a575e83
xor esi, 0x8a5845b7
sub ebx, ecx
jmp 0x498e57
pop edi
not ebx
xor ecx, esi
mov ebx, esi
and esi, ecx
and ecx, esi
ror ecx, 8
jmp 0x49953f
push 0x7ec90d5f
and ebx, ecx
xor ecx, 0x8acc8e1b
or ecx, esi
sub ecx, edx
add ecx, esi
bswap edx
shl edx, 8
add ebx, edx
mov edx, 0x8acfd0bb
sub ebx, ecx
jmp 0x49b3e2
pop edi
mov edx, esi
and esi, edx
mov esi, ecx
and ecx, edx
or edx, ecx
xor ebx, edx
mov ecx, edx
add esi, ebx
and ecx, esi
and esi, ecx
xor edx, 0x8b319307
bswap ecx
jmp 0x498f7e
call edi
add edx, ecx
or edx, ebx
xchg ecx, ebx
xchg ecx, ebx
inc ebx
or ecx, edx
rol esi, 0x1b
mov esi, 0x8b9ec99d
dec esi
mov edx, ebx
rol ebx, 1
sub edx, 0x8ba0c14f
or edx, ebx
sub ecx, 0x8ba1bc07
or edx, esi
mov edx, esi
jmp 0x49aeb3
push 0x7ec9367d
or ecx, edx
or ebx, edx
mov ecx, ebx
xor ecx, ebx
or esi, ecx
and esi, ecx
neg ecx
sub esi, ebx
or esi, ecx
and edx, esi
add edx, 0x8be04a79
sub ebx, 0x8be0c29f
jmp 0x499ba6
push 0x7eca7903
sub esi, ecx
nop
mov esi, ebx
and esi, ecx
dec esi
xor ecx, edx
xor ecx, ebx
neg edx
xchg edx, ecx
add edx, ecx
sub esi, ebx
neg ecx
jmp 0x49b727
push 0x7ecaa1f9
xor ebx, 0x8c2e9c3b
and esi, edx
sub edx, ecx
and esi, ebx
or ecx, ebx
not ecx
sub ebx, edx
neg edx
mov ecx, edx
xchg ebx, esi
jmp 0x49a7f8