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

Disassembly:
xchg ebx, esi
mov edx, esi
not esi
call sub.kernel32.dll_GetVersion
add edx, ebx
cmp eax, 0xffffff10
jne 0x40106e
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
ret
not esi
and ebx, 0xb446068
sub edi, esi
xchg edi, edx
not edx
mov edx, edi
xchg edi, edx
or ebx, edx
call sub.user32.dll_GetCapture
xchg edi, ebx
add edx, 0xb47b315
mov ebx, edi
cmp eax, 0xffffff03
jne 0x4010f7
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
ret
rol edi, 2
mov edi, 0xb4b13a3
add ebx, 0xb4b8313
mov edx, esi
call sub.kernel32.dll_GetVersion
xchg esi, edx
ror esi, 1
sub esi, edi
bswap ebx
rol esi, 8
sub edx, edi
cmp eax, 0xffffff20
jne 0x40117b
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
ret
or ebx, 0xb50320b
mov edx, edi
add esi, edi
and ebx, edi
shr ebx, 0x10
add esi, edx
or esi, edi
xor esi, ebx
call sub.kernel32.dll_GetVersion
neg esi
and edx, ebx
sub esi, ebx
nop
or esi, ebx
or ebx, edx
xchg edi, edx
sub ebx, edx
cmp eax, 0xfffffefb
jne 0x401237
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
call sub.ntdll.dll_ZwCreateEvent
ret
jmp 0x49443c
and edx, esi
or esi, ebx
xor edx, ebx
and edi, ebx
sub ebx, 0xc6eb0d6
sub edi, ebx
xor esi, ebx
jmp 0x4951d6
pop esi
not edx
or ecx, ebx
add edx, ebx
and edi, edx
and edi, ecx
ror edi, 0x1c
or edi, 0x1230758c
inc ebx
and ecx, 0x12316b50
jmp 0x495dff
mov esi, 0x123b2f04
mov ebx, 0x1244885d
sub edi, ecx
shl ebx, 0x1b
rol edx, 0xf
sub edi, ebx
xor edx, 0x12460b25
xor ebx, edi
and edx, ecx
ror edx, 0xf
jmp 0x495cff
pop esi
xchg edi, edx
add edi, edx
xor ecx, 0x12999ab1
xor edi, ebx
bswap ecx
mov ebx, 0x129aad9e
sub edx, edi
or ecx, edx
jmp 0x4972f4
push 0xc7cd19a
mov edi, ebx
mov ebx, edx
add ebx, edi
not edx
neg ebx
bswap edx
or edi, edx
xchg edi, ebx
jmp 0x49600a
push 0xc7b9e6a
xchg edx, ecx
sub ecx, edi
xor ecx, 0x12eeb110
sub ecx, ebx
add ebx, edx
mov ecx, ebx
not edx
and ecx, ebx
or ecx, edi
neg edi
and ecx, edi
jmp 0x496f74
pop esi
rol ecx, 0x11
shr ebx, 4
xor ebx, 0x1341e4fa
inc edi
and ebx, 0x13428da8
mov edi, 0x1342eda1
add ecx, edi
dec edx
shl edi, 5
xchg edi, edx
sub edx, ebx
jmp 0x496c31
push 0xc77174f
add edx, 0x13908a49
xor ecx, ebx
dec edi
or ebx, ecx
sub ebx, ecx
sub ebx, ecx
sub ecx, 0x13923129
neg edx
xchg edx, ebx
rol edx, 0x1a
and ebx, edx
jmp 0x495ac9
push 0xc7b7585
sub edx, 0x13c9aad0
and ecx, 0x13cab6d0
add edx, 0x13cb3efd
add ebx, 0x13cbbc80
xor ecx, edx
neg edi
or ebx, ecx
sub edi, ecx
add ecx, edi
sub edi, edx
nop
and ecx, ebx
not ebx
jmp 0x494ce8
call esi
mov ebx, 0x142fa830
ror edi, 0x12
mov ebx, 0x1430edd7
and edi, ebx
sub ecx, edx
add edx, ebx
and edx, edi
xor edx, ecx
and ecx, 0x1434df03
mov edx, ecx
add edi, 0x1437d244
xor edx, ebx
jmp 0x496578
push 0xc783d6a
and ebx, 0x145fd2a0
xchg edx, ecx
xor ebx, ecx
add ecx, edi
shr ebx, 0x17
xor edx, ebx
jmp 0x494642
pop esi
sub ebx, edx
rol edx, 9
bswap ebx
xor ecx, 0x14c1418a
mov ecx, edx
sub ecx, 0x14c2642b
xor ecx, edi
or edx, ebx
jmp 0x49457a
call esi
add ecx, edx
shl edx, 0x13
nop
mov ebx, ecx
not ecx
jmp 0x4958a7
push 0xc779c7b
shr edi, 0xc
shl edi, 0x14
sub ebx, ecx
sub edi, edx
or edx, edi
rol ebx, 1
nop
shl ecx, 0x16
add ebx, 0x151b8072
xchg edi, edx
xor ebx, edi
mov ecx, edi
or edi, ecx
xor ebx, edx
jmp 0x496813
call fcn.00495871
or ecx, edx
mov ecx, edi
xchg edx, ecx
or ecx, edx
rol ebx, 0xa
and edi, edx
dec edx
sub edx, ebx
xchg ecx, edi
or ebx, 0x15828feb
add ecx, edx
sub edx, ebx
neg ecx
ror ecx, 0x14
mov edi, ecx
jmp 0x496c56
push 0xc7ca51a
or ecx, 0x15969964
and edx, edi
sub edx, 0x1597123e
sub ecx, edi
mov edx, edi
inc ebx
neg edi
xchg ecx, ebx
sub ecx, edi
sub ecx, 0x15992a61
ror ecx, 0x17
sub ecx, edx
or edx, ebx
jmp 0x494aa8
mov esi, 0x123b2f04
sub ecx, 0x15d20d0c
dec edi
rol edi, 3
xor edx, ebx
sub edi, 0x15d4238c
rol ebx, 4
add edx, 0x15d529bc
sub edx, ebx
jmp 0x4962e9
call fcn.00495871
xor edi, ecx
or edi, ecx
shl edi, 4
or edx, edi
jmp 0x495598
jmp loc.0049a000
pop esi
or edx, 0x164a07e8
mov ecx, 0x164a5922
xchg ecx, edi
add ebx, ecx
add edi, 0x164b10fc
or ebx, 0x164b7043
nop
and edi, 0x164df1a6
jmp 0x495368
push 0xc77eff6
and edi, ecx
xor ebx, edi
dec edx
sub edx, edi
add ebx, ecx
mov edi, edx
not ecx
xor ecx, edx
xchg ebx, edi
sub edx, ebx
sub edi, ebx
and edi, ebx
jmp 0x4956a4
push 0xc7a99fa
xor edi, ecx
mov edi, edx
mov ecx, ebx
ror edi, 3
xchg ecx, ebx
and ebx, edx
mov edx, 0x16f3bf64
inc ecx
sub edi, ebx
add edx, 0x16f483ed
jmp 0x4971af
call esi
bswap ebx
mov ebx, edx
or edi, 0x16f54d2a
mov edi, ecx
or edi, ecx
xor ecx, edx
jmp 0x49496c
pop esi
bswap edi
xor ecx, ebx
mov ecx, edi
mov edx, edi
shr ecx, 6
xor ecx, edx
or edi, 0x16fd5f31
sub edx, ecx
xchg edx, ebx
xor edx, 0x16fe22d7
xchg ebx, ecx
jmp 0x494f52
call fcn.00495871
and edx, edi
mov edx, edi
shl ebx, 0x1a
xchg edi, ecx
inc edx
add ecx, 0x17001215
inc edx
mov edx, ebx
xchg ebx, ecx
add edx, 0x17011562
sub ebx, edi
add ecx, ebx
or ebx, ecx
or edi, 0x17022c36
jmp 0x495ab8
mov esi, 0x123b2f04
shl ecx, 7
xor ebx, 0x17885804
add edi, 0x1788cfd7
not edi
xor ecx, ebx
mov ebx, edi
ror edx, 0xc
add edx, ecx
ror ecx, 0xe
not edi
sub ebx, edi
shl ebx, 0x16
rol edx, 0x14
jmp 0x496cd6
mov esi, 0x2774562b
sub edx, edi
or ebx, 0x17c4cf82
xchg edi, edx
xor edi, ecx
shl ebx, 0xd
bswap edi
jmp 0x496064
pop esi
and edx, ebx
and ecx, edx
or ebx, 0x17e08fa1
mov edi, 0x17e0ffd0
mov ecx, ebx
sub ebx, ecx
xchg edx, edi
xchg edx, edi
sub ebx, edx
xchg edi, edx
jmp 0x496cb1