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

Disassembly:
add esi, dword [esp + 0x54]
or edi, edx
sub edx, ecx
shr ecx, 7
mov ebx, edx
sub edi, ecx
not ebx
xchg ecx, edx
rol edi, 5
shl ecx, 0x1a
inc edi
jmp 0x533410
add esi, dword [esp + 0xc0]
neg ecx
xor edx, edi
xchg ecx, edi
sub ecx, edx
xchg edx, ecx
xor ecx, ebx
dec edx
and edi, edx
xor edi, ebx
sub ebx, edi
not edi
xor edx, ebx
xchg edi, edx
sub ebx, edi
xchg edi, ebx
dec edi
jmp 0x532c76
jne 0x5321f9
add edi, 0xcfd8f043
mov ebx, edx
bswap edi
xchg ebx, edi
shl edx, 0xa
dec ebx
not edi
sub edi, ebx
inc ebx
dec edi
jmp 0x530fbb
mov esi, dword [esp + 0xe8]
sub edi, edx
mov edx, ecx
or ebx, edx
dec edi
xchg edi, edx
sub ebx, edi
and edx, edi
ror ecx, 0xa
sub ecx, edi
ror ebx, 0x14
jmp 0x530645
xor al, byte [esi]
dec edx
add edx, ecx
dec ecx
mov ebx, edx
xchg ecx, edx
ror ebx, 0x1d
ror ecx, 4
xor ecx, 0xcfed8c3d
and ecx, edi
mov edx, 0xcfedc961
not edx
shr edi, 0x1f
or ecx, edi
xor edi, ecx
jmp 0x5329a5
mov dword [esp + 0x24], esi
mov edx, 0xcff26689
xor edx, ebx
xor ecx, edx
or ecx, ebx
mov ebx, 0xcff2d63f
mov edx, ebx
shl edx, 9
and ebx, edx
or ebx, ecx
xor ecx, edi
and edi, ebx
add edx, 0xcff5bec9
mov ebx, ecx
sub ecx, edx
or ebx, 0xcff61079
mov edx, ecx
jmp 0x52fee9
mov esi, dword [esi]
shr ecx, 0xf
or ebx, edi
xor edx, ecx
not edx
shl ecx, 0x1e
xor ebx, 0xcff9b225
or edi, ebx
sub ebx, 0xcff9f0bb
xor edi, ebx
xor edx, ebx
and edx, ecx
add ebx, 0xcffa616f
bswap edi
bswap edi
jmp 0x5326e9
mov esi, 0x30
shl ebx, 3
mov edi, 0xd00b2443
xchg ebx, ecx
xchg ecx, edi
add ebx, edx
add ebx, ecx
xchg ecx, edx
and ebx, edi
xchg ebx, edi
or edx, edi
jmp 0x533465
mov esi, dword [esi]
or edi, edx
sub edx, 0xd00ccd85
shr edx, 0xa
bswap edx
xchg ecx, edx
shr ebx, 0x19
xchg ecx, edi
or edi, ecx
rol ebx, 0x1d
xchg edi, ebx
jmp 0x53235c
add esi, 0x18
mov ecx, 0xd01223bb
xchg ecx, edi
xor edx, 0xd0125d4f
nop
add ecx, edx
add ecx, ebx
xchg ecx, edi
add ebx, edx
ror ecx, 0x1c
shr ecx, 0x15
or ecx, 0xd0134479
xor edx, ecx
xchg edi, ebx
sub ebx, edx
sub ecx, edx
mov edi, edx
jmp 0x531f11
mov dword [esp + 0x54], 0
inc edx
xor edx, ecx
xchg edi, ebx
sub ebx, edx
inc edx
or ecx, edi
mov edi, edx
xchg ebx, edx
and edi, 0xd018114d
or edi, 0xd0182e71
jmp 0x533f8a
jne 0x52fcb5
bswap ebx
mov edi, 0xd030427f
xor edi, 0xd0305eb9
and ebx, 0xd030791f
and ebx, 0xd0309963
sub ecx, edi
sub edx, ebx
ror edx, 0xf
or ecx, 0xd0310583
add ebx, edi
jmp 0x531ead
sub dword [esp + 0xe8], 8
xor edx, ecx
add edi, ecx
and ebx, edi
mov ebx, edi
dec ecx
xor edx, ecx
xor edx, 0xd031dfb7
xor edx, ebx
and ecx, edi
and ebx, 0xd03233e3
mov edi, ebx
or edi, 0xd0326749
mov ebx, 0xd0328275
shr ecx, 0x18
jmp 0x52fa96
mul esi
not edx
bswap ecx
xor ecx, ebx
dec edx
neg ecx
sub edx, 0xd035fd0b
xor edi, ecx
mov ebx, 0xd03638c9
sub edx, ebx
add edx, edi
xchg ecx, edi
neg edi
and ecx, ebx
add edx, edi
jmp 0x530a7d
add esi, 0x3c
and ebx, 0xd03e2263
ror ecx, 0x18
xor ebx, ecx
inc edi
sub ebx, 0xd03e954b
mov ecx, 0xd03eb077
or edx, 0xd03ecc87
add ecx, ebx
xor ecx, ebx
xor ebx, ecx
sub ecx, edx
and edi, ecx
jmp 0x5333dd
add esp, 0x16c
sub edx, ecx
or ebx, edx
add edi, ecx
and ebx, edi
and ecx, edx
xor edi, 0xd045e043
shl ecx, 0xd
sub ecx, 0xd046171d
jmp 0x532918
mov esi, dword [esi]
bswap ecx
and edi, 0xd0477b11
shr edi, 0xe
or edi, edx
not ecx
bswap ebx
add edx, ecx
add edi, edx
and ecx, ebx
not ebx
jmp 0x532a3a
mov esi, dword [esi]
xor edx, edi
and ecx, 0xd04eb1ab
mov edx, edi
bswap edx
xor ecx, edx
dec edi
add edx, ecx
inc ecx
shr edi, 0x19
or edi, edx
inc ecx
not ebx
xor edi, 0xd04fe1ad
add ebx, edx
jmp 0x531396
mov esi, dword [esp + 0xc0]
add edi, 0xd053e8c1
xor edx, edi
add ecx, ebx
and ecx, edx
jmp 0x5304f8
mov dword [esp + 0xe8], 0
xor ebx, ecx
sub edi, edx
inc edx
add edi, 0xd054ac77
mov ebx, edx
and ebx, 0xd054e0a5
add edx, ecx
inc ecx
sub edx, edi
xchg edx, ebx
or edi, ebx
xchg ebx, edi
mov edx, edi
not edi
jmp 0x52fd4e
sub esp, 0x16c
add edi, ebx
xchg edx, ecx
sub ebx, ecx
bswap edx
sub edx, ebx
xor edi, edx
or edx, ecx
add edx, edi
add edx, 0xd0645a7b
rol edi, 0x15
sub ecx, 0xd064926d
mov edx, 0xd064ad29
jmp 0x53004f
add dword [esp + 0xe8], eax
bswap edi
add edi, ecx
and ebx, edi
dec edi
xor ebx, 0xd06aba03
or ebx, ecx
sub edx, ecx
not ecx
jmp 0x533b1c
add dword [esp + 0x88], 4
mov ecx, 0xd0733159
xchg ebx, edi
and ebx, edx
add ebx, 0xd073806d
and ebx, ecx
sub edi, 0xd073b92f
jmp 0x533674
add dword [esp + 0xe8], 4
mov ebx, ecx
mov ebx, 0xd094db0d
or ebx, edx
or edi, ecx
jmp 0x530fd3
mov esi, dword [esp + 0xe8]
bswap ebx
and edx, 0xd0955411
xor ecx, 0xd09575e3
inc ebx
bswap edx
shl edi, 0x1a
jmp 0x5332c0
mov eax, 2
sub ebx, edi
nop
xchg ecx, edi
shl edi, 0x1a
neg ecx
and edi, ebx
xchg ebx, edx
add edi, ecx
jmp 0x5334c2
add esi, 0xc
mov ecx, edx
sub edi, 0xd09e61dd
xor ecx, ebx
xor ebx, ecx
nop
or edx, 0xd09ece91
xor edx, ebx
add ecx, 0xd09f0823
sub ebx, edi
sub edi, ecx
or edi, 0xd09f586f
mov ebx, 0xd09f732b
or edi, ebx
add edx, edi
jmp 0x52ff21
mul esi
shl edi, 0x17
mov edx, ebx
mov edi, ecx
add ebx, edi
or edx, edi
xor edx, edi
not ecx
xchg ecx, ebx
jmp 0x532f36
mov esi, dword [esi]
xor ebx, edi
neg ebx
mov edx, ecx
shr ecx, 1
or edi, ebx
add edx, 0xd0b37301
inc edx
and edx, ecx
neg ebx
and edx, 0xd0b3e1ff
jmp 0x52ffb9
add esi, dword [esp + 0xc0]
or edx, ebx
and edx, 0xd0b53295
xchg ecx, edx
and ecx, 0xd0b56849
ror ecx, 4
sub ecx, edi
ror ebx, 0xe
and edi, 0xd0b5dbcd
add ebx, ecx
shl edi, 0xa
jmp 0x53337c
cmp eax, dword [esp + 0x24]
jmp 0x52fa75
add dword [esp + 0xe8], 0x20
or ebx, edx
add ebx, ecx
or edx, ecx
and edi, 0xd0d26695
add edi, ecx
inc edi
sub edi, ebx
add edi, ecx
xor edx, edi
bswap edx
jmp 0x532959
add esi, dword [esp + 0xe8]
add edi, 0xd0eb19c9
xor edx, edi
xchg edx, ebx
neg edi
add edx, ebx
xchg ecx, edi
add edx, ecx
and ecx, 0xd0ebd6b7
xor ecx, ebx
dec edx
jmp 0x52fdd4
mov esi, dword [esp + 0xc0]
not edi
xchg edi, ecx
not ebx
xchg ecx, edx
shl ecx, 0x1e
shl edi, 0x14
xor ebx, ecx
inc edi
jmp 0x5328f1
inc esi
rol edi, 0x13
sub ecx, ebx
or edx, ecx
add edx, ebx
add edi, ecx
sub ebx, ecx
sub ebx, 0xd1022661
sub edx, 0xd102427f
and ecx, ebx
mov edi, ebx
shl ebx, 0xc
bswap edi
xor ecx, edi
xchg ecx, edx
xchg edi, ebx
or edi, ecx
jmp 0x5325dc
mov dword [esp + 0xe8], esi
mov edx, 0xd10a9c0f
xor edx, 0xd10ab81d
ror ecx, 0x18
xchg ecx, edx
add edi, edx
rol edi, 0x11
jmp 0x531f36
pop esi
mov ebx, edx
sub edi, ecx
inc ecx
sub edi, ebx
add ebx, ecx
xor ebx, ecx
xchg edx, edi
shr ebx, 4
shr ecx, 0xf
ror ebx, 1
sub ecx, edx
or edx, edi
or ebx, 0xd1153615
add ebx, 0xd11552d1
jmp 0x531744
mov esi, dword [esi]
or edi, edx
xchg ecx, ebx
shr ebx, 2
rol edi, 0x1a
mov ecx, 0xd1177e25
dec edx
xchg edi, ecx
xchg ebx, ecx
mov edi, ecx
nop
inc ebx
or edi, 0xd1184233
jmp 0x53286b
add dword [esp + 0xe8], 0x78
not edx
bswap edx
xor edx, 0xd118a0b7
inc ebx
xor edx, 0xd118d853
xor ecx, ebx
xor ecx, 0xd1190fdb
or ebx, edx
sub edx, ebx
xchg ecx, edx
and ecx, 0xd1197db5
xchg ebx, edx
and ebx, 0xd119b303
mov ebx, edi
shl edx, 5
and ebx, edi
jmp 0x533431
mov esi, dword [esi]
xchg edi, ebx
mov edi, edx
or ecx, edi
add ecx, edx
add edx, edi
xor edx, ebx
or ebx, edi
add edx, 0xd11b9295
jmp 0x532c3e
inc dword [esp + 0x54]
or ecx, 0xd12f25b5
xchg ecx, edi
sub ecx, edx
add edx, ebx
not ecx
or ebx, 0xd12fb0d7
jmp 0x530b9b
add esi, 0xc
neg edx
and ebx, 0xd13b5585
xchg edi, ecx
add edi, 0xd13b8bb9
add edx, ebx
mov ecx, edi
xchg edi, ecx
rol ecx, 5
jmp 0x5327c3
add esi, dword [esp + 0xc0]
or edi, edx
xor edi, edx
xchg edi, ecx
mov ecx, edx
xchg ebx, edx
and ebx, 0xd14299b9
and edi, edx
sub edi, 0xd142ce0b
jmp 0x5305f7
mov dword [esp + 0xe8], esi
mov ecx, edx
and edi, edx
xor ebx, edx
mov edi, ebx
xchg edx, ebx
or ebx, ecx
and ecx, edx
or edi, edx
add ebx, edx
sub edi, 0xd14a2a79
xchg ecx, edx
sub ebx, edx
jmp 0x532ad8
cmp byte [esi], 0
jmp 0x530334
mov dword [esp + 0xe8], esi
dec ebx
add ecx, edi
xor edi, 0xd157cae3
add ebx, edx
mov ebx, ecx
sub edi, ebx
add edx, 0xd1583503
inc edx
and edx, ecx
mov edx, edi
jmp 0x531c57
mov esi, dword [esi]
mov edx, edi
mov ecx, edi
sub ecx, edx
and edi, ebx
or ebx, 0xd15edabf
sub edx, ecx
xor ebx, edi
dec ecx
jmp 0x53071e
mov dword [esp + 0xc0], esi
add edx, edi
xchg edx, edi
sub ecx, edi
ror ebx, 9
mov ecx, 0xd1643cd1
shr edx, 0x1f
or edi, ebx
or ebx, edx
add ebx, ecx
rol edx, 0xe
xor edx, ecx
add edi, ecx
xor edx, edi
or ecx, edx
jmp 0x5307b8
add dword [esp + 0xe8], esi
or ebx, edx
add ecx, 0xd1688885
sub ebx, ecx
add ebx, edi
neg edx
add ecx, edi
add edi, ebx
inc edx
inc ebx
or ecx, edx
rol ecx, 0x1f
xor edx, ebx
jmp 0x531750
ret
mov esi, dword [esp + 0xe8]
mov edi, ebx
add ebx, edx
shr ebx, 0x15
xor ebx, 0xd16c3c89
ror edi, 9
dec edx
xor edx, edi
and edx, edi
and edi, ebx
and ecx, ebx
and ecx, edi
sub edx, ecx
ror edx, 0xb
and ecx, edi
and edx, ecx
sub edi, ebx
jmp 0x531f8a
rol eax, 8
add edi, edx
xor edi, ebx
xor edx, ebx
xor edx, 0xd16f0915
or edx, 0xd16f255f
sub ebx, 0xd16f41ef
sub ecx, ebx
and ebx, ecx
sub edx, ebx
ror ecx, 4
sub ecx, edi
ror ebx, 0xa
jmp 0x531c74
mov esi, dword [esi]
xor ebx, 0xd1728001
add ecx, 0xd1729ccd
and ecx, 0xd172b75d
xchg ebx, edx
sub ebx, ecx
add ebx, edi
or edx, edi
ror ecx, 0x1b
mov edi, 0xd1735bef
not ebx
xchg ecx, edx
xchg edi, ecx
jmp 0x53243b
add esi, dword [esp + 0xc0]
sub ecx, edi
ror ebx, 0xf
mov ebx, edx
sub ebx, 0xd17421cb
add ecx, edi
and edx, ebx
sub ecx, ebx
rol edx, 0x18
rol edx, 0x15
sub ebx, edi
jmp 0x532519
mov esi, dword [esp + 0x88]
neg ecx
rol edi, 0x16
add ecx, ebx
add edx, ecx
mov edx, ebx
sub edx, ebx
jmp 0x52f85e
add esi, dword [esp + 0xc0]
xchg ecx, edi
shl edi, 6
xor edi, edx
mov ecx, 0xd184a4dd
sub edx, ecx
or ebx, 0xd184d959
add edi, ebx
mov edx, edi
or edx, 0xd1852ba7
sub ebx, 0xd1854637
add ecx, edi
add edi, ebx
shl edx, 4
dec ebx
jmp 0x533bf8
mov dword [esp + 0x88], esi
dec edi
sub ecx, edi
ror ebx, 0xf
inc edi
sub edi, edx
mov edx, ecx
or ebx, edx
and ecx, edx
xor ecx, edi
and edx, ebx
mov edx, ebx
bswap ebx
xor ebx, edi
mov ecx, 0xd1873365
jmp 0x530ff3
mov esi, dword [esi]
or edx, edi
add edx, ecx
add edi, edx
xor edi, ebx
sub edx, 0xd19cb651
xor edx, ecx
jmp 0x5313d6
mov dword [esp + 0x54], eax
mov edi, edx
or edx, ebx
xor edx, edi
add edi, 0xd19d4217
ror ebx, 0xf
and ecx, ebx
bswap ebx
and edx, 0xd19db473
mov ecx, edx
neg edx
sub ecx, 0xd19e0581
xchg edi, ecx
jmp 0x530367
mov esi, dword [esi]
xchg edi, edx
neg ecx
xor edx, ebx
bswap ebx
and ecx, edi
add edi, 0xd1b89413
jmp 0x52fa2d
push esi
inc ecx
not ebx
bswap ebx
xor ebx, 0xd1be73e5
mov edi, 0xd1be93c9
and edx, edi
sub ecx, ebx
xchg ebx, ecx
jmp 0x533a0c
mov esi, dword [esi]
or ebx, edi
xor ecx, edx
mov ecx, ebx
add ecx, edi
shr edi, 8
or edi, edx
or ecx, edi
rol edx, 0x10
jmp 0x531d76
mov eax, 4
sub edi, ecx
inc ecx
add ebx, edx
shr ebx, 9
mov ebx, edi
mov edx, 0xd1c34acb
or edi, edx
add edi, ecx
mov ebx, edx
or ecx, edi
jmp 0x53364b
mov esi, dword [esp + 0xc0]
and edi, 0xd1c3d291
or ebx, edi
add ecx, ebx
or edx, edi
mov edi, ecx
sub ebx, 0xd1c45207
mov edi, ecx
nop
not ebx
and ecx, edx
not ecx
shr ecx, 0x14
xor ecx, 0xd1c5167b
mov ecx, edx
jmp 0x531a3e
mov esi, dword fs:[esi]
sub ebx, edx
xchg ecx, edi
mov ebx, edx
dec ebx
not edi
or ecx, edx
and edi, ebx
add edx, ecx
sub edi, ecx
add ecx, ebx
xor edi, ecx
dec ebx
not edi
bswap edi
add edx, 0xd1c6ca39
shl edx, 7
jmp 0x5310ff
mov esi, dword [esp + 0x54]
add ebx, ecx
or edx, edi
mov edi, 0xd1c8c185
rol ebx, 0x12
xor ecx, edi
add edx, edi
and ebx, ecx
xchg ecx, edx
jmp 0x53118c
movzx esi, word [esi]
sub ebx, 0xd1d40cdd
and ebx, 0xd1d427b3
mov ebx, edi
rol edi, 0x1b
sub ecx, ebx
sub ebx, edi
add ecx, edx
xor edi, edx
and edi, ecx
and ecx, edx
and edx, ebx
or ecx, edi
jmp 0x5303eb
mov esi, dword [esp + 0x88]
xchg edi, ecx
not edx
or ebx, edx
xchg ecx, edi
rol edx, 0x17
sub edi, edx
jmp 0x532f1f
xor eax, eax
add edx, 0xd1fadde7
and edx, 0xd1faf85d
sub ecx, edi
xor ecx, 0xd1fb2ed9
sub ebx, ecx
bswap edx
add edi, ebx
and ebx, edx
xor ecx, ebx
mov edi, 0xd1fbd0e1
jmp 0x52fcb5
mov esi, dword [esp + 0xe8]
mov edi, 0xd202e28b
xchg edx, ebx
xor edi, edx
add ecx, ebx
add ebx, ecx
rol edx, 3
mov edx, 0xd2038411
sub edx, edi
jmp 0x532a0b
mov dword [esp + 0x88], esi
sub ebx, 0xd2094bc5
add ecx, edi
and ecx, edi
not edx
jmp 0x5321f9
mov dword [esp + 0xc0], 0
xor ebx, edi
and edi, edx
inc edi
add edx, edi
add edx, 0xe1226239
sub ecx, edi
xchg ecx, edx
inc ebx
jmp 0x5307d0
mov dword [esp + 0x88], 0
or ecx, edi
add edi, 0xe1230ffd
ror edx, 5
xor ecx, ebx
sub edi, edx
xchg edx, ebx
jmp 0x533f68