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

Disassembly:
mov edx, dword [esp + 0x58]
xchg edi, esi
and ebx, ecx
bswap edi
rol edi, 3
nop
add ecx, 0xdc43e2ea
or ecx, ebx
xchg ecx, edi
sub esi, ebx
mov edi, ebx
rol esi, 0x1a
and esi, ebx
xor esi, edi
rol ecx, 0x1e
jmp 0x476ae6
mov edx, dword [edx]
mov edi, ecx
xor edi, 0xdc58cc07
and ecx, edi
add edi, esi
and edi, 0xdc596f8e
not ecx
sub esi, edi
mov ecx, esi
neg edi
mov edi, ebx
jmp 0x47751e
add edx, dword [esp + 0x58]
mov esi, 0xdc6476b7
dec ecx
xor esi, edi
sub esi, ebx
and ecx, esi
and ebx, edi
xchg ebx, edi
xchg edi, esi
neg ecx
jmp 0x477e2d
mov edx, dword [edx]
xchg ecx, edi
sub esi, ebx
and ebx, edi
sub ecx, esi
xor ebx, edi
sub esi, ecx
and edi, esi
and esi, ecx
xor ecx, 0xdc6e427e
or ebx, 0xdc6e7ab0
xor ecx, esi
jmp 0x475507
mov edx, dword [edx]
shl ecx, 9
or ecx, edi
add esi, ecx
or edi, 0xdc75edc9
sub ebx, 0xdc763354
sub edi, esi
nop
jmp 0x4774c6
inc dword [esp + 0x1c]
or edi, 0xdc84f43d
add ecx, ebx
or edi, 0xdc856168
shr ebx, 0x1d
or esi, ebx
sub ebx, ecx
sub edi, 0xdc864c67
inc esi
xor esi, ecx
bswap ebx
mov ecx, esi
sub esi, ebx
jmp 0x4796dc
movzx edx, word [edx]
add edi, ecx
or ecx, esi
mov ebx, 0xdc9ebe97
add esi, ecx
sub ebx, 0xdc9f3591
shr ecx, 0x14
and ebx, edi
and esi, 0xdc9fe99c
sub ecx, ebx
add ebx, ecx
neg ebx
bswap ebx
jmp 0x4793ce
mov dword [esp + 0x14], edx
and ebx, 0xdcbf8c9e
sub esi, ecx
add edi, ecx
xchg esi, ebx
nop
or esi, ecx
or edi, 0xdcc0f39c
add esi, ecx
add esi, ecx
xchg ecx, esi
xor esi, ebx
neg ecx
xor ebx, ecx
add edi, esi
not edi
jmp 0x476184
push edx
and ecx, 0xdcd419a3
shl ebx, 0x10
and esi, 0xdcd489d8
neg edi
rol ebx, 0xe
neg edi
and esi, edi
add esi, ebx
add esi, 0xdcd5e377
jmp 0x478522
add edx, 0xc
add esi, ebx
xor esi, 0xdcdd0a51
rol ecx, 0xa
add edi, 0xdcdd7a33
mov edi, ebx
sub edi, ebx
dec ebx
and ecx, ebx
add edi, 0xdcde9a0d
jmp 0x475454
mov edx, dword [edx]
or ebx, 0xdcf1245e
neg ebx
bswap ecx
shr ecx, 0x10
add ecx, ebx
xor esi, 0xdcf23b4a
mov esi, ebx
or esi, edi
jmp 0x476157
add edx, dword [esp + 0x1c]
sub edi, ebx
neg ecx
ror ecx, 0x1e
sub ebx, 0xdd0fdce9
or esi, edi
sub edi, ebx
not ecx
dec esi
bswap edi
mov ebx, ecx
add edi, 0xdd116d4d
not ebx
not ebx
or edi, 0xdd121621
mov ebx, ecx
jmp 0x477411
add edx, dword [esp + 0x58]
xor ecx, 0xdd31b199
and ecx, ebx
and esi, edi
neg ecx
sub ebx, esi
sub ecx, 0xdd32d2ce
mov edi, 0xdd330942
or ecx, esi
and esi, 0xdd337789
jmp 0x4781b0
mov edx, 0x30
sub ecx, edi
neg esi
not esi
rol esi, 0x18
jmp 0x476883
inc edx
xchg ecx, edi
sub edi, 0xdd56d9dd
add ebx, 0xdd571541
shl ecx, 5
sub ecx, 0xdd578f71
add ebx, edi
xor ebx, edi
add edi, esi
sub edi, ebx
add esi, ecx
jmp 0x478df7
mov dword [esp + 0x1c], eax
sub ecx, 0xf0a4ae85
neg ecx
shl edi, 9
mov esi, ecx
shl esi, 0x19
or esi, ebx
or ebx, esi
rol esi, 0x12
or ecx, edi
or esi, 0xf0a92540
shl ecx, 0x16
inc ecx
jmp 0x4791bc
jne 0x475717
and ebx, ecx
ror ebx, 0xb
add edi, 0xf0abacf4
or ebx, edi
nop
and edi, ebx
mov edi, ebx
not edi
jmp 0x478134
mov edx, dword [esp + 0x58]
sub ebx, edi
shl ecx, 0xa
shl ecx, 0x19
inc esi
sub ebx, edi
neg esi
shr edi, 0xd
inc esi
dec ebx
and edi, ebx
shr esi, 8
jmp 0x477a8a
mul edx
xchg ecx, esi
and esi, ebx
shl ecx, 0x17
ror edi, 8
add edi, esi
or ecx, ebx
nop
bswap ebx
or edi, ebx
ror ecx, 7
jmp 0x476545
mov edx, dword fs:[edx]
or ecx, ebx
mov esi, edi
shl ecx, 0xb
jmp 0x476925
add edx, 0xc
shr ecx, 0x14
sub esi, edi
sub esi, ebx
xchg ebx, edi
jmp 0x476f20
ret
mov edx, dword [esp + 0x6c]
or ebx, ecx
add ebx, esi
sub edi, esi
or ecx, ebx
shl ebx, 0x1f
or edi, ebx
mov esi, 0xf11c27f4
add ebx, 0xf11c5ea1
not ecx
inc ebx
xor ebx, ecx
not esi
and ebx, ecx
xchg ebx, esi
jmp 0x477b80
add edx, 0x3c
xor esi, ecx
add ecx, edi
add esi, ebx
neg esi
xchg ebx, ecx
or ebx, edi
mov esi, 0xf1216866
and edi, 0xf1219f68
jmp 0x478089
mov dword [esp + 0x78], edx
add edi, 0xf12bceaf
and esi, ebx
inc ecx
neg ebx
bswap edi
or esi, edi
xor esi, ebx
mov edi, ebx
mov ecx, esi
not esi
jmp 0x476f0a
mov eax, 2
dec ebx
ror edi, 0xc
and edi, ebx
or ecx, esi
or esi, ecx
or ebx, esi
jmp 0x477eb6
mov edx, dword [edx]
bswap esi
add esi, ecx
xor esi, edi
inc esi
sub ecx, ebx
or ecx, esi
and esi, ecx
and ebx, 0xf16c5ac0
rol esi, 9
xor edi, esi
jmp 0x475c43
add edx, dword [esp + 0x58]
dec ecx
neg ecx
ror edi, 0x17
or esi, ebx
and edi, 0xf186cfc5
xor ebx, esi
xor ebx, 0xf18749ef
xor esi, ebx
xor edi, ebx
jmp 0x476b80
mov eax, 4
xchg edi, esi
inc esi
or edi, 0xf1d06819
add ecx, edi
add ecx, esi
inc ebx
or edi, esi
sub edi, esi
jmp 0x4758aa
add edx, dword [esp + 0x58]
xchg esi, ebx
or esi, ecx
xor ebx, 0xf1eadd10
rol esi, 0xc
xchg edi, esi
add esi, ecx
inc edi
sub ebx, esi
jmp 0x475bb7
mov edx, dword [edx]
add ebx, 0xf1f525c9
or ecx, esi
dec ecx
and ebx, edi
mov ebx, 0xf1f70451
shr edi, 0x14
jmp 0x477875
add dword [esp + 0x6c], eax
xor edi, ebx
or esi, ebx
add ecx, 0xf22f776c
or esi, edi
and esi, ebx
not ebx
shr edi, 0x11
or ebx, esi
mov ebx, edi
sub esi, ebx
ror ebx, 8
add ecx, 0xf2319bc4
add ebx, 0xf231d7e0
xor edi, esi
sub edi, ecx
jmp 0x477852
mov edx, dword [esp + 0x6c]
shr esi, 0x19
mov ecx, ebx
shl edi, 0x17
xor ecx, ebx
jmp 0x47557c
mov edx, dword [edx]
not esi
shl edi, 0x1b
and esi, 0xf242e573
xchg edi, esi
sub edi, esi
shl edi, 7
shl esi, 0x17
add esi, ebx
rol ebx, 0xd
sub edi, ebx
neg edi
rol ecx, 2
jmp 0x47799a
add dword [esp + 0x6c], 0x78
mov ebx, ecx
xchg edi, ecx
xor ecx, ebx
sub edi, ecx
add edi, esi
and esi, 0xf250c811
xor esi, ebx
neg edi
xchg esi, ecx
mov edi, ebx
jmp 0x47662d
add edx, 0x18
add ecx, esi
xor esi, ecx
mov edi, ecx
mov ebx, edi
not ecx
sub edi, 0xf2595b89
shr ebx, 5
or edi, ebx
jmp 0x477cd4
mov dword [esp + 0x6c], edx
ror ecx, 0x19
or ebx, edi
ror esi, 0xe
or ecx, edi
or ebx, ecx
or ecx, 0xf264cedf
inc edi
and ecx, edi
and ebx, edi
xchg ebx, ecx
mov esi, ecx
or edi, esi
xor esi, 0xf2667f86
rol ebx, 7
xchg ebx, ecx
jmp 0x47976f
add edx, dword [esp + 0x6c]
or ecx, edi
xchg esi, ecx
xor esi, ecx
add ebx, edi
add ecx, edi
mov esi, ebx
or esi, 0xf26b9137
rol edi, 0xb
mov edi, ebx
ror esi, 0x19
nop
shl ebx, 0xe
jmp 0x4783ad
pop edx
and ecx, 0xf26fb2c3
or esi, ebx
sub edi, esi
not edi
or edi, ecx
dec esi
xor edi, 0xf2711f38
sub ecx, 0xf2715ded
neg edi
jmp 0x4790b2
mov edx, dword [edx]
xor esi, ecx
dec ecx
and esi, edi
inc edi
dec ecx
xor edi, esi
sub edi, 0xf27f2440
bswap ebx
add esi, ecx
or esi, 0xf27fdb9a
jmp 0x47931f
mov edx, dword [edx]
ror ecx, 0x14
mov ebx, 0xf2954b04
and edi, ebx
rol esi, 0x17
bswap ebx
or esi, ebx
sub edi, 0xf2968588
xor ecx, esi
and ecx, esi
dec ebx
inc edi
jmp 0x4795ba
add esp, 0x90
sub ebx, esi
rol edi, 0xd
xchg edi, ebx
xchg ecx, esi
add ecx, edi
add ebx, 0xf2ae0177
and edi, 0xf2ae3d2a
sub edi, ecx
add ecx, ebx
xchg edi, esi
and edi, 0xf2af2867
jmp 0x4769f0
mov edx, dword [esp + 0x1c]
or edi, ecx
and ecx, 0xf2b6cb6b
inc ecx
sub edi, ecx
xor edi, ecx
jmp 0x476722
mov dword [esp + 0x58], 0
sub ebx, esi
sub ecx, esi
mov edi, 0xf2cc3dd4
or ecx, 0xf2cc7bf7
add esi, ebx
bswap esi
sub edi, ebx
or edi, ecx
jmp 0x478c62
mov edx, dword [edx]
shl edi, 0x13
mov ecx, esi
sub ebx, edi
sub edi, esi
or ebx, edi
jmp 0x4780d5
mov dword [esp + 0x6c], edx
xchg ecx, ebx
sub ecx, edi
or edi, ebx
xor ecx, esi
or edi, ecx
nop
mov ecx, 0xf2ded785
bswap ecx
xor esi, edi
jmp 0x477931
add dword [esp + 0x6c], 4
xor esi, 0xf2e3aab6
sub edi, ebx
shl esi, 0x1e
mov edi, esi
bswap edi
and edi, ebx
mov ecx, esi
jmp 0x4790be
mov dword [esp + 0x78], edx
ror esi, 0x1b
add ebx, edi
shr edi, 0x13
inc ecx
add ecx, edi
add esi, edi
xor ecx, 0xf2ee61c7
mov ebx, 0xf2ee9e89
bswap esi
add ecx, 0xf2ef1aa7
not edi
xor esi, edi
not ebx
jmp 0x475717
add dword [esp + 0x6c], 0x20
xchg esi, ebx
or ebx, ecx
shr ecx, 5
or ecx, esi
rol esi, 1
ror ecx, 5
xor esi, ecx
inc ebx
xchg esi, ebx
jmp 0x47862a
mov edx, dword [edx]
rol ecx, 6
mov esi, ebx
and esi, 0xf30f132e
shr esi, 8
xchg ebx, edi
mov ecx, ebx
jmp 0x478878
xor eax, eax
inc esi
neg edi
add edi, ebx
sub edi, ebx
shl ecx, 0xc
xchg ecx, ebx
or edi, ecx
or ebx, esi
xor esi, 0xf329d115
mov ecx, 0xf32a0d95
jmp 0x479720
mov edx, dword [esp + 0x6c]
sub ebx, 0xf340015a
not ecx
xor ebx, esi
add esi, 0xf340ba60
or ebx, 0xf340f8a7
mov edi, 0xf34135f1
ror esi, 0xc
xor esi, 0xf341c28c
add edi, ecx
and ecx, esi
sub ebx, esi
jmp 0x475d77
mov dword [esp + 0x6c], edx
xchg ebx, edi
and ebx, edi
or ecx, edi
shl ecx, 7
or ebx, ecx
rol edi, 0x1e
mov ebx, 0xf36b412f
inc ebx
mov edi, esi
and esi, ecx
jmp 0x4788b3
mov edx, dword [esp + 0x58]
xor ecx, ebx
add edi, ecx
sub ecx, 0xf36e7fc8
xchg ecx, ebx
and edi, esi
xor esi, edi
mov edi, ebx
rol edi, 0x15
xor esi, edi
and ebx, esi
xor ebx, edi
xchg ebx, edi
mov ebx, 0xf370dbab
xor edi, ebx
sub esi, 0xf371526b
jmp 0x478ac3
rol eax, 8
neg esi
neg edi
and esi, 0xf37f3320
add ecx, ebx
or edi, ebx
mov ebx, edi
shr edi, 4
sub ecx, 0xf38063a4
or esi, ecx
shr edi, 0x1b
jmp 0x47638b
add dword [esp + 0x6c], edx
inc ecx
xor esi, ecx
sub esi, 0xf39647e6
xchg ecx, edi
shr ecx, 0x19
and esi, 0xf3970edc
xor edi, esi
ror ebx, 0x14
and esi, ebx
xchg edi, esi
sub ebx, esi
sub ebx, ecx
mov ebx, esi
jmp 0x478224
mov dword [esp + 0x6c], 0
ror ebx, 8
add edi, ebx
sub ebx, edi
add edi, esi
jmp 0x475a91
mov edx, dword [esp + 0x78]
mov esi, ebx
xchg edi, ebx
mov esi, edi
sub esi, ecx
xor ecx, esi
shl ebx, 0x15
xchg esi, edi
mov esi, ecx
or ecx, esi
not ebx
shr ebx, 0x17
xor edi, ebx
inc ebx
xor ecx, edi
jmp 0x475613
sub esp, 0x90
xor esi, 0xf3c4ce61
rol ecx, 0x1b
xor esi, ecx
xor esi, ecx
and esi, ebx
and ecx, ebx
add esi, ebx
shl esi, 8
bswap edi
sub esi, edi
sub edi, esi
jmp 0x4797eb
mov edx, dword [edx]
neg edi
or ecx, ebx
mov ecx, ebx
mov ecx, 0xf40168ab
and edi, ecx
jmp 0x477095
cmp byte [edx], 0
jmp 0x478e53
jne 0x479720
and ebx, 0xf40c7626
add ebx, ecx
xor esi, edi
shr edi, 0x1b
xor esi, edi
xchg ebx, ecx
sub esi, 0xf40dedcb
neg esi
mov edi, ecx
jmp 0x477ad1
cmp eax, dword [esp + 0x14]
jmp 0x476574
mov edx, dword [esp + 0x6c]
mov esi, edi
or edi, ecx
mov ecx, esi
add esi, 0xf43a15cf
and edi, ebx
mov ecx, esi
xor ecx, ebx
or ebx, edi
rol esi, 0x1b
xchg esi, edi
or esi, ebx
mov ecx, 0xf43c099a
jmp 0x478d9b
sub dword [esp + 0x6c], 8
xchg esi, edi
or ebx, ecx
xchg ecx, edi
mov edi, ebx
add ebx, 0xf44c8394
not edi
or ecx, 0xf44d1122
or ebx, edi
and ecx, 0xf44d8c81
jmp 0x476aa0
add edx, dword [esp + 0x58]
rol edi, 0x17
add edi, ecx
nop
sub esi, ecx
add ecx, esi
and ebx, ecx
xchg ecx, ebx
xchg ecx, ebx
sub ecx, ebx
sub edi, 0xf4646892
jmp 0x477a32
mov dword [esp + 0x78], 0
xchg esi, edi
and esi, ebx
and edi, esi
sub ebx, esi
shr esi, 0x16
or ecx, ebx
jmp 0x477fdb
mul edx
not edi
sub ebx, ecx
add edi, 0xf4708671
xchg ebx, ecx
not edi
or esi, edi
inc esi
sub ecx, esi
xor ebx, esi
jmp 0x477758
mov dword [esp + 0x58], edx
xor esi, ecx
mov ebx, 0xf496d22c
xchg ecx, esi
mov ebx, edi
inc ecx
or ebx, ecx
mov edi, 0xf497fd19
add ebx, edi
bswap ecx
jmp 0x47530a
add dword [esp + 0x78], 4
not esi
and ecx, ebx
bswap ecx
nop
or edi, ebx
add edi, ebx
dec edi
xchg ecx, edi
or ebx, esi
sub esi, ebx
shl ecx, 0x10
jmp 0x478cf3
xor al, byte [edx]
mov ebx, edi
nop
add edi, ebx
and edi, ecx
and ebx, 0xf4b08ed3
bswap ebx
xor edi, ebx
jmp 0x478994
mov edx, dword [esp + 0x78]
xor ecx, edi
xor ebx, ecx
bswap esi
sub ebx, esi
xor edi, ecx
xor esi, 0xf4b6d79b
and edi, ebx
jmp 0x475f51
mov dword [esp + 0x1c], 0
and esi, ebx
mov ecx, esi
and ecx, 0xf4be7eec
xor ecx, ebx
or edi, esi
mov ebx, 0xf4bf2e42
sub ebx, esi
sub ecx, esi
and ebx, 0xf4bff177
and esi, ebx
neg edi
jmp 0x479355