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

Disassembly:
mov esi, edi
xchg ebx, edi
add esi, edx
dec esi
neg ebx
rol esi, 0xd
and edx, esi
call sub.kernel32.dll_GetConsoleWindow
bswap esi
nop
or esi, edi
and esi, 0x89e02fd0
add esi, edi
sub esi, edi
xchg edi, esi
and ebx, edx
cmp eax, 0xffffff29
jne 0x4010cd
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.user32.dll_BlockInput
call sub.user32.dll_BlockInput
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.user32.dll_BlockInput
call sub.user32.dll_BlockInput
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.user32.dll_BlockInput
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.user32.dll_BlockInput
call sub.user32.dll_BlockInput
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_RevertToSelf
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_RevertToSelf
ret
or edi, edx
shr edx, 0xa
inc esi
add esi, edx
or edi, esi
rol edi, 0x13
neg edi
add ebx, esi
call sub.kernel32.dll_GetConsoleWindow
xor edi, 0x89e62b10
or edx, 0x89e68149
sub edi, 0x89e6d52b
shr esi, 3
add ebx, edx
shl edi, 0x10
dec ebx
cmp eax, 0xffffff16
jne 0x401164
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_RevertToSelf
call sub.user32.dll_BlockInput
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.user32.dll_BlockInput
ret
add esi, ebx
or esi, ebx
xor esi, 0x89ea0580
ror edx, 0x11
call sub.kernel32.dll_GetConsoleWindow
rol edx, 0xc
sub ebx, edx
neg esi
or edx, 0x89eb8245
or edx, edi
shr edi, 0x19
xchg esi, edx
cmp eax, 0xffffff11
jne 0x4011fa
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.user32.dll_BlockInput
call sub.user32.dll_BlockInput
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_RevertToSelf
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_RevertToSelf
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.advapi32.dll_RevertToSelf
call sub.ws2_32.dll_WSADuplicateSocketW
ret
xor edx, ebx
sub esi, 0x89ee2015
sub esi, ebx
add edi, ebx
add edx, esi
and esi, 0x89ef52d0
call sub.user32.dll_GetMessagePos
mov edx, ebx
sub edx, esi
cmp eax, 0xffffff23
jne 0x4012a0
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.user32.dll_BlockInput
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_RevertToSelf
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_RevertToSelf
call sub.ws2_32.dll_WSADuplicateSocketW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_RevertToSelf
call sub.user32.dll_BlockInput
call sub.advapi32.dll_RevertToSelf
call sub.advapi32.dll_ConvertAccessToSecurityDescriptorW
ret
jmp 0x494601
mov esi, 0x8b6db766
mov edi, ebx
or ebx, esi
mov ebx, 0x8b6f1e45
add edx, edi
or ebx, edi
and edi, edx
ror edi, 0x1a
jmp 0x496c95
pop edi
sub esi, ecx
mov ecx, ebx
sub edx, ebx
xor ebx, 0x90f690f8
not edx
add ebx, 0x90f70fbd
add esi, ebx
xchg esi, ebx
mov ebx, 0x90f7ccef
xchg edx, ebx
add ebx, esi
jmp 0x495dba
push 0x8c6f6d58
add edx, 0x9134be98
and edx, ebx
neg ebx
xor esi, edx
sub edx, esi
add ebx, esi
and esi, ebx
jmp 0x494ad9
push 0x8b7a6589
sub esi, ecx
xor esi, 0x913a5d9d
sub ecx, esi
mov ebx, ecx
and ebx, esi
rol esi, 0xb
rol ebx, 0x1d
add edx, ecx
xor esi, ecx
jmp 0x495d8c
push 0x8c6fbe3a
xchg esi, ecx
mov ebx, esi
sub edx, esi
mov ebx, edx
and esi, ebx
sub ecx, 0x914bf82e
xchg esi, ebx
rol edx, 0x19
mov edx, ecx
shl edx, 8
mov esi, 0x914d3419
or ecx, edx
neg ecx
jmp 0x494f87
pop edi
mov ecx, 0x91d441b3
and edx, ebx
xchg esi, ecx
xchg edx, esi
dec ecx
jmp 0x496423
push 0x8c7010e1
add ecx, 0x91fbea44
neg edx
sub edx, ebx
mov ebx, esi
or ebx, 0x91fd0306
jmp 0x496688
call edi
and ecx, edx
add ecx, 0x926ad195
neg ebx
or ecx, ebx
shl esi, 5
mov ebx, 0x92787ca8
or ebx, edx
jmp 0x4967c3
pop edi
xor ebx, edx
inc ebx
xchg esi, edx
rol ecx, 0x11
xor ecx, esi
or ebx, 0x9283df59
xchg esi, ecx
or esi, edx
or esi, ebx
rol edx, 0xe
dec ecx
xchg ebx, esi
xor ecx, edx
jmp 0x4964fe
push 0x8c78a6fa
shr ebx, 0x13
shl ecx, 0x18
shl edx, 0x16
mov edx, ebx
jmp 0x49639d
pop edi
xor ebx, 0x9324e975
xchg ebx, ecx
xor edx, esi
add ecx, esi
sub ecx, edx
ror edx, 0x16
or ebx, edx
shr ebx, 0xa
shr ebx, 1
sub esi, edx
or ebx, ecx
xchg esi, ebx
xchg ecx, edx
and esi, ebx
jmp 0x495a81
pop edi
sub edx, ecx
xor ecx, ebx
and edx, esi
rol ebx, 6
xor ecx, 0x93361103
not esi
mov ecx, 0x933696fd
xor ecx, esi
not edx
and ebx, 0x93375db3
add edx, 0x9337b096
add ecx, esi
not ecx
and ecx, edx
jmp 0x4949ec
pop edi
mov ebx, ecx
xchg edx, esi
or ecx, esi
sub ecx, esi
sub edx, 0x936f3eec
xchg ebx, edx
shl edx, 8
shr ecx, 9
jmp 0x494db2
pop edi
or ebx, ecx
add edx, esi
add ecx, esi
xchg esi, ebx
shr ecx, 5
xor ecx, esi
sub ebx, edx
ror ecx, 0x1f
sub edx, ebx
mov ecx, ebx
jmp 0x4953a6
push 0x8b778324
xchg ecx, ebx
and esi, ecx
xor edx, ecx
xchg ecx, esi
xchg esi, ebx
neg ebx
or esi, edx
or esi, edx
mov esi, ebx
xor ecx, esi
and esi, ecx
sub esi, edx
and ebx, edx
jmp 0x4963bd
call fcn.00495fee
xor ebx, 0x93aff0a7
xor ecx, esi
shr ecx, 0xc
xor edx, 0x93b0ad5b
xchg ebx, esi
xchg edx, ebx
neg edx
and ecx, edx
sub edx, ecx
not ecx
mov esi, ebx
mov ebx, 0x93b2e2a4
and edx, ecx
and esi, 0x93b371de
xor esi, ecx
jmp 0x4976b4
call fcn.00495fee
inc esi
xor ecx, 0x93b43e23
not ebx
and edx, esi
xchg ebx, edx
inc ebx
add ecx, esi
and edx, esi
add ebx, esi
sub ebx, edx
or ecx, edx
jmp 0x495321
mov edi, 0x2774562b
xchg ebx, ecx
and edx, 0x93cba1bd
mov ecx, edx
or esi, ebx
jmp 0x495c74
pop edi
mov ecx, ebx
xor ecx, esi
xor esi, 0x93d7ae34
add edx, esi
and esi, ecx
jmp 0x496a40
call edi
xchg esi, ecx
sub edx, esi
xchg ebx, edx
add esi, edx
inc esi
xchg esi, ebx
and esi, ebx
and esi, edx
jmp 0x495b82
push 0x8c78f87a
neg ecx
ror ecx, 0x1e
xchg ebx, edx
neg edx
xchg esi, ecx
add esi, ebx
ror edx, 0x10
dec ebx
not esi
shr ebx, 0x11
jmp 0x4972b5
mov edi, 0x2774562b
add edx, esi
mov ecx, edx
xor edx, ebx
xor edx, 0x949c90fe
and edx, ebx
neg ecx
bswap ecx
or esi, 0x949d90f3
neg ecx
inc edx
mov edx, esi
and ebx, edx
neg ebx
ror ebx, 0x13
jmp 0x4974f6
push 0x8b7a154c
ror ecx, 0x1b
add ebx, ecx
sub ebx, esi
xor ebx, edx
and ebx, 0x94bb1255
ror ecx, 0x11
mov esi, 0x94bba637
mov ecx, 0x94bbf9ce
jmp 0x494a42
push 0x8c77e6d9
mov ebx, esi
rol ebx, 0x15
jmp 0x496c02
mov edi, 0x2774562b
sub ebx, esi
mov esi, 0x94f8a430
neg edx
add esi, ebx
and ebx, esi
xor edx, esi
and esi, ecx
or edx, ecx
mov ecx, ebx
or esi, ebx
add ecx, 0x94faf797
jmp 0x495c3c
pop edi
xchg esi, edx
dec ecx
mov ebx, 0x9527687e
add ecx, esi
dec ecx
or edx, esi
nop
dec edx
xchg ebx, edx
bswap esi
xchg esi, ebx
jmp 0x495918
call fcn.00495fee
mov ecx, esi
dec ecx
and edx, ebx
add esi, ecx
and ebx, esi
sub ecx, esi
or ecx, edx
xchg esi, ecx
add ecx, ebx
xor edx, 0x95616e08
and ebx, ecx
jmp 0x495dce
push 0x8c75a763
add esi, ebx
or ecx, ebx
add ebx, ecx
sub ecx, 0x958b1041
and ebx, esi
sub ecx, 0x958b8abf
shl esi, 0xc
and ecx, ebx
xchg ebx, esi
and ecx, edx
shr ecx, 6
jmp 0x497155
push 0x8c783b3e
shr ebx, 0x1f
add esi, 0x95faf4b3
xor edx, 0x95fb3288
bswap ebx
mov esi, 0x95fbb846
or ecx, 0x95fbf614
add edx, ebx
jmp 0x4953f7
push 0x8b7672d0
xor esi, ecx
add edx, 0x960537df
not esi
not esi
jmp 0x496fa7
pop edi
shr ebx, 3
or esi, edx
mov ebx, 0x961b7063
not edx
not ebx
rol esi, 6
jmp 0x494671
jmp loc.0049aa1a
push 0x8b76db9f
and edx, esi
mov ecx, esi
sub esi, edx
add esi, edx
sub ebx, ecx
or ecx, esi
add ebx, edx
sub esi, ebx
sub edx, esi
nop
jmp 0x4975fb
push 0x8c75fb31
or ecx, edx
neg edx
sub ecx, edx
not edx
and esi, 0x966c4b78
xor edx, ebx
shr ecx, 0xa
or edx, ecx
nop
bswap edx
or esi, ebx
mov esi, edx
jmp 0x4975bc
pop edi
sub esi, ecx
mov esi, edx
mov esi, ebx
jmp 0x49585f
mov edi, 0x123b2f04
not ebx
xchg ebx, esi
xor edx, esi
jmp 0x496f34
call edi
or esi, ecx
mov edx, 0x9696e314
add edx, ecx
inc ebx
rol esi, 3
neg esi
jmp 0x4971f4
call fcn.00495fee
sub ecx, edx
add ebx, edx
or esi, ebx
dec edx
add ecx, edx
add ebx, ecx
xor edx, ecx
sub ecx, edx
not edx
jmp 0x49734e
mov edi, 0x123b2f04
xchg ecx, ebx
add ecx, ebx
neg ecx
and esi, ebx
sub ebx, 0x96ccff1f
xor ebx, esi
shl esi, 0x13
and edx, ecx
jmp 0x4968f2
push 0x8b7733e2
or ecx, ebx
neg ecx
sub esi, ebx
dec edx
or esi, edx
xor ecx, ebx
mov ebx, edx
xchg ecx, edx
and esi, ecx
jmp 0x495c18
call edi
and ecx, 0x96e1ef13
xor esi, edx
not ecx
mov ecx, 0x96e2d0d0
xor ebx, esi
sub edx, ecx
bswap edx
shl esi, 0x11
jmp 0x496dc9