Function at 0x52b2f3
Capabilities:
Encrypt data using chaskey

Disassembly:
mov ebx, dword [ebx]
sub edi, esi
shr edi, 0x1e
mov edx, 0x8a2f0939
and esi, edx
shr esi, 7
mov ecx, 0x8a2fd215
add edx, ecx
shl ecx, 0x10
sub esi, edx
jmp 0x52a724
push ebx
xchg edi, edx
mov esi, 0x8a33658a
or esi, edx
add edx, esi
or esi, ecx
add edi, 0x8a3468be
xor edi, esi
jmp 0x5285f0
mov ebx, dword [esp + 0xc]
and edx, 0x8a4e27f3
or esi, edi
add edx, ecx
bswap edx
and ecx, edi
and edx, ecx
mov esi, ecx
add edx, edi
and ecx, 0x8a501c96
sub edx, esi
shr esi, 1
xchg ecx, edx
xor esi, edi
jmp 0x52ac80
mul ebx
or edi, edx
and ecx, 0x8a6868c0
xchg edx, ecx
sub edx, ecx
xchg esi, edx
add edi, esi
and esi, edi
sub edi, ecx
or esi, edi
sub edx, edi
jmp 0x5298a2
add ebx, dword [esp + 0xc]
xor edi, ecx
or edi, 0x8a730b76
add edi, 0x8a734a0a
add edx, edi
or esi, ecx
add esi, edx
shr esi, 0x1f
shr esi, 0x1a
xchg ecx, edx
xor edx, ecx
xor esi, ecx
jmp 0x5294f6
pop ebx
bswap ecx
shr esi, 0x1a
or edx, ecx
or edx, esi
sub edi, 0x8a84461c
jmp 0x52912d
mov ebx, dword fs:[ebx]
bswap edx
xchg esi, edx
xchg edi, ecx
xor edx, 0x8a9cc2ef
xchg ecx, edx
xchg edi, edx
xchg edi, ecx
add edx, esi
xor esi, ecx
jmp 0x52b12c
rol eax, 8
rol ecx, 5
or edi, ecx
or ecx, edx
sub edx, 0x8aae8358
add edx, ecx
xor ecx, 0x8aaefd19
shl ecx, 0x1a
shr edx, 0x1f
xor esi, edi
xchg esi, edi
or ecx, edi
and edi, esi
and esi, 0x8ab0bcf1
or edi, esi
sub edi, 0x8ab13641
jmp 0x529cf7
mov ebx, dword [ebx]
not ecx
and edx, esi
add esi, ecx
sub edi, ecx
and edx, edi
xchg edi, esi
not ecx
and ecx, 0x8ac86602
jmp 0x52a23d
mov dword [esp + 0xcc], ebx
mov esi, edx
sub ecx, edi
or ecx, edx
not edi
xchg esi, ecx
mov esi, edx
jmp 0x529302
xor eax, eax
or edx, esi
or edx, edi
xchg edi, esi
xchg edx, ecx
or edx, 0x8ad0064e
and ecx, edi
xor edx, esi
neg edi
sub edx, 0x8ad10d3c
jmp 0x52b080
add ebx, dword [esp + 0xc]
xchg edi, edx
or esi, ecx
mov ecx, esi
inc esi
not edi
xor edi, 0x8ad46cf5
add ecx, edx
sub edi, ecx
or ecx, esi
neg ecx
sub edx, edi
xor edi, ecx
mov edi, edx
jmp 0x5285b1
add ebx, dword [esp + 0xb0]
bswap ecx
xor edx, edi
sub ecx, edi
shl esi, 0xe
and edx, ecx
and esi, edi
or edi, esi
and esi, edi
inc ecx
xchg esi, ecx
xchg esi, edx
jmp 0x52abe8
mov dword [esp + 0xb0], 0
rol ecx, 0xd
and edi, ecx
not edx
or ecx, edi
shl esi, 0xe
sub esi, edx
inc edx
xchg edx, esi
or esi, edi
or ecx, edx
xor edx, edi
bswap edi
xor edi, ecx
bswap edi
add esi, 0x8aeb26d8
jmp 0x52a40e
add ebx, dword [esp + 0xc]
bswap edx
ror ecx, 0x17
neg esi
sub edx, ecx
add edi, 0x8af3d946
neg edx
inc esi
shr ecx, 0x14
xor ecx, 0x8af4dbb1
add edi, esi
and ecx, 0x8af55208
and edi, ecx
jmp 0x527df9
mov ebx, dword [ebx]
dec edx
add edi, edx
sub edx, ecx
mov ecx, esi
sub esi, 0x8b077707
and edi, ecx
and esi, edi
mov edx, 0x8b08297a
jmp 0x529351
jne 0x52b080
add esi, 0x8b0a8141
and esi, edx
and edx, esi
xor edi, 0x8b0b4446
sub edi, edx
sub edx, 0x8b0bbda6
not edx
bswap ecx
jmp 0x5281e2
add dword [esp + 0xcc], 0x20
add edi, esi
add edx, ecx
inc edx
add edi, ecx
and ecx, edi
xor edi, esi
or edi, edx
sub edx, 0x8b151d9f
sub edi, edx
xchg edx, esi
dec edx
jmp 0x528ee4
add ebx, dword [esp + 0xc]
mov edx, edi
or edi, 0x8b5c6a47
add edi, ecx
dec esi
xor edi, edx
jmp 0x52a6d8
mov ebx, dword [esp + 0xcc]
and edi, edx
mov edx, ecx
xor edx, edi
shr ecx, 0xb
neg ecx
ror esi, 0x1b
and edi, esi
sub edi, ecx
mov esi, ecx
jmp 0x52adb6
cmp eax, dword [esp + 0x68]
jmp 0x52a18d
mov ebx, dword [esp + 0xc0]
mov edi, edx
or edi, ecx
shr edx, 0x1d
dec ecx
sub edx, 0x8bccf20b
shl edx, 0x17
jmp 0x5286e4
add ebx, 0x18
add esi, 0x8bd2d370
or edx, esi
and esi, edx
add edi, edx
xor edx, edi
jmp 0x529b51
add ebx, dword [esp + 0xc]
or edi, ecx
ror edi, 2
shr esi, 0x1f
xor edi, edx
add edx, ecx
not edi
mov edi, edx
xor edi, esi
xor esi, ecx
not esi
or edx, ecx
rol edi, 9
jmp 0x52a218
mov dword [esp + 0xc0], ebx
and edx, ecx
add ecx, edi
and edx, ecx
and edx, ecx
ror esi, 0x1c
mov esi, 0x8bf3ec5d
and edi, ecx
jmp 0x52a951
sub dword [esp + 0xcc], 8
add edi, 0x8c09997f
and edx, 0x8c09d9dd
and edx, esi
xchg ecx, esi
jmp 0x52a98f
add ebx, 0x3c
xchg edi, edx
dec edx
xor ecx, edx
add edx, edi
or edi, edx
and esi, 0x8c172928
sub edx, edi
xor edi, esi
xor ecx, edi
xchg ecx, edi
xchg edi, edx
jmp 0x52a2f8
mov ebx, dword [esp + 0xb0]
or edi, 0x8c18b175
xor esi, edi
and esi, ecx
xchg esi, ecx
add ecx, edi
add edx, 0x8c19f1ff
add edx, esi
or edi, ecx
jmp 0x528097
mov dword [esp + 0xb0], eax
xor esi, ecx
not ecx
add edi, esi
xchg edi, esi
shl esi, 0xe
xor esi, ecx
jmp 0x529643
inc dword [esp + 0xb0]
mov esi, edi
xor edx, edi
sub ecx, edi
sub esi, edx
mov edx, 0x8c439720
rol edx, 0x18
and esi, ecx
add edx, ecx
dec ecx
shr esi, 0x14
xor esi, edx
add esi, 0x8c454673
jmp 0x52a487
add dword [esp + 0xcc], 0x78
xchg ecx, esi
rol esi, 8
mov edi, ecx
shl ecx, 0xb
and ecx, esi
add edx, 0x8c46da5e
or esi, ecx
and edi, 0x8c47545d
not edx
add ecx, edx
and edi, esi
jmp 0x527f34
ret
mov ebx, dword [esp + 0xc0]
mov ecx, 0x8c615801
mov ecx, esi
shr edx, 0xa
dec edx
or ecx, esi
xor esi, ecx
add edi, 0x8c62d8e3
jmp 0x52ab3a
mov ebx, dword [esp + 0xcc]
mov edx, ecx
xor ecx, edi
add ecx, edx
add esi, edx
dec edx
bswap edi
inc edi
inc edx
sub esi, 0x8c65276a
or edx, 0x8c656680
xchg esi, ecx
sub esi, edi
sub esi, 0x8c661e17
jmp 0x52a5fa
mov ebx, dword [ebx]
xchg edi, esi
mov edx, esi
sub ecx, esi
xor edx, 0x8c6a249c
xchg edi, edx
dec edi
jmp 0x529de8
mul ebx
mov edx, 0x8c7de5fd
xchg esi, edx
sub edx, edi
xor edx, esi
and ecx, edi
or edi, esi
add esi, 0x8c7f493d
xchg edi, edx
and edi, edx
add esi, ecx
sub edi, esi
xchg ecx, esi
and edi, 0x8c80bcc0
mov edx, ecx
xor esi, edi
neg edx
jmp 0x52ae03
inc ebx
add edi, esi
add esi, 0x8c8c0205
sub edi, 0x8c8c3f18
neg edi
add edi, ecx
not ecx
mov edx, edi
add edx, edi
ror esi, 0xb
dec esi
xor edi, ecx
and edx, edi
or esi, ecx
jmp 0x52a0db
mov ebx, dword [esp + 0xcc]
xor esi, edx
bswap esi
and esi, edx
sub esi, 0x8c9455fb
xchg esi, edi
add ecx, 0x8c94ce8e
jmp 0x52ad3f
mov dword [esp + 0xc], ebx
and edx, 0x8c9cf1f9
sub edx, esi
add edi, 0x8c9d6ccd
sub edx, 0x8c9dba60
xchg ecx, edx
mov edi, ecx
jmp 0x52a5c8
cmp byte [ebx], 0
jmp 0x528916
jne 0x529941
xchg ecx, esi
add ecx, edx
add esi, 0x8ceb6b28
sub ecx, esi
and edx, esi
inc edi
or ecx, edx
and ecx, edx
sub ecx, esi
bswap edi
add esi, edi
inc esi
jmp 0x52b277
movzx ebx, word [ebx]
or esi, edi
mov esi, 0x8cf0b4b4
xor edi, esi
or ecx, edi
xchg ecx, edi
not edi
and ecx, edx
or esi, 0x8cf2341f
sub edx, esi
jmp 0x529c53
mov dword [esp + 0xc0], ebx
add edx, esi
ror edi, 0x19
and ecx, 0x8cf6a60d
mov edx, 0x8cf6e59f
shr edi, 0x18
add ecx, 0x8cf761cc
jmp 0x529941
add ebx, 0xc
not ecx
inc esi
xchg edx, edi
and edi, ecx
add esi, 0x8cf8bbc7
jmp 0x52b0d8
add dword [esp + 0xcc], ebx
mov ecx, edx
mov ecx, edx
or edi, edx
or edx, edi
nop
and edx, esi
xor edx, edi
mov ecx, 0x8cfd607b
xor ecx, 0x8cfd9e4c
mov edi, 0x8cfddc4f
jmp 0x52899a
mov ebx, dword [ebx]
sub esi, 0x8d05b383
and edx, esi
rol edi, 0x10
or esi, edi
add esi, 0x8d06b859
add edx, ecx
mov esi, edi
add edi, edx
jmp 0x52b0a0
mov dword [esp + 0xc0], 0
add edx, 0x8d19b077
xor edi, esi
add edi, edx
or edi, esi
xchg esi, ecx
xor ecx, 0x8d1ae392
and ecx, esi
bswap ecx
jmp 0x52acda
add dword [esp + 0xc0], 4
xchg edi, edx
rol edi, 0x1f
xchg ecx, edx
xchg ecx, esi
inc ecx
jmp 0x529ad3
mov ebx, dword [esp + 0xc]
xor esi, 0x8d39659c
mov edx, edi
xor edx, esi
sub ecx, esi
or esi, edi
mov edx, esi
and edx, 0x8d3ac901
neg edx
xchg ecx, esi
mov edi, 0x8d3b904d
shr edx, 4
neg esi
and edi, esi
jmp 0x5296f8
mov ebx, dword [ebx]
xor edx, 0x8d3c9dfd
shl edx, 7
and esi, 0x8d3d2787
and esi, edx
or esi, edi
jmp 0x528d55
add esp, 0xe0
xor ecx, edi
add edx, ecx
add edi, 0x8d4c9a8b
shr edi, 1
ror esi, 8
mov edx, 0x8d4d52b2
or edx, esi
bswap edi
sub edx, 0x8d4e17ad
shr edi, 0x1a
add edx, 0x8d4e9026
or esi, edi
neg edx
not edi
and edx, ecx
xchg edi, esi
jmp 0x529a81
mov dword [esp + 0xcc], ebx
xchg edx, esi
xor esi, ecx
sub esi, ecx
sub esi, 0x8d51a91c
xor esi, ecx
mov edi, esi
mov edx, edi
xor ecx, edi
not esi
and edi, 0x8d531ee7
xor ecx, 0x8d535bd6
rol edx, 0xd
jmp 0x52a86e
mov ebx, dword [esp + 0xc]
or edi, 0x8d681b5c
rol esi, 1
xor edi, ecx
neg edi
ror edx, 0x1e
or ecx, edx
or edi, edx
or esi, edx
xor ecx, 0x8d6a1758
jmp 0x52a26d
mov eax, 2
xor edi, edx
add ecx, 0x8d791e84
neg ecx
inc esi
xor edi, edx
add edi, ecx
and esi, ecx
mov edx, ecx
xor esi, edi
ror edi, 0x1b
xchg esi, ecx
neg edi
jmp 0x529719
mov ebx, dword [esp + 0xcc]
ror edx, 0x17
sub edx, 0x8d7ea17f
add edx, esi
sub edi, 0x8d7f2da0
sub esi, 0x8d7f6c30
bswap edi
xchg edx, edi
or ecx, edi
ror edi, 0x18
jmp 0x52affe
mov ebx, 0x30
mov ecx, esi
bswap edx
xor edi, 0x8d981221
sub ecx, esi
xor edi, 0x8d989f24
add esi, ecx
dec ecx
rol ecx, 0xb
jmp 0x528342
mov ebx, dword [ebx]
xor edx, esi
or edx, edi
xchg edx, edi
mov edi, esi
add edx, ecx
or esi, ecx
and edx, ecx
or edx, edi
or edx, edi
xor esi, ecx
sub edx, ecx
ror edi, 0x17
jmp 0x5287c0
mov eax, 4
and esi, edx
or edi, ecx
xor edx, esi
add ecx, 0x8dac132f
xchg esi, edi
mov ecx, edi
and edi, ecx
xor ecx, edx
and edi, esi
or ecx, edi
and edi, esi
or ecx, edx
shr ecx, 0xc
neg ecx
or edi, ecx
jmp 0x52a1cb
add ebx, dword [esp + 0xcc]
and ecx, esi
sub ecx, 0x8db7eb7d
add esi, 0x8db82aa1
xchg esi, ecx
or edx, edi
or edi, 0x8db8ef3f
add edx, 0x8db92d8b
bswap edx
and esi, edi
or edx, ecx
and edi, edx
jmp 0x527dbc
mov dword [esp + 0xc], 0
xor ecx, edx
mov edi, ecx
dec edi
add edi, edx
mov esi, 0x8dbec42b
rol edi, 3
sub ecx, edx
jmp 0x52b0c4
mov ebx, dword [ebx]
or edx, esi
xor edx, 0x8dc4450a
xor ecx, esi
or esi, edi
xchg esi, edi
add esi, edx
and ecx, 0x8dc58574
add esi, edx
neg ecx
or edx, edi
shr edx, 8
add edi, edx
or edx, ecx
jmp 0x5280fe
mov ebx, dword [ebx]
inc edi
ror edi, 0x16
or edx, esi
mov edi, ecx
sub edi, edx
shl ecx, 0xf
neg edi
add edx, esi
and edi, esi
and edi, edx
sub esi, edx
rol edx, 4
add esi, edx
jmp 0x5294cf
add dword [esp + 0xcc], eax
rol edx, 9
and ecx, edx
rol ecx, 0x12
dec esi
inc edx
not edx
mov edx, 0x8dd4f296
ror edi, 8
xor ecx, 0x8dd56f35
xor edi, edx
xchg edi, edx
jmp 0x529af4
mov dword [esp + 0x68], ebx
xor ecx, edx
or edi, 0x8ddbc0b4
dec edi
xchg edx, edi
and edx, ecx
inc ecx
add esi, ecx
xor ecx, esi
rol edi, 0x17
mov ecx, esi
mov ecx, esi
jmp 0x52aaf8
mov ebx, dword [ebx]
shl edx, 0xb
dec esi
xor edx, 0x8dec2dee
or esi, ecx
or edx, ecx
add edx, ecx
and edx, edi
dec edi
ror esi, 0x1b
jmp 0x5288df
mov ebx, dword [ebx]
xchg esi, ecx
xchg esi, edx
rol edx, 0x1c
dec esi
add edi, ecx
xor edx, 0x8dfbe73e
or edx, ecx
shl ecx, 0x13
shl edx, 0x11
add ecx, edi
or edi, edx
mov esi, edi
jmp 0x528628
xor al, byte [ebx]
xchg ecx, edi
add ecx, 0x8e054b80
and edi, 0x8e058634
inc ecx
and edi, edx
sub edi, edx
xchg edi, edx
add ecx, edx
neg esi
jmp 0x52842a
mov dword [esp + 0xcc], ebx
sub edi, 0x8e0747e5
ror esi, 4
or edx, 0x8e07bf0d
or esi, edi
xchg edx, esi
mov edx, 0x8e0880e2
jmp 0x52996d
mov dword [esp + 0xcc], 0
or esi, edi
xchg ecx, edx
jmp 0x52ae70
mov ebx, dword [ebx]
sub edx, 0x8e096a2c
mov esi, edi
or edx, 0x8e09de2e
rol ecx, 9
and ecx, edi
and edi, edx
add esi, edx
mov edx, ecx
jmp 0x52af4e
add ebx, 0xc
sub edx, 0x8e0f2b82
xchg ecx, edi
xchg edx, ecx
bswap edi
and ecx, edx
xchg edx, esi
dec esi
sub ecx, edx
or ecx, 0x8e111bf0
jmp 0x52857b
add dword [esp + 0xcc], 4
and esi, ecx
add edi, esi
or esi, edx
or esi, edi
or esi, edx
xchg ecx, esi
neg ecx
and esi, edx
dec esi
jmp 0x529d66
sub esp, 0xe0
xor edi, edx
ror edi, 0x11
or edx, 0x8e30a5db
mov ecx, edx
sub ecx, 0x8e311b5c
and edx, ecx
add ecx, 0x8e31a2d3
and esi, 0x8e31dfb4
jmp 0x52872a