Function at 0x46aa5a
Capabilities:
Encrypt data using chaskey
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x154
xchg ecx, ebx
sub ecx, edx
sub ebx, 0xb0a53ba3
xor ebx, 0xb0a5560d
and edi, ebx
add edx, ebx
sub edx, ebx
add ebx, ecx
jmp 0x46abe6
add esi, dword [esp + 0x108]
sub ebx, 0xb0a5e4cb
inc ebx
sub edi, ebx
add edx, ebx
xchg edx, ebx
add edi, 0xb0a6685b
mov ebx, edx
add edx, 0xb0a6a049
jmp 0x46ab1a
mov dword [esp + 0xdc], esi
and edx, ebx
add ebx, 0xb0ab101d
add ebx, edx
add ebx, 0xb0ab44cd
mov edi, edx
xor edx, ecx
xor ecx, ebx
and ebx, 0xb0abb0bb
jmp 0x46de80
mov dword [esp + 0x24], 0
or ecx, 0xb0b1292f
not edx
xor edi, 0xb0b16533
or ebx, edx
ror ecx, 0xe
sub edi, ebx
or ecx, edi
mov ecx, edi
mov edx, ecx
xor edi, 0xb0b25fed
jmp 0x46b0de
mov esi, dword [esi]
xor ebx, 0xb0b3391b
dec edi
sub ebx, ecx
not edx
xchg edx, ecx
or ecx, 0xb0b3c4c7
add ebx, edi
add edx, ebx
xchg ecx, ebx
sub edx, ebx
ror ecx, 0x15
or edx, edi
jmp 0x46d791
mov esi, dword [esp + 0x24]
shl ebx, 0xc
or ecx, edi
inc edx
rol ecx, 0x1d
jmp 0x46cf8a
add dword [esp + 0xdc], 0x78
and edx, ebx
add edi, 0xb0daa56b
mov edx, edi
not ebx
sub edx, edi
xor edi, edx
jmp 0x46b005
mov dword [esp + 0xdc], esi
not ebx
xchg edi, ebx
or ecx, edx
xor edi, ebx
and edi, edx
and ecx, edx
sub ecx, ebx
sub ebx, edi
shr ecx, 4
or ebx, ecx
add edi, edx
add edx, 0xb0dc61b1
jmp 0x46cc06
mov esi, dword [esp + 0x108]
xchg ecx, edi
add edx, 0xb0de3df9
sub edi, ebx
xor ecx, 0xb0de7889
shr edi, 7
xor edx, 0xb0deb053
jmp 0x46de16
mov dword [esp + 0x48], 0
xor edx, 0xb0e488c5
or edx, ebx
mov ebx, ecx
xor edi, 0xb0e4d6a9
or edx, ecx
not ecx
add edx, ebx
add edi, ecx
or edi, ebx
sub edi, ebx
add edi, ebx
and ecx, ebx
jmp 0x46b573
mov esi, dword [esi]
add edx, 0xb0e6bb57
xchg ebx, ecx
xchg ebx, edx
shr edi, 0xd
and ecx, 0xb0e72e55
xor ecx, edi
or ebx, 0xb0e765f3
ror edi, 0x15
jmp 0x46aa7d
mov esi, dword [esi]
or edi, edx
neg ecx
or ecx, edx
add ebx, edi
sub edx, ecx
add ecx, ebx
add edi, ecx
rol edi, 0xd
xor ebx, edx
xchg edx, ecx
jmp 0x46d4bf
mov dword [esp + 0x108], esi
sub edx, ebx
mov ecx, 0xb0f09037
shl ecx, 0xb
sub ebx, 0xb0f0c87f
ror edx, 8
or edi, ebx
jmp 0x46ddc9
mov esi, dword [esi]
xor edi, 0xb0f4a1ab
not edx
mov ebx, ecx
mov ebx, edx
shl ecx, 0x15
not edi
jmp 0x46c72b
movzx esi, word [esi]
rol ebx, 0xb
sub ecx, edx
sub ecx, ebx
rol edx, 2
shl ecx, 0xb
and ecx, edi
bswap edx
mov ebx, 0xb0fe8453
xor ebx, 0xb0fea5d7
dec edx
xor edi, ebx
bswap edx
ror edx, 0x10
sub ebx, 0xb0ff3147
jmp 0x46d73a
jne 0x46d32e
xor ebx, edi
not ebx
and edx, ecx
shr edi, 0x1b
jmp 0x46de42
mov dword [esp + 0x108], 0
sub edx, 0xb10916b1
bswap edx
and ecx, edi
sub ecx, edx
nop
inc ebx
shr edx, 0x15
xor ecx, ebx
rol ecx, 0x14
sub ecx, edi
and edx, ebx
dec edx
jmp 0x46b751
mov esi, dword fs:[esi]
or edi, 0xb10d0f61
ror edx, 8
rol ebx, 0x11
or ebx, ecx
sub ebx, 0xb10d7d55
bswap ebx
rol edi, 0x15
sub edx, ecx
and edx, edi
xchg edi, edx
or edi, ecx
xchg ebx, ecx
or ecx, edi
sub ecx, edi
jmp 0x46d132
mov esi, dword [esi]
add ebx, edi
sub edx, edi
ror edi, 2
shr edx, 6
bswap edi
mov ecx, 0xb113ec5f
ror ecx, 0x15
shr ebx, 0x1e
and edx, edi
and ebx, edx
neg edx
xchg edi, edx
sub ecx, 0xb114b0ef
nop
jmp 0x46dbc4
mov dword [esp + 0xdc], 0
add edx, ebx
xor ebx, ecx
add edi, 0xb119740f
xor ecx, ebx
xchg ebx, edi
and ecx, edx
xor edi, 0xb119e5c7
mov ecx, edi
or ebx, 0xb11a19eb
and edx, ebx
add edi, edx
xor ecx, edi
jmp 0x46d06a
mov esi, dword [esp + 0xdc]
and ebx, edi
sub ebx, edx
sub ebx, ecx
add edi, ecx
and ebx, ecx
xor edi, ebx
bswap edx
neg ebx
rol ebx, 2
xor edi, ebx
jmp 0x46b6b0
xor eax, eax
add ebx, ecx
xor edx, 0xb163e177
dec ebx
and edx, edi
or ebx, edi
mov edx, 0xb1645187
jmp 0x46d32e
add esp, 0x154
xchg edi, ecx
or edx, ecx
add ebx, edi
shl ebx, 6
mov edx, ebx
and ecx, edi
xor edi, edx
add ebx, ecx
xor ecx, 0xb18e5e19
xchg edi, ecx
or edx, ecx
and edx, ebx
sub edi, edx
xor edi, edx
sub edi, 0xb18efdf7
add edi, 0xb18f1851
jmp 0x46dc76
mov dword [esp + 0x48], esi
sub ebx, edi
xor ebx, edi
xchg edx, ebx
mov ebx, edx
or ebx, edx
or edi, edx
add edi, ebx
mov edx, edi
jmp 0x46e189
mov esi, dword [esi]
sub ebx, ecx
dec ecx
ror ebx, 0x1f
shl edi, 0x1e
mov edi, ecx
add ebx, 0xb197d0ed
jmp 0x46cda4
add esi, 0x3c
xchg edx, ebx
mov ebx, edx
or ebx, ecx
and ecx, edi
sub ecx, edx
sub ebx, ecx
dec ecx
sub edi, 0xb199ccdd
jmp 0x46cb9b
add esi, dword [esp + 0x108]
or edi, ebx
sub edx, ebx
add ecx, ebx
xor edi, ecx
inc ebx
xor ebx, ecx
or ebx, edx
neg ecx
xchg edi, ebx
mov ebx, edi
jmp 0x46dd3e
mov dword [esp + 0x24], eax
or ecx, ebx
sub ebx, edx
add edi, edx
mov edi, ecx
or edi, ebx
and ecx, 0xb1aaefb1
or ecx, edx
add ebx, 0xb1ab248d
xor edi, ecx
xchg ecx, ebx
jmp 0x46c9f9
inc dword [esp + 0x24]
xchg edx, ecx
mov ecx, edx
or edx, ecx
ror ecx, 0x1c
and edx, 0xb1b0ff6f
shr edi, 0xd
sub ecx, ebx
xor ecx, ebx
rol ecx, 4
shl ebx, 0x13
xchg edi, edx
xor ebx, edi
jmp 0x46de5c
sub dword [esp + 0xdc], 8
shr ebx, 0x1d
sub ebx, 0xb1b688c5
shl ebx, 0x1d
and ecx, 0xb1b6be09
mov ecx, ebx
mov ebx, edx
jmp 0x46e3dd
mov esi, dword [esp + 0x48]
and edi, 0xb1bd265b
or edx, ebx
and edi, edx
sub edi, ecx
bswap edi
or edx, 0xb1bdb085
xor edx, 0xb1bdcb15
and edx, 0xb1bde7c9
jmp 0x46cb06
mov esi, dword [esi]
or ecx, ebx
or edi, ebx
mov ecx, ebx
xchg ebx, edx
mov edx, ebx
shr ecx, 0x1a
bswap ebx
and ebx, ecx
rol ecx, 0x1a
add ecx, 0xb1bfa635
xor edi, edx
mov edx, 0xb1bfdc5f
xor edi, ebx
and edx, edi
jmp 0x46d509
mov esi, dword [esi]
shl ecx, 0x17
and edx, 0xb1c39703
xchg ebx, ecx
xchg edi, ecx
add edx, ebx
sub edi, ebx
xor edi, ecx
and edi, ebx
dec edx
ror ecx, 0x1c
jmp 0x46d4d0
mov esi, dword [esp + 0x108]
mov edi, 0xb1c74413
add ecx, ebx
xchg ebx, ecx
add ecx, edx
shl edx, 0x19
xchg ecx, edi
jmp 0x46dcae
cmp eax, dword [esp + 0x100]
jmp 0x46da45
add dword [esp + 0xdc], eax
sub edi, edx
xor edi, edx
and edi, ebx
and edx, 0xb1cf4979
xchg edi, ecx
not ecx
shl edi, 5
xor ebx, ecx
sub edi, edx
xchg ecx, ebx
jmp 0x46b93d
add esi, 0xc
add edx, ecx
add edi, edx
not edi
inc edx
xor ebx, edi
sub edi, ecx
xor edi, ecx
sub ebx, edi
jmp 0x46d34e
mul esi
sub edi, edx
add ecx, edi
sub ecx, edx
rol edi, 0x11
jmp 0x46c886
rol eax, 8
xchg ecx, edx
mov edx, ecx
sub edi, ecx
sub edx, ebx
jmp 0x46d8c6
mov esi, 0x30
xor edi, 0xb1eaeddd
or ecx, edi
and edx, ebx
bswap edi
jmp 0x46b5e6
mov dword [esp + 0x100], esi
or ecx, edi
xor ecx, edx
xor ecx, ebx
dec edx
rol ebx, 0x1e
bswap edi
ror ebx, 9
mov ebx, edi
sub edx, ecx
add ebx, ecx
sub ecx, edx
xchg edi, ecx
jmp 0x46cfd0
add esi, 0xc
and edi, ecx
rol edx, 0x1f
sub edx, ebx
and ecx, edx
and edx, edi
dec ecx
sub edi, 0xb1f6f573
sub ebx, edi
xchg edi, edx
mov edx, edi
mov edx, ebx
mov ecx, edx
not edx
sub ecx, ebx
jmp 0x46c638
xor al, byte [esi]
or ebx, edi
or edx, edi
sub edx, ebx
sub ebx, edi
shl edi, 0x13
or edi, 0xb207f315
and edx, ebx
xchg ebx, ecx
bswap edi
xchg ecx, edi
jmp 0x46cf9a
mov esi, dword [esi]
bswap ecx
ror ecx, 0x19
and ecx, 0xb208bf51
or ecx, edx
and edi, ebx
mov ebx, edx
bswap edi
add ebx, edi
and edx, ecx
and edi, edx
rol edx, 7
mov ebx, ecx
add ebx, 0xb209c687
shl ecx, 0x10
jmp 0x46b153
mov esi, dword [esp + 0xdc]
sub ebx, edi
or edx, 0xb20a1f13
ror edx, 0x1e
sub edx, ecx
xor edx, ecx
ror ecx, 0x17
xor edi, ebx
add ecx, edx
shl edx, 0x12
mov ecx, edi
mov edx, ebx
sub edi, edx
sub edi, ecx
xor edi, ecx
jmp 0x46b303
push esi
sub ecx, edx
xor ebx, edx
inc edi
mov edx, edi
sub ebx, ecx
shl ecx, 0xb
and ebx, edi
mov edi, edx
jmp 0x46bfd3
cmp byte [esi], 0
jmp 0x46b4b6
mov esi, dword [esi]
and ecx, edi
inc edx
add edx, edi
mov edx, ecx
xor ecx, ebx
dec edx
jmp 0x46dc31
mov dword [esp + 0xdc], esi
or ebx, 0xb214e455
or edx, ecx
add edi, 0xb2151957
and edi, 0xb215340b
not ebx
xchg edi, ebx
and edi, ebx
dec edx
inc ebx
not edx
inc ecx
xchg ebx, edx
or ebx, 0xb2163089
sub ebx, 0xb2164b73
jmp 0x46af8f
add esi, dword [esp + 0x108]
xor edx, ebx
or edx, ecx
xor edi, 0xb216a40d
and ebx, 0xb216bf1b
sub edi, ebx
xor edi, ebx
and edi, ebx
or ecx, ebx
sub ebx, edx
not edi
sub ecx, edx
mov edi, ecx
jmp 0x46d3eb
mov eax, 4
neg edi
or ecx, edx
and edx, edi
xchg edi, ebx
mov ebx, edi
add edx, 0xb2278fff
shl edi, 0x1f
or edi, 0xb227c69f
jmp 0x46b41d
mul esi
xor ebx, edi
dec ecx
xor ecx, edx
rol edx, 0x17
and ecx, edi
xor edi, edx
add ecx, 0xb2288f61
shl edx, 0x1f
jmp 0x46cd05
add esi, dword [esp + 0x108]
xor edx, ecx
or edx, edi
and ebx, 0xb22bd959
dec ecx
ror ebx, 0x1d
and ebx, 0xb22c2c65
dec ecx
sub ecx, edx
mov ecx, edi
mov ecx, ebx
mov ebx, edx
xchg edx, ecx
mov ecx, edx
sub edi, ebx
jmp 0x46c589
inc esi
and ebx, edi
and edx, ebx
and edi, ecx
or ecx, edx
and edx, ecx
sub ebx, ecx
xchg ebx, edx
mov ebx, ecx
inc ebx
not edx
and edx, edi
or ebx, ecx
jmp 0x46d481
mov esi, dword [esi]
add ebx, ecx
mov edi, ecx
or ecx, 0xb270bb4b
xor ecx, ebx
or ebx, edx
xchg ecx, edx
jmp 0x46b26e
jne 0x46c943
and edx, 0xb2712d7b
add edi, ecx
add edi, edx
shr edx, 0x1a
or edx, 0xb2719ac3
xor ecx, edx
xchg edx, ecx
or ebx, edx
jmp 0x46dbee
add esi, dword [esp + 0x108]
and ebx, edi
ror edi, 0xe
or edi, ecx
add edx, edi
xor ebx, edi
dec ecx
and edx, ebx
shr ecx, 5
mov edx, ecx
or edi, ecx
mov ecx, edx
sub edi, ebx
and edi, ebx
rol ecx, 7
jmp 0x46c50a
add dword [esp + 0xdc], 4
mov edi, ebx
sub ebx, 0xb27f08db
add ecx, edi
shl edi, 0x13
neg edx
mov ecx, ebx
or edx, ebx
add edx, 0xb27fa7ad
shl edx, 6
or edi, ecx
jmp 0x46e38c
add esi, 0x18
and edi, edx
or edx, ebx
and edi, edx
sub edi, ecx
xor edi, ecx
add ecx, edi
and edi, ecx
not edx
add ecx, edi
sub edi, edx
sub ecx, edx
sub ebx, ecx
jmp 0x46da2e
ret
add dword [esp + 0xdc], esi
and edx, 0xb28525dd
xchg ecx, edx
mov edx, ecx
sub ecx, 0xb2857445
and edx, ebx
add edx, edi
jmp 0x46e275
mov dword [esp + 0x48], esi
and ecx, 0xb2895b61
xchg ebx, edx
not ecx
sub ebx, edi
or edi, ecx
add edx, edi
jmp 0x46c943
mov esi, dword [esp + 0x108]
sub edi, ecx
and edi, edx
and ecx, edx
nop
mov edx, 0xb28df751
xor edi, 0xb28e13bd
mov ecx, edi
and ecx, edx
and edi, ebx
sub edx, edi
sub edx, ecx
add ebx, edx
xor edx, edi
xor edx, ecx
jmp 0x46c671
add esi, dword [esp + 0xdc]
xor ecx, edi
xchg edi, edx
or edx, 0xb2908963
xchg edx, edi
bswap edi
mov edx, edi
sub edx, 0xb290f505
add edx, ecx
add edx, ebx
or ebx, 0xb29147b1
jmp 0x46e1f8
pop esi
not ecx
and edi, ecx
xchg edi, ecx
xor ebx, ecx
sub edi, edx
inc edx
rol ecx, 0xc
sub ecx, edi
xor ecx, edi
add ebx, ecx
jmp 0x46ccb1
add dword [esp + 0x48], 4
sub edi, edx
inc edx
sub ebx, edx
xchg ebx, edx
sub edx, edi
sub edx, ecx
xor ecx, edx
xor ecx, ebx
sub edx, edi
sub ecx, edx
xchg ebx, edi
or edi, edx
jmp 0x46cac9
mov esi, dword [esp + 0x48]
sub edi, 0xb293d109
add ebx, 0xb293ec27
sub edi, ebx
and edi, ecx
shr ecx, 0x1a
mov edi, edx
xor ecx, 0xb294754d
mov ebx, ecx
jmp 0x46e485
mov eax, 2
not ecx
inc ebx
mov ecx, 0xb2ae2ec1
xor edx, 0xb2ae492d
nop
add ecx, 0xb2ae8635
jmp 0x46af29
mov esi, dword [esi]
rol ebx, 0x15
xor edi, ebx
xchg ecx, edi
bswap edx
jmp 0x46afac
add dword [esp + 0xdc], 0x20
and ebx, ecx
or ecx, ebx
sub ecx, edi
xchg ebx, ecx
sub ebx, ecx
not ecx
xchg ecx, edx
sub ecx, ebx
jmp 0x46d37c
mov esi, dword [esp + 0xdc]
and edx, 0xb2c2415b
or edi, 0xb2c26b37
xchg ebx, ecx
xchg edi, ecx
add ebx, edx
xor ecx, edi
xor edi, 0xb2c33ab9
or edi, ecx
add edx, 0xb2c381cd
add ecx, edx
jmp 0x46ac29
mov esi, dword [esp + 0xdc]
sub edx, edi
mov edx, 0xb2c547c7
sub ecx, 0xb2c57297
xchg edx, ebx
and edx, ebx
add ebx, edi
and edx, 0xb2c61e2f
mov ecx, 0xb2c64315
jmp 0x46b12e
add esi, dword [esp + 0x24]
or edi, edx
neg ecx
or ebx, edx
or edi, edx
add edx, ebx
shr ebx, 0x19
ror edx, 0x13
sub edi, ecx
inc ebx
shr edi, 1
inc ecx
rol ebx, 4
sub ecx, edx
xchg ebx, edi
or edi, edx
add edi, ebx
jmp 0x46d717