Function at 0x401000
Capabilities:
Encrypt data using chaskey
Hash data using murmur3
Identify system language via api

Disassembly:
and edi, ecx
add ebx, ecx
call sub.user32.dll_GetCaretBlinkTime
xchg ecx, esi
mov ecx, edi
cmp eax, 0xffffff33
jne 0x40106e
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
ret
xchg edi, ecx
sub esi, ecx
ror edi, 0x10
xchg esi, ecx
call sub.kernel32.dll_GetCurrentProcess
bswap edi
cmp eax, 0xffffff09
jne 0x401116
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
ret
or esi, ebx
mov edi, ebx
shl ebx, 0xe
xor esi, edi
mov ebx, ecx
dec esi
xor edi, ebx
call sub.user32.dll_GetCaretBlinkTime
xchg ecx, ebx
shl edi, 0x1b
inc ecx
xchg esi, ecx
add edi, esi
cmp eax, 0xffffff0e
jne 0x4011cb
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
ret
neg edi
sub esi, ebx
bswap ecx
neg ebx
or esi, 0x8f3a5c47
add edi, ebx
sub esi, ecx
mov esi, ebx
call sub.kernel32.dll_GetUserDefaultLangID
add esi, 0x8f3b9e56
or ecx, 0x8f3bdc2d
cmp eax, 0xffffff19
jne 0x40126f
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
call sub.advapi32.dll_IsTextUnicode
ret
jmp 0x4a63b9
xor edi, ecx
or esi, 0x906ca155
xor ebx, edi
jmp 0x4a65b3
push 0x907524a7
and ebx, edi
neg edx
add edx, esi
jmp 0x4a8483
pop ecx
and ebx, edx
xor esi, edx
xor ebx, edi
or edi, ebx
add edi, edx
xor esi, ebx
mov ebx, edx
bswap ebx
xor edx, 0x94084f9e
inc ebx
sub esi, 0x9408c260
jmp 0x4a7cfa
push 0x90757091
or edx, edi
sub ebx, 0x94176485
nop
xchg ebx, edx
jmp 0x4a8a9e
push 0x90707a5b
xchg esi, edx
add edx, edi
add edx, edi
xor edx, esi
mov ebx, edi
add ebx, edi
xor esi, 0x941ed43e
shr ebx, 1
inc edi
jmp 0x4a92c0
call ecx
not esi
mov edx, 0x9426761c
mov edx, 0x9426af19
or edx, edi
inc esi
add edi, edx
add edx, 0x94279966
jmp 0x4a891d
pop ecx
shr edi, 0xc
or edi, esi
sub ebx, edx
add ebx, 0x942a93ed
jmp 0x4a7557
push 0x9072d855
and ebx, edx
add esi, edi
sub edi, edx
xor edx, 0x94488158
sub ebx, edx
sub ebx, 0x9448f266
and ebx, esi
bswap esi
xor ebx, edx
and esi, 0x9449e00e
inc esi
jmp 0x4a7a8a
call fcn.004a9025
xor ebx, edi
add esi, ebx
jmp 0x4a80ad
push 0x9076d000
or ebx, esi
mov ebx, 0x94623a27
inc edi
or esi, 0x9462ae5e
not ebx
xor edx, 0x94632cc9
shl ebx, 3
xchg ebx, edx
xchg esi, edx
sub edi, edx
jmp 0x4a9771
pop ecx
rol edx, 6
xchg edx, ebx
sub esi, edi
or ebx, 0x946a8b65
mov esi, ebx
or edi, esi
xchg esi, edx
add edi, esi
ror ebx, 5
jmp 0x4a6ac6
pop ecx
mov esi, ebx
mov edi, 0x94750088
and edx, ebx
xchg ebx, esi
shr ebx, 0xb
sub edi, edx
jmp 0x4a935c
push 0x9070fa55
ror edi, 0xa
and esi, 0x94872494
bswap ebx
add edx, ebx
and ebx, edi
add ebx, edx
or edi, ebx
inc esi
sub esi, ebx
rol esi, 0xd
add edi, ebx
jmp 0x4a8863
pop ecx
and edi, ebx
mov esi, edi
or edi, edx
nop
and edx, edi
xor ebx, edx
sub esi, edx
rol ebx, 0xf
xchg esi, edi
shl ebx, 0x16
jmp 0x4a69d9
push 0x907746b0
add edi, ebx
sub edx, 0x95322f32
or esi, edi
mov edi, 0x9533940b
neg ebx
add ebx, 0x9534b248
sub edx, edi
jmp 0x4a94a2
pop ecx
mov ebx, edi
xor edx, edi
xor edi, edx
shl ebx, 0xc
bswap edx
jmp 0x4a7840
push 0x9072b3a4
xor ebx, edi
mov ebx, esi
xchg edi, ebx
mov edx, edi
mov edi, 0x958a3a83
add esi, ebx
and edx, ebx
xchg edx, ebx
or ebx, 0x958e023e
xor edi, esi
jmp 0x4a686f
push 0x9074112b
shl edx, 0x1a
or esi, edi
bswap ebx
and edi, edx
neg ebx
sub edx, edi
mov edx, ebx
jmp 0x4a996e
pop ecx
sub edi, 0x95c43bfc
and esi, edi
inc esi
and esi, edx
mov edi, ebx
add edx, 0x95c68a26
not edx
inc edi
shr edx, 0x1c
jmp 0x4a7d21
push 0x90728cf5
or esi, 0x95f99495
mov ebx, edi
mov ebx, 0x95fa9035
add edx, esi
xchg esi, edx
xchg edi, edx
add edi, edx
add edx, edi
add edi, esi
jmp 0x4a7568
mov ecx, 0x43370267
dec edi
add esi, edx
add edi, esi
not edx
mov esi, edx
or ebx, esi
mov esi, edi
bswap esi
sub edx, edi
jmp 0x4a68cd
push 0x9073ea30
xor ebx, edi
add ebx, 0x9678fd11
xchg esi, edx
add esi, edi
or edx, esi
xor esi, edi
or esi, ebx
add esi, 0x967c0700
bswap esi
xor ebx, 0x967d193f
ror edi, 0xc
jmp 0x4a75f0
pop ecx
xchg edi, edx
xor edi, ebx
shr ebx, 0x14
mov edx, 0x96b21136
sub esi, edx
add ebx, esi
not esi
or esi, 0x96b424d7
add edi, 0x96b4aa94
add ebx, esi
inc edx
jmp 0x4a6681
pop ecx
add esi, 0x96b64077
or edx, 0x96b6bad1
mov ebx, 0x96b74b32
mov esi, edx
inc esi
shl esi, 5
sub esi, edi
add ebx, edx
or esi, edi
sub esi, ebx
mov ebx, esi
jmp 0x4a7b79
mov ecx, 0x43370267
add edx, edi
xor edx, 0x96ff6974
neg edx
add ebx, edx
mov edx, ebx
add esi, ebx
add edi, edx
ror ebx, 6
dec edx
xchg edx, esi
sub esi, edi
not edi
jmp 0x4a8ac7
call ecx
and edi, 0x9711bde9
mov ebx, edx
or edi, esi
xchg ebx, esi
or edi, ebx
add ebx, esi
xchg ebx, edi
jmp 0x4a8103
pop ecx
xchg edx, edi
shr esi, 4
neg esi
or ebx, esi
or ebx, edi
or esi, ebx
sub esi, edi
mov edi, esi
mov esi, 0x9719d6e4
mov edx, ebx
nop
jmp 0x4a76f1
mov ecx, 0x43370267
or edi, esi
add edi, edx
add esi, edi
mov ebx, 0x973ebc29
and edi, esi
or edx, edi
mov ebx, edx
and ebx, edx
jmp 0x4a8bbe
push 0x90754ab5
and esi, 0x9759b029
and ebx, 0x9759ea81
xchg esi, edx
xchg edi, ebx
inc edi
xchg esi, ebx
add ebx, 0x975b0627
sub edx, esi
sub esi, 0x975b821e
add esi, ebx
jmp 0x4a653c
call ecx
add esi, ebx
xchg edx, esi
or ebx, 0x976898f2
add ebx, edi
and edx, 0x97691176
or edi, 0x97694be9
mov edi, ebx
xor edi, esi
jmp 0x4a6a31
pop ecx
mov esi, edx
and esi, edi
and esi, edx
sub ebx, 0x9770666e
xor edx, ebx
sub esi, 0x9770d88d
jmp 0x4a8a58
push 0x9070d407
xchg edi, esi
and ebx, esi
and esi, edx
and ebx, esi
and ebx, edi
bswap ebx
xchg ebx, edx
sub esi, edi
and esi, edi
add ebx, esi
shr edx, 9
mov edi, esi
jmp 0x4a6bc7
push 0x907120c4
xor edi, esi
mov esi, 0x9798e533
add edi, edx
and edx, ebx
xchg edi, esi
jmp 0x4a7f8d
pop ecx
or edx, esi
neg edx
sub edx, 0x97aac3aa
xor edi, esi
sub esi, 0x97ab3c28
jmp 0x4a6437
pop ecx
add ebx, esi
xor edx, edi
xor ebx, esi
jmp 0x4a93d0
mov ecx, 0x183c2e20
shr ebx, 4
add esi, ebx
or edi, edx
xor edi, esi
xor edi, 0x97caa8fe
add edi, 0x97cae13c
rol edi, 4
and edx, edi
shl ebx, 0x1f
mov ebx, edi
jmp 0x4a8fc5
call fcn.004a9025
inc edx
sub edi, 0x97cc459a
inc edi
xchg esi, edx
xor ebx, edi
or edx, edi
jmp 0x4a6644
jmp loc.004ad3e2
push 0x90771f73
and edi, 0x97e5d8a3
and edi, 0x97e6129f
shr ebx, 0x12
sub esi, ebx
sub ebx, edx
jmp 0x4a732e
call fcn.004a9025
and edi, 0x981c6000
rol esi, 0x1a
shr edx, 0x1b
not edx
sub esi, edi
xor edx, 0x981d80f5
neg edi
sub edi, esi
add esi, edx
xchg edx, edi
ror ebx, 0x16
shl ebx, 0xf
ror edx, 6
jmp 0x4a93ab
push 0x9070ab34
shr edx, 4
mov edi, edx
and edi, esi
xchg edx, edi
neg esi
xor edi, esi
add esi, edi
or ebx, esi
sub edi, edx
sub edi, edx
and ebx, edi
sub edx, edi
jmp 0x4a8629
push 0x9074fd88
xor ebx, edx
mov ebx, edi
or edx, edi
xchg edi, ebx
mov edx, 0x9859b3c8
mov edi, esi
rol edi, 0xe
not edi
sub ebx, edi
xchg esi, edi
jmp 0x4a63e7
call ecx
inc ebx
or ebx, edx
add edx, 0x985e549f
or esi, ebx
ror edi, 6
xchg edx, esi
nop
or esi, 0x985f7d83
xchg edx, ebx
inc esi
sub ebx, edx
xchg edi, esi
jmp 0x4a85ee
pop ecx
xchg edi, ebx
xchg edx, ebx
shr edx, 0xd
add edi, 0x98615f95
neg edx
jmp 0x4a71b7
push 0x90776ca1
shr edx, 0x1e
add edi, ebx
xor edi, 0x986e5dfa
not esi
inc ebx
inc esi
and edi, esi
shl esi, 9
xchg edi, esi
jmp 0x4a832a
call fcn.004a9025
mov edx, ebx
sub edi, edx
mov esi, edi
ror edx, 0x11
add edx, esi
dec edx
mov ebx, edi
mov esi, edx
add ebx, edx
bswap edi
and edi, ebx
or edi, ebx
jmp 0x4a8573
push 0x9076f76b
neg ebx
or edi, 0x98a2c2a4
add edi, 0x98a2fb32
bswap esi
jmp 0x4a8c64
mov ecx, 0x43370267
sub esi, edi
sub esi, ebx
add edx, 0x98cd59cb
not ebx
dec edx
dec ebx
xchg esi, edi
bswap edi
not edx
shl ebx, 0x1e
jmp 0x4a973a