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

Disassembly:
mov ebx, dword [esp + 0x88]
xchg edi, edx
not ecx
and edi, ecx
not edx
add edi, edx
xor edi, ecx
sub edx, ecx
or ecx, edi
sub edx, edi
inc edx
add edx, ecx
jmp 0x4780fe
add ebx, 0xc
mov edx, ecx
xchg edi, edx
sub edx, 0x2fc3322b
mov ecx, edi
sub edx, 0x2fc3a025
mov edi, ecx
ror edi, 0x10
or ecx, 0x2fc4559c
sub esi, 0x2fc48c7e
xchg edi, ecx
jmp 0x47744f
add ebx, dword [esp + 0x88]
add edi, ecx
bswap esi
sub edx, 0x2fc58f04
dec ecx
or edx, edi
xchg edx, ecx
and edx, esi
xchg esi, edx
jmp 0x47863a
mov ebx, dword [ebx]
bswap esi
rol edi, 1
shr edi, 0x1e
sub esi, 0x2ffd9407
or esi, edx
sub edi, edx
add edx, ecx
dec esi
or edi, ecx
jmp 0x477f77
mov ebx, dword [ebx]
xor edx, edi
add esi, ecx
mov esi, ecx
mov edi, ecx
xchg edx, ecx
inc esi
jmp 0x4766ec
mov eax, 4
sub edx, esi
mov ecx, 0x301a1162
mov ecx, 0x301a5f77
jmp 0x47864c
add dword [esp + 0x60], 0x20
and esi, edx
sub ecx, edi
and ecx, edi
shr edx, 0x15
add edi, ecx
mov ecx, 0x301bea30
or edi, 0x301d411c
jmp 0x4781e4
sub dword [esp + 0x60], 8
or edi, esi
or esi, ecx
and edx, edi
rol esi, 7
and edi, 0x3032dcff
xchg esi, edx
xchg edx, esi
bswap ecx
or edi, ecx
and edi, ecx
and ecx, edx
ror edi, 1
or edi, edx
jmp 0x4771d7
mul ebx
and ecx, edx
inc edx
sub esi, 0x3039aeeb
add edi, esi
shr ecx, 0x16
xor ecx, 0x303a6378
xchg ecx, edi
and esi, ecx
jmp 0x4784e8
mov ebx, dword [ebx]
sub esi, edi
mov esi, edx
xor ecx, edi
mov ecx, edx
and edi, esi
and esi, 0x303c614d
mov edx, esi
or ecx, esi
add edi, 0x303d242a
mov edx, edi
sub edx, esi
jmp 0x4778ab
mov ebx, dword [ebx]
and edx, 0x30407502
xchg edi, ecx
and edi, edx
mov ecx, esi
rol edi, 0xc
ror edx, 8
add ecx, 0x3041f025
or edi, 0x30422d68
xchg esi, edx
add esi, ecx
xchg esi, ecx
neg edx
jmp 0x4776ca
mov dword [esp + 0x1c], 0
or edi, edx
inc edi
or esi, edi
sub edx, ecx
sub ecx, 0x304c082f
xor edi, ecx
sub ecx, edx
dec esi
rol esi, 4
add edx, esi
jmp 0x475da0
mov dword [esp + 0x1c], ebx
or edx, 0x3051a2f7
inc edx
or ecx, edx
add edx, 0x3052b2b2
and edi, esi
ror esi, 5
sub esi, 0x30536e76
sub ecx, edi
xchg esi, ecx
jmp 0x47639c
inc dword [esp + 0x44]
inc edi
sub edx, ecx
or ecx, esi
add esi, edx
mov ecx, 0x305aff35
add ecx, esi
mov esi, 0x305b87ae
and esi, edx
xchg esi, ecx
sub ecx, esi
xchg ecx, edi
or ecx, edx
jmp 0x478374
mov dword [esp + 0x88], ebx
xchg esi, edx
and esi, ecx
nop
and ecx, edx
mov edi, ecx
and esi, ecx
or esi, edx
shr esi, 0x1e
not edi
mov edi, edx
xchg esi, edi
and ecx, edi
jmp 0x477bc6
mov dword [esp + 0x88], 0
add ecx, esi
inc ecx
sub ecx, edi
xor ecx, esi
or esi, edx
ror esi, 0x11
add edi, esi
add edi, esi
sub edx, ecx
and edi, esi
xor esi, ecx
jmp 0x476289
add ebx, 0xc
mov edi, edx
and ecx, 0x30ad5e86
not esi
sub edx, edi
or esi, edi
bswap edi
and esi, edi
mov esi, edi
or esi, edi
mov edx, esi
bswap edx
or esi, edx
jmp 0x4759d7
mov ebx, dword [esp + 0x1c]
ror edx, 0xf
xchg edi, ecx
ror esi, 4
bswap esi
shr esi, 0xe
xchg esi, edi
jmp 0x47749f
add dword [esp + 0x60], eax
xor edi, edx
xor edi, ecx
xor ecx, edx
or edi, ecx
nop
xor edi, ecx
shr ecx, 0x16
xor ecx, 0x30d42164
jmp 0x478566
add ebx, dword [esp + 0x88]
xchg edi, edx
inc esi
sub edi, edx
add ecx, edi
and ecx, edi
and edi, esi
add edi, ecx
mov esi, edx
jmp 0x47624d
mov ebx, dword [ebx]
sub ecx, 0x30e8de50
sub esi, 0x30e97125
xor edx, 0x30e9f9af
shl edi, 0x1f
dec edi
shr edx, 0xd
or edi, ecx
or edi, esi
add edx, edi
shl esi, 0x15
not esi
xchg edi, ecx
xchg ecx, edi
shl esi, 0x17
jmp 0x4753f8
mov dword [esp + 0x60], ebx
or edx, edi
and edi, ecx
mov esi, edi
mov edi, ecx
dec edx
add esi, 0x3100b631
xor edi, ecx
xchg edx, edi
mov edi, esi
jmp 0x475ec9
mov dword [esp + 0x1c], ebx
dec edi
shr edi, 4
mov ecx, edi
shl edx, 0xd
sub ecx, edx
jmp 0x475b40
mov dword [esp + 0x60], 0
and esi, edi
shl edi, 0xf
or ecx, edi
and edx, 0x312df1e6
and ecx, edx
sub ecx, edi
inc edx
or ecx, edi
bswap edi
ror edx, 1
xor edi, edx
dec edx
and edi, ecx
jmp 0x47666c
mov eax, 2
xchg edx, edi
add edi, edx
dec ecx
jmp 0x4781cb
mov ebx, dword [esp + 0x60]
add edi, ecx
or edx, edi
sub edi, edx
inc edx
add ecx, edi
and ecx, 0x314c959e
mov edi, esi
mov edx, edi
xor ecx, edx
or edi, 0x314debd3
jmp 0x4757ec
mov dword [esp + 0x80], ebx
or esi, 0x318dc2e4
ror edi, 0x18
xchg esi, edi
shr esi, 0xe
or edi, ecx
dec esi
or edi, ecx
xchg edx, edi
xor edi, ecx
bswap edx
sub ecx, edi
jmp 0x476c80
add ebx, dword [esp + 0x88]
sub edx, esi
shl edx, 0x12
or edx, esi
sub esi, edx
bswap esi
rol esi, 5
sub edx, edi
add ecx, 0x319c3c22
ror ecx, 0x13
bswap edx
mov ecx, edi
or edx, 0x319dd81e
xchg edi, ecx
xchg edi, edx
and esi, 0x319e8d6b
jmp 0x475acd
cmp eax, dword [esp + 0x80]
jmp 0x4775e5
jne 0x476ddb
mov edi, 0x31a60bd2
xchg esi, ecx
xor esi, 0x31a69333
or ecx, esi
add esi, 0x31a70a51
sub edx, 0x31a747c7
jmp 0x478134
mov ebx, dword [ebx]
sub esi, edi
ror ecx, 0x11
mov edx, esi
xor esi, 0x31b56340
neg edx
jmp 0x475c09
inc ebx
rol edx, 9
xor ecx, 0x31bf3d7d
add ecx, edi
or edx, ecx
xchg edx, ecx
or esi, edi
mov edi, 0x31c066b1
xchg edi, ecx
sub edx, esi
and ecx, edx
mov ecx, esi
add esi, edx
xor esi, 0x31c1d8b7
inc edx
and ecx, 0x31c2528f
jmp 0x4769a9
cmp byte [ebx], 0
jmp 0x476795
mov ebx, 0x30
add ecx, esi
add esi, ecx
shr edi, 0x13
add ecx, esi
and edx, esi
xor edi, esi
mov ecx, esi
add esi, edi
xchg ecx, edx
and ecx, esi
and esi, 0x31fdcfba
jmp 0x4772cd
xor eax, eax
and edi, ecx
ror ecx, 3
and edi, esi
and ecx, edx
shr edx, 0x14
xor esi, ecx
add esi, ecx
xor edx, 0x32022ba2
jmp 0x476ddb
xor al, byte [ebx]
shl esi, 1
rol ecx, 0xa
ror edi, 0xd
or edi, 0x32155291
sub esi, ecx
jmp 0x4785ab
add ebx, 0x3c
xchg edx, edi
ror edi, 0x11
and ecx, edi
xchg esi, ecx
add ecx, edx
add esi, 0x3234bb1c
xor esi, 0x3234fabe
inc edi
xchg ecx, edx
not edx
xor edx, 0x3235f5e1
jmp 0x477ea1
add ebx, dword [esp + 0x88]
and edi, ecx
dec ecx
ror esi, 0x17
mov ecx, esi
xor ecx, edx
mov edx, 0x3239ad1a
dec esi
add esi, edx
jmp 0x476139
ret
add dword [esp + 0x60], 4
and edx, ecx
xor esi, edi
xor edx, ecx
sub edx, ecx
mov esi, edi
rol edx, 0x16
xchg ecx, esi
xchg edi, ecx
shl edx, 0x10
or edi, esi
sub edi, edx
mov edi, 0x325d9185
jmp 0x4763c6
mov ebx, dword [esp + 0x60]
add ecx, 0x325de336
not esi
add edi, ecx
and ecx, edx
or esi, edi
xchg esi, edi
shl esi, 0xd
xor ecx, esi
xor ecx, edi
neg esi
jmp 0x477588
mov ebx, dword fs:[ebx]
dec ecx
add ecx, esi
xor esi, edi
xchg edi, edx
and edi, esi
mov edi, 0x3270dc25
xor esi, edi
or edx, ecx
and esi, ecx
xor ecx, edx
or ecx, esi
sub esi, edx
add esi, edi
jmp 0x4753cb
mov dword [esp + 0x60], ebx
dec edi
add esi, ecx
xchg esi, ecx
add esi, ecx
bswap edi
mov ecx, esi
xchg edi, ecx
add esi, 0x3289c982
jmp 0x477f90
mov ebx, dword [ebx]
xor esi, edx
shl edx, 0x1c
inc ecx
or esi, 0x328cd635
ror edx, 0x12
ror esi, 0x1e
neg esi
bswap edi
or ecx, esi
add edx, edi
not edx
mov edi, ecx
sub ecx, 0x328f0894
add esi, edx
or ecx, esi
jmp 0x475e79
add ebx, dword [esp + 0x44]
shl esi, 7
xchg esi, edi
xor esi, edi
or edi, 0x32929b7c
xchg edi, ecx
mov ecx, edi
mov edi, ecx
mov esi, edx
mov edx, 0x3293d145
shr esi, 0x13
or edx, edi
jmp 0x475826
add dword [esp + 0x60], ebx
not edi
rol edi, 0x1d
xor edx, esi
jmp 0x47583c
mov ebx, dword [ebx]
mov esi, edx
mov edi, ecx
add esi, ecx
xor ecx, edx
dec edi
mov ecx, esi
jmp 0x476fb5
jne 0x475b40
add edx, edi
add ecx, 0x32a86a2a
bswap esi
mov edi, 0x32a8f616
add edx, esi
jmp 0x4771ad
mul ebx
xor edx, edi
add esi, 0x32b68627
rol esi, 0xd
add edi, 0x32b7000f
or esi, ecx
shr edx, 0x19
shl edx, 0xa
sub esi, edi
mov esi, edi
sub edi, 0x32b878dc
shr ecx, 0xf
jmp 0x475fb4
mov ebx, dword [ebx]
and ecx, esi
xchg ecx, edx
shr ecx, 0xb
inc esi
and ecx, edi
sub esi, edx
or ecx, edi
jmp 0x4778e9
mov dword [esp + 0x60], ebx
xor ecx, edi
sub edx, edi
add edx, 0x32db0bcb
mov ecx, edx
mov ecx, edi
and esi, edx
neg edi
mov ecx, edi
and edi, ecx
add ecx, edi
add edi, edx
neg edi
jmp 0x477efc
mov ebx, dword [ebx]
xor edi, esi
bswap edx
xchg ecx, esi
and edi, 0x32dfe057
or ecx, edx
jmp 0x477ac4
add ebx, 0x18
xor esi, 0x330262f3
bswap esi
sub esi, edx
and ecx, edx
rol ecx, 0xd
xchg edi, edx
and edi, edx
bswap edx
mov edx, esi
inc edi
inc esi
add ecx, esi
mov edx, 0x3305c882
jmp 0x47686e
mov ebx, dword [esp + 0x88]
add edx, ecx
xor edi, esi
xor edi, 0x33154298
dec esi
and ecx, esi
add ecx, esi
add edi, esi
jmp 0x476f6e
mov ebx, dword [ebx]
xor ecx, 0x3348a14b
rol edi, 0x15
neg edi
mov esi, edi
or edi, edx
shr esi, 0x13
xor ecx, 0x3349f583
or edi, edx
sub ecx, edx
xor edi, edx
and ecx, 0x334ae322
mov esi, edx
xor esi, edi
jmp 0x47740e
mov ebx, dword [esp + 0x88]
add ecx, 0x334dffc4
mov ecx, edi
and ecx, 0x334e6e80
bswap ecx
sub esi, edi
inc esi
add esi, 0x334f60c8
add edx, ecx
mov esi, edx
mov edx, 0x33500559
mov ecx, edi
jmp 0x477575
add ebx, dword [esp + 0x88]
sub ecx, edi
add ecx, 0x33564bd3
shl esi, 0x13
or esi, ecx
jmp 0x47854e
add dword [esp + 0x60], 0x78
xchg edx, ecx
add ecx, esi
or edx, edi
or esi, edx
shl edi, 0x1c
ror edi, 6
sub edx, ecx
sub edi, 0x3358aff1
xor edx, edi
mov edx, esi
bswap edi
or esi, edi
jmp 0x475148
add ebx, dword [esp + 0x60]
shl edx, 9
add ecx, esi
dec edi
jmp 0x475995
pop ebx
or esi, edi
add edx, 0x33756b3d
ror edi, 0x1e
sub ecx, esi
mov esi, edi
bswap edi
shr edx, 0x1f
not esi
and ecx, esi
xchg edx, ecx
mov esi, ecx
bswap edi
xor edi, edx
jmp 0x476725
mov ebx, dword [esp + 0x44]
dec edi
inc edx
mov edi, esi
add ecx, edx
mov esi, edx
shr esi, 0xa
xchg ecx, edx
jmp 0x475976
mov ebx, dword [esp + 0x60]
and edx, ecx
mov esi, edi
inc edx
mov edx, ecx
not edx
shr esi, 0x10
xchg edi, esi
jmp 0x4782e4
mov ebx, dword [ebx]
and ecx, edx
or ecx, esi
mov edi, esi
add ecx, edx
or ecx, edi
shl esi, 8
shr edx, 2
jmp 0x476010
add dword [esp + 0x1c], 4
and esi, edx
and esi, edi
sub edi, edx
xor edx, ecx
ror ecx, 0xf
ror esi, 0x1d
mov edx, esi
and edi, ecx
mov esi, 0x33a14c6e
xor edi, esi
and esi, ecx
dec edx
xchg esi, edx
add ecx, edx
inc edx
sub esi, 0x33a2f0c9
jmp 0x478a3d
mov dword [esp + 0x44], eax
xchg ecx, edx
xchg esi, edi
xor esi, ecx
sub edi, 0x33b93d6b
add ecx, edx
add edx, edi
xor ecx, 0x33b9ffd6
jmp 0x47590d
mov dword [esp + 0x44], 0
and edi, ecx
shl ecx, 0x13
add esi, edx
and ecx, 0x33bc6e6a
xor ecx, 0x33bcab04
mov esi, ecx
mov edx, esi
xchg esi, edi
or esi, ecx
xchg esi, ecx
jmp 0x475a6f
push ebx
dec esi
and edx, ecx
and edi, esi
or edi, 0x33bee6a9
mov ecx, 0x33bf2210
mov ecx, edx
jmp 0x476cc2
mov ebx, dword [esp + 0x60]
not edi
xor edi, ecx
or edx, edi
sub esi, 0x33c0638d
and edx, edi
mov esi, edi
xchg edx, ecx
xor edx, ecx
not esi
add ecx, esi
jmp 0x476087
rol eax, 8
mov esi, edx
mov edi, edx
add esi, edx
sub ecx, esi
mov ecx, edi
and edi, esi
sub edx, 0x33c5e3eb
sub esi, 0x33c61bb3
xor edx, esi
jmp 0x476906
add esp, 0x94
xor esi, 0x33cd8a17
dec ecx
jmp 0x4770f2
movzx ebx, word [ebx]
mov edi, ecx
xchg edi, edx
xor edi, edx
add ecx, 0x33cec23a
or ecx, 0x33cefa07
add edi, 0x33cf3236
xchg ecx, edx
xchg esi, edi
or ecx, edi
and esi, 0x33d01d6c
mov ecx, esi
jmp 0x47769d
mov ebx, dword [esp + 0x1c]
and esi, edx
and esi, 0x340f027a
or esi, edi
xor edx, edi
shr edi, 0x1d
add edx, 0x340fdf5b
sub edx, esi
shl esi, 0x1b
and edx, edi
sub ecx, edi
or ecx, edx
sub edx, 0x34113603
mov ecx, 0x34116d44
jmp 0x4756bb
sub esp, 0x94
and esi, edx
xor edi, edx
sub edx, esi
mov ecx, esi
and esi, edi
mov ecx, esi
xor edx, edi
sub esi, edi
shr esi, 6
bswap esi
sub edx, ecx
or edi, 0x341d20ae
jmp 0x478521