Function at 0x401000
Capabilities:
Encrypt data using chaskey

Disassembly:
call sub.kernel32.dll_GetCurrentThread
cmp eax, 0xfffffefc
jne 0x401061
call sub.kernel32.dll_SetErrorMode
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.kernel32.dll_SetErrorMode
call main
call sub.kernel32.dll_SetErrorMode
call sub.kernel32.dll_SetErrorMode
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call main
ret
call sub.kernel32.dll_GetCurrentThread
cmp eax, 0xffffff0e
jne 0x4010db
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.kernel32.dll_SetErrorMode
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.kernel32.dll_SetErrorMode
call sub.kernel32.dll_SetErrorMode
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.kernel32.dll_SetErrorMode
call main
ret
call sub.kernel32.dll_GetCurrentThreadId
cmp eax, 0xffffff1e
jne 0x40113c
call main
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.kernel32.dll_SetErrorMode
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.kernel32.dll_SetErrorMode
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
ret
call sub.kernel32.dll_GetCurrentThreadId
cmp eax, 0xfffffed7
jne 0x4011cf
call main
call main
call main
call main
call sub.kernel32.dll_SetErrorMode
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.kernel32.dll_SetErrorMode
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call main
call main
call sub.kernel32.dll_SetErrorMode
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call main
call main
call main
ret
call sub.kernel32.dll_GetCurrentThread
cmp eax, 0xfffffee7
jne 0x401249
call main
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.kernel32.dll_SetErrorMode
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.kernel32.dll_SetErrorMode
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
call main
call sub.kernel32.dll_SetErrorMode
call main
call sub.ntdll.dll_NtQueryDefaultUILanguage
call sub.ntdll.dll_NtQueryDefaultUILanguage
call main
ret
jmp 0x478480
mov edx, 0x3f3e7f3b
jmp 0x479d51
mov ecx, 0x123b2f04
bswap edi
sub ebx, edi
shr edi, 8
not edx
or ebx, esi
xor ebx, 0x432854ee
and esi, ebx
or edx, ebx
dec edi
ror edi, 0xd
jmp 0x47a76b
pop ecx
mov edi, edx
xchg edi, esi
xchg edi, ebx
or ebx, esi
xor edx, 0x4332513c
jmp 0x478595
pop ecx
and edx, esi
add edx, ebx
mov esi, edi
not esi
mov ebx, esi
shr edx, 1
shl edx, 9
shl esi, 0x14
mov edx, ebx
jmp 0x47a75d
pop ecx
and ebx, esi
inc edi
and edi, edx
bswap edx
mov esi, ebx
xor edi, edx
mov edx, edi
jmp 0x478581
pop ecx
mov ebx, edx
mov ebx, 0x434e99e8
xor edx, edi
ror edi, 0x10
sub edx, ebx
and edx, 0x434f6e78
sub edi, edx
shl ebx, 4
sub esi, 0x4350109c
jmp 0x4795bb
push 0x3f4ba6d4
shl edi, 0x1b
or edi, 0x4356f591
or edx, esi
and esi, 0x43575c95
add edi, ebx
add esi, edx
sub edx, 0x4357f75c
sub esi, 0x4358362f
jmp 0x478c15
call ecx
not esi
xor ebx, esi
rol edx, 9
xchg edx, esi
mov edi, 0x43626702
sub edx, ebx
sub ebx, edx
xor esi, edi
or edx, ebx
mov ebx, edi
or ebx, edi
jmp 0x47acf5
push 0x3f47a2e4
mov esi, edi
dec edi
or edi, esi
not ebx
dec esi
shr edx, 0x1f
xor edx, 0x43651f6d
xor edx, esi
jmp 0x478526
push 0x3f471edf
shl esi, 0xb
nop
sub esi, edx
shr esi, 0xc
add edx, 0x43720110
ror esi, 0x1a
mov ebx, esi
sub edi, edx
neg ebx
xchg edi, edx
jmp 0x4793f4
call ecx
inc edi
sub ebx, esi
mov edx, edi
or edi, 0x43a49359
xchg edx, esi
jmp 0x47aa4a
mov ecx, 0x2774562b
or ebx, edi
add edx, edi
mov edx, 0x43ed6cac
xchg edx, esi
xchg esi, ebx
bswap edx
add esi, edi
rol ebx, 0x1c
xor ebx, edx
mov esi, 0x43eee406
inc edi
rol esi, 0xe
shl esi, 0x13
jmp 0x479cab
mov ecx, 0x123b2f04
dec ebx
inc ebx
sub ebx, 0x4403adfc
or edx, edi
or ebx, edx
sub edx, ebx
ror edx, 0xe
mov ebx, edx
shr ebx, 2
bswap edx
jmp 0x479bcf
push 0x3f4b4e42
add ebx, esi
sub ebx, 0x4407323b
sub edi, ebx
jmp 0x47acde
pop ecx
sub edx, edi
xchg edi, edx
or edx, ebx
add esi, ebx
xor esi, edi
xor ebx, 0x441dd49e
and edi, 0x441e092b
xor esi, 0x441e4221
or edi, esi
mov edx, 0x441eb3be
xchg edi, edx
sub edi, edx
ror edi, 0x18
add esi, 0x441f837d
xor esi, edi
jmp 0x47a4ed
push 0x3f49068f
mov ebx, edi
xor esi, edi
or edi, edx
and esi, 0x447ac822
mov edx, edi
add esi, ebx
sub edx, esi
dec esi
add esi, edi
or edi, ebx
mov edx, 0x447c3a01
not ebx
xor esi, ebx
xor edi, 0x447cd6dc
inc esi
jmp 0x47a57b
call ecx
xchg ebx, edi
or edi, 0x44a0b766
xor edx, ebx
dec edi
xchg ebx, esi
xor edi, esi
bswap edx
xchg ebx, edx
mov esi, edx
xchg ebx, edx
and ebx, edx
xchg edx, edi
or esi, edi
add edi, esi
and edx, esi
xor esi, 0x44a499e3
jmp 0x47947f
push 0x3f4378b4
xor edi, ebx
xor edi, esi
inc edi
and esi, edi
add ebx, esi
or esi, 0x44ab10c7
xor edx, edi
jmp 0x47a182
push 0x3f474ad1
or edx, ebx
or edi, esi
shl ebx, 7
add edx, ebx
mov edx, ebx
or edi, edx
rol ebx, 0x19
sub edi, edx
jmp 0x47a7c6
pop ecx
and edi, edx
add edx, edi
add esi, 0x44d15387
xchg edx, edi
neg ebx
add ebx, esi
shr edi, 3
and esi, 0x44d7c652
mov edi, edx
add edx, esi
sub edi, 0x44d90284
ror edx, 0x18
neg esi
neg ebx
jmp 0x47a8f2
push 0x3f453ae8
dec edi
sub ebx, edx
not esi
mov edi, esi
sub esi, edi
add edi, 0x4515caaf
add edx, esi
jmp 0x47996a
pop ecx
sub edx, ebx
sub ebx, 0x452472b6
shl ebx, 0x11
xchg esi, edx
or edx, edi
add edx, edi
xchg edx, ebx
and edx, ebx
ror esi, 6
jmp 0x478910
pop ecx
xchg edx, ebx
mov edi, ebx
or ebx, edx
sub esi, ebx
or esi, edx
and esi, edx
inc edi
or ebx, edx
jmp 0x47998f
push 0x3f4566b1
sub edx, esi
and ebx, 0x456969c6
mov ebx, esi
shr edx, 0x14
add esi, ebx
mov esi, ebx
mov edi, edx
xor esi, edx
xor edx, 0x456adacb
jmp 0x47a705
push 0x3f4a3f5e
add edi, edx
sub esi, edi
ror esi, 0x1b
and edi, 0x456bbcbf
sub edx, esi
sub edx, esi
jmp 0x47a7b1
mov ecx, 0x2774562b
xor esi, edi
and ebx, edx
not esi
not esi
or ebx, esi
add ebx, esi
jmp 0x47a15d
pop ecx
rol ebx, 0x1c
rol edi, 2
or esi, ebx
and esi, edi
add esi, edx
mov ebx, edx
shr edx, 0x1a
bswap edx
jmp 0x47a6b7
call fcn.0047aef7
and ebx, edi
sub esi, edi
mov edi, ebx
and esi, edx
bswap edx
xchg edx, ebx
and edi, esi
shr ebx, 0x1a
or ebx, esi
sub edx, esi
xor edx, ebx
xor edx, 0x459b7659
sub ebx, esi
not edx
or edx, 0x459c6d84
jmp 0x47ab6a
jmp loc.0047f3cc
pop ecx
xchg edi, esi
ror esi, 0x18
neg edi
inc ebx
jmp 0x478f45
push 0x3f42ef74
and edi, ebx
mov edx, edi
ror esi, 1
or esi, ebx
jmp 0x47a0fb
call fcn.0047aef7
not ebx
add edi, esi
mov esi, ebx
bswap edx
xor ebx, esi
add ebx, 0x4605e661
or edi, edx
jmp 0x479297
push 0x3f4327ac
or edi, esi
sub ebx, edx
shl edx, 0x1d
or edx, ebx
ror ebx, 5
sub edi, 0x4627ffd7
xor edx, ebx
sub ebx, edx
dec esi
rol edx, 0x13
jmp 0x47ad13
call fcn.0047aef7
xor edi, ebx
not ebx
and edx, esi
sub ebx, edi
or edi, esi
or ebx, edx
mov ebx, esi
add esi, edx
xchg esi, edi
ror edi, 0x1d
or edx, edi
xchg ebx, edx
xchg edx, esi
jmp 0x478874
push 0x3f43a6ef
add esi, 0x462ee87c
add edx, edi
mov ebx, edi
mov edi, ebx
xor esi, ebx
shl esi, 0xc
neg edi
xchg ebx, esi
shl edi, 0x10
jmp 0x47a9a5
pop ecx
add edi, ebx
sub ebx, edx
and ebx, edx
add edx, esi
dec edx
xchg edi, ebx
and edx, ebx
add ebx, edx
sub edx, edi
mov ebx, 0x468c8bad
jmp 0x478757
push 0x3f49338f
or ebx, esi
mov edi, 0x4697e828
or esi, edi
mov edi, 0x469852a7
xchg edx, ebx
mov edi, 0x4698c10e
jmp 0x4799f7
pop ecx
and edx, 0x46af0cd1
and edx, edi
or edx, esi
and esi, 0x46afb127
neg edx
jmp 0x47a873
push 0x3f459282
and edx, esi
mov edi, 0x46b34c37
add edi, 0x46b3806d
mov edi, 0x46b3b496
inc edi
shr ebx, 0x10
jmp 0x47a795
pop ecx
mov esi, 0x46b75ddc
nop
add edi, esi
jmp 0x4790c4
call fcn.0047aef7
xor ebx, 0x46b81e75
and esi, edx
add edi, ebx
bswap ebx
jmp 0x47a82c
push 0x3f45b8fd
add ebx, edx
sub edx, 0x46b9f585
not ebx
dec ebx
shl esi, 1
add edx, ebx
bswap edi
jmp 0x478da4
mov ecx, 0x123b2f04
shl esi, 0x18
mov ebx, edx
inc ebx
inc edi
xor edx, esi
sub esi, edi
jmp 0x479e9d
push 0x3f4776c4
mov edx, esi
add edx, 0x46bcdbf8
mov edx, edi
and edi, edx
xchg ebx, edx
inc ebx
sub edi, esi
bswap edi
sub edi, edx
dec edi
ror edx, 9
jmp 0x478895
call ecx
shr edx, 0x12
and edx, 0x46c3052f
rol edx, 0xe
or esi, ebx
dec ebx
and edi, esi
xor esi, edx
and edx, 0x46c44a64
inc ebx
and edi, esi
mov edi, ebx
jmp 0x4785ce
pop ecx
mov ebx, edx
add esi, ebx
jmp 0x47962d
push 0x3f4b2204
mov esi, ebx
add edx, edi
sub edx, 0x46d4d943
mov ebx, 0x46d5191c
xor esi, 0x46d54df3
add ebx, edi
neg ebx
xor edi, edx
and esi, edi
jmp 0x478de5
mov ecx, 0x123b2f04
or esi, 0x46e630ab
xchg esi, edx
and esi, ebx
xchg edi, ebx
sub ebx, esi
nop
sub edi, esi
add ebx, edx
shl ebx, 2
add edi, edx
mov ebx, edx
jmp 0x47abf9
pop ecx
bswap edx
neg edx
bswap esi
add edx, edi
mov edx, 0x46feb3f6
xor edi, edx
xor ebx, edx
jmp 0x479d43
call ecx
mov esi, edi
xchg ebx, edi
add edi, edx
xor ebx, 0x4718afc6
xor edx, esi
add ebx, 0x4719177b
shr ebx, 0x15
and edx, esi
and ebx, esi
mov ebx, 0x4719e129
jmp 0x479b77
call fcn.0047aef7
dec esi
add ebx, edx
jmp 0x478a09
push 0x3f4b7a75
ror edx, 0x18
sub edi, 0x4735f934
or ebx, edi
mov edi, ebx
jmp 0x4787d5
pop ecx
and edi, ebx
xchg edx, esi
neg ebx
ror edx, 0x16
jmp 0x479741
push 0x3f435286
or ebx, esi
and esi, ebx
or esi, 0x473924b2
and esi, ebx
xor edi, 0x47399aec
xchg ebx, esi
xchg ebx, edx
jmp 0x4792eb