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

Disassembly:
mov edx, dword [edx]
bswap ecx
mov esi, edi
sub ecx, esi
sub ecx, edi
xchg esi, ebx
mov ecx, esi
or ebx, esi
mov ecx, 0xb4eeec9c
or edi, 0xb4ef2a32
jmp 0x477b04
mov edx, dword [esp + 0xd4]
mov edi, esi
or edi, ecx
xor edi, esi
shr esi, 0x19
mov esi, 0xb5003798
neg esi
or edi, 0xb5010d28
mov esi, edi
not ecx
jmp 0x477cf3
mov edx, dword [edx]
xchg esi, ebx
xchg esi, ebx
add ebx, ecx
or ecx, ebx
mov edi, esi
bswap ecx
xchg edi, ecx
bswap ebx
mov ebx, edi
xor ecx, esi
xchg ebx, esi
or edi, 0xb5321498
jmp 0x478adf
mov edx, dword [esp + 0xd4]
bswap esi
add edi, esi
mov ebx, edi
sub ebx, ecx
xchg ebx, esi
add ecx, ebx
and esi, ebx
xchg edi, ebx
or esi, edi
and ebx, edi
and edi, esi
not edi
jmp 0x4779a9
add dword [esp + 0xd4], 0x20
xor ecx, ebx
add ebx, 0xb54db1a3
and esi, 0xb54e0ec7
ror ebx, 0x15
and esi, ecx
mov edi, 0xb552aaea
bswap ebx
jmp 0x475a9e
ret
add edx, 0x18
and edi, ebx
add edi, 0xb56b5d30
xor esi, 0xb56b9c9f
or ecx, 0xb56bd3ee
xor esi, ecx
or esi, edi
mov edi, ecx
dec esi
not ecx
sub edi, ebx
jmp 0x475c1c
cmp eax, dword [esp + 0x68]
jmp 0x4776b2
add dword [esp + 0xd4], edx
neg ebx
add esi, ecx
shl edi, 9
sub esi, edi
and esi, ebx
add ecx, edi
rol ecx, 9
jmp 0x475d26
mov edx, dword [edx]
and ebx, edi
mov ecx, edi
add esi, 0xb5ab8ccd
bswap edi
xor ecx, 0xb5abf938
nop
inc esi
add esi, 0xb5ac9b4c
sub esi, 0xb5acdb4a
dec ebx
xor esi, ebx
jmp 0x477421
mov edx, dword [esp + 0x18]
inc esi
add edi, esi
xor esi, ecx
inc ecx
bswap ecx
sub ebx, 0xb5b630b0
or ecx, 0xb5b6738e
sub ebx, 0xb5b6a62e
jmp 0x47620c
add edx, dword [esp + 0xd4]
rol esi, 3
shr ebx, 8
mov edi, esi
not edi
jmp 0x479142
mov dword [esp + 0xd4], 0
shl ecx, 0x13
mov edi, esi
shr ebx, 0x16
jmp 0x4787e6
add esp, 0xec
add ecx, esi
xor esi, 0xb602f198
ror ebx, 4
ror ebx, 1
xor ecx, 0xb6050bd4
mov ecx, ebx
mov ebx, esi
xchg esi, edi
shl ebx, 3
and ecx, esi
and ebx, 0xb60648d3
xor esi, 0xb6067fd9
or ecx, esi
add edi, esi
jmp 0x475e0c
mul edx
xor edi, ecx
and ebx, ecx
dec ebx
xor edi, ebx
xor ebx, edi
not edi
xchg ecx, edi
jmp 0x477f41
push edx
add esi, ecx
or esi, ecx
mov ebx, esi
bswap ebx
mov esi, 0xb6241239
add edi, ecx
jmp 0x476f74
mov edx, 0x30
bswap edi
not ebx
sub ebx, 0xb65fc70d
sub ecx, edi
sub ecx, esi
and esi, ebx
jmp 0x47850a
add edx, dword [esp + 0x18]
shl ecx, 0x17
bswap ecx
or esi, ebx
and ebx, ecx
or edi, ecx
xor ecx, esi
xchg ecx, ebx
or edi, 0xb66c675a
jmp 0x476586
mov dword [esp + 0x1c], eax
and ecx, edi
xor edi, esi
not ecx
xor esi, ecx
or ecx, 0xb67394b4
add ebx, esi
sub esi, 0xb67469b1
inc ecx
and ebx, esi
jmp 0x477591
mov edx, dword [esp + 0x18]
add ebx, esi
mov ecx, esi
xor edi, 0xb676b6dc
xor esi, edi
xchg ecx, esi
xchg esi, ebx
dec edi
or edi, ebx
or esi, ebx
neg esi
or ecx, ebx
neg ebx
ror esi, 0x1c
sub edi, ebx
jmp 0x475fae
mov dword [esp + 0xd4], edx
xchg ecx, ebx
shl ecx, 7
add ebx, 0xb689c527
or ecx, ebx
sub ecx, ebx
mov ecx, 0xb68afef6
shr ecx, 9
mov esi, ecx
shl ecx, 0xd
and ebx, esi
shl ecx, 0x19
mov ebx, esi
mov ebx, esi
and ebx, edi
jmp 0x47674d
mov dword [esp + 0xd4], edx
mov ebx, ecx
mov ecx, 0xb6c0de6c
or edi, 0xb6c145ac
neg esi
dec ecx
bswap ecx
jmp 0x478d02
inc edx
and ebx, edi
mov esi, 0xb6e2fa02
mov esi, 0xb6e3310a
or ecx, edi
xchg ebx, edi
xchg ecx, esi
add ebx, ecx
and edi, 0xb6e43f24
rol esi, 0x1c
mov edi, esi
mov ecx, ebx
jmp 0x477e80
mov dword [esp + 0xe8], edx
add ecx, 0xb6fdc671
and edi, ebx
inc edi
shl ecx, 0xf
ror ebx, 0xf
or edi, ecx
and esi, ebx
mov edi, 0xb708bcef
or esi, 0xb70920ba
sub ecx, 0xb7098783
dec edi
jmp 0x476cbb
rol eax, 8
add esi, ebx
and esi, 0xb72a4fa3
and esi, edi
not ecx
xchg ebx, esi
ror edi, 0x1f
and edi, ebx
sub ecx, esi
mov esi, edi
add esi, edi
dec ebx
jmp 0x4769bf
mov edx, dword [edx]
xchg esi, ebx
add ecx, edi
and esi, 0xb750b39c
sub ecx, esi
xchg ecx, ebx
inc edi
xchg ecx, esi
add ebx, 0xb7529870
neg ecx
shl edi, 0x17
and edi, esi
mov ebx, esi
mov ebx, 0xb75a6317
xor esi, 0xb75ac6f2
jmp 0x476707
inc dword [esp + 0x1c]
rol ebx, 0x1e
sub ebx, ecx
xor esi, ecx
sub ecx, ebx
add ecx, esi
xchg esi, edi
jmp 0x476f4c
mov dword [esp + 0x1c], 0
bswap esi
xchg edi, ecx
mov ecx, 0xb7c3e2ee
and ebx, esi
add edi, esi
xor edi, ebx
rol esi, 2
jmp 0x47809c
add dword [esp + 0xe8], 4
xor ecx, esi
xor ebx, ecx
xchg ebx, edi
or ebx, 0xb7c74b2f
add esi, ebx
mov edi, ecx
sub ebx, esi
sub esi, ebx
shl ecx, 7
and ebx, esi
xchg ebx, esi
jmp 0x478e0f
xor eax, eax
inc edi
mov ecx, edi
or ecx, edi
mov ecx, 0xb7cbd167
not esi
mov ebx, ecx
xchg esi, ecx
mov edi, ecx
add ecx, ebx
xchg ecx, ebx
xor ebx, ecx
add edi, esi
neg edi
rol edi, 0x12
jmp 0x477367
jne 0x477367
rol esi, 0x1f
sub ebx, esi
xor esi, 0xb9738bfa
mov edi, esi
xchg ebx, edi
xchg ecx, esi
xchg ecx, edi
add esi, 0xb9758f1c
or esi, 0xb975f55e
jmp 0x4785ae
add edx, dword [esp + 0x1c]
xor esi, ebx
mov esi, 0xb98be256
ror edi, 6
neg ecx
mov esi, ecx
xor esi, 0xb991617a
and ecx, 0xb991be40
add edi, esi
or edi, esi
add ecx, esi
sub ecx, 0xb9932f0c
add esi, edi
jmp 0x47777d
mov edx, dword [esp + 0xe8]
ror ecx, 0x1c
and ecx, edi
nop
xchg ebx, ecx
or esi, 0xb9a95333
sub ebx, edi
or ebx, ecx
rol esi, 0x1d
xchg ecx, esi
shr ecx, 0x16
jmp 0x4771d7
xor al, byte [edx]
sub esi, ebx
add ecx, edi
sub esi, ecx
sub esi, 0xb9e16677
mov ebx, 0xb9e1cdf0
ror esi, 0xe
and ebx, 0xb9e2adb8
add ecx, esi
mov ecx, 0xb9e37069
mov esi, ebx
and ecx, ebx
not ebx
jmp 0x476b92
mov edx, dword [edx]
or edi, 0xb9fe33f7
and ebx, 0xb9fe941d
add esi, ebx
or edi, 0xb9ff6399
sub esi, edi
or ebx, edi
or esi, 0xba0096f1
rol ebx, 6
or ebx, ecx
sub esi, 0xba01dc3d
and edi, esi
shl esi, 9
mov edi, 0xba05146e
or ebx, esi
and ebx, 0xba05d5cc
jmp 0x475e56
mov edx, dword [edx]
xchg esi, edi
ror esi, 5
add esi, ecx
sub ecx, edi
and ebx, ecx
xchg ecx, esi
shl edi, 9
jmp 0x476910
sub dword [esp + 0xd4], 8
or edi, esi
add ecx, esi
xchg ecx, esi
shl edi, 0xb
shr ebx, 0x19
or ecx, ebx
mov esi, ecx
xor ebx, esi
sub edi, esi
shr ebx, 0x14
jmp 0x478b8a
mov dword [esp + 0xd4], edx
add edi, ecx
neg ebx
or ebx, edi
xor ebx, 0xba6656ab
sub edi, ecx
and esi, edi
or ebx, ecx
shl ecx, 0x18
mov esi, ecx
mov edi, 0xba68c2df
sub ecx, 0xba6928ff
jmp 0x4772b3
jne 0x476cbb
add ebx, edi
or ebx, edi
or esi, edi
dec edi
bswap edi
mov ecx, 0xba7b5bde
and edi, ecx
jmp 0x478c32
add edx, dword [esp + 0x18]
sub ebx, 0xba83632e
and edi, ecx
or edi, esi
xchg ebx, edi
mov ebx, ecx
mov ebx, esi
xchg esi, ecx
xor ebx, ecx
xchg ebx, ecx
jmp 0x476a54
mov eax, 4
or edi, esi
and edi, 0xba96a37f
add ebx, ecx
mov ecx, 0xba977e66
and edi, esi
sub ebx, esi
jmp 0x478aaa
mov edx, dword [edx]
mov esi, ebx
or ecx, 0xbb1bae78
not ebx
xor edi, 0xbb1c76a0
sub edi, ecx
or ebx, 0xbb1d4b2a
or ecx, edi
jmp 0x4779da
add edx, dword [esp + 0x18]
and ebx, esi
mov edi, ebx
or esi, 0xbb207061
neg esi
neg ebx
sub esi, ecx
xchg ecx, edi
xor ecx, 0xbb227e21
and ecx, edi
and ecx, 0xbb234169
neg esi
jmp 0x478770
add edx, 0xc
mov ebx, esi
dec ecx
mov edi, ebx
ror ebx, 1
jmp 0x477c63
add edx, dword [esp + 0x18]
shl edi, 0x15
shr ecx, 0x1a
jmp 0x47763e
mov edx, dword [edx]
and esi, 0xbbe57fb6
xor edi, esi
bswap ebx
or edi, esi
mov ebx, 0xbbe70ce1
mov edi, ecx
xor esi, ecx
mov ecx, ebx
jmp 0x4790f6
mov edx, dword [esp + 0x1c]
add ebx, edi
xchg edi, ebx
mov ecx, ebx
ror ebx, 0xc
shl edi, 0xf
neg edi
neg ecx
xor ecx, 0xbbf19183
or edi, esi
xchg edi, ebx
add esi, edi
rol edi, 0x15
jmp 0x478422
mov edx, dword [edx]
mov esi, 0xbbf8d751
dec edi
shl ebx, 5
add ecx, esi
shl ebx, 0x1d
xor ebx, ecx
shl ecx, 7
and edi, ebx
mov ecx, 0xbbfc478c
xor ecx, ebx
add ecx, 0xbbfd194f
or ebx, esi
add ecx, esi
and ecx, edi
shr ebx, 0x1f
jmp 0x4776f7
add edx, 0x3c
xchg esi, ebx
sub ecx, 0xbc1f1e7a
dec ebx
or esi, ecx
mov esi, ebx
inc ebx
and ecx, esi
and ecx, esi
and ebx, 0xbc22199c
rol esi, 0x11
neg ecx
sub ebx, esi
jmp 0x47751c
cmp byte [edx], 0
jmp 0x477144
add dword [esp + 0xd4], eax
add edi, esi
mov esi, ecx
xor ebx, 0xbc45cea7
add esi, ebx
shl esi, 4
xchg ecx, ebx
xchg edi, ebx
jmp 0x478f2c
mov dword [esp + 0xe8], 0
and ebx, esi
sub ebx, ecx
xor ecx, edi
add esi, ecx
ror esi, 7
neg ebx
xchg ecx, edi
dec esi
add esi, 0xbc7dccd3
add ebx, 0xbc7e0041
sub esi, 0xbc7e376d
ror edi, 0x13
xchg ecx, edi
dec edi
mov ebx, 0xbc7f0d7d
xor ecx, esi
jmp 0x479027
mov edx, dword [edx]
dec esi
add ebx, ecx
add ecx, ebx
xor ebx, 0xbc802d78
inc edi
ror edi, 0x11
xor edi, 0xbc80cc38
and esi, ebx
ror edi, 0x1f
jmp 0x4782bc
add edx, dword [esp + 0x18]
xchg esi, ecx
xor edi, ebx
sub ecx, ebx
add esi, ecx
shr ecx, 0x1f
or esi, ebx
mov esi, 0xbcae1c8d
or esi, ebx
inc esi
and esi, ecx
sub esi, edi
inc ecx
shl ecx, 0x10
jmp 0x4764d9
mul edx
dec ecx
xchg ebx, ecx
and esi, ecx
and ebx, edi
xor edi, ecx
xor ebx, 0xbccfe113
or edi, ecx
neg esi
xor edi, esi
and ebx, edi
mov edi, ecx
sub esi, ecx
mov ecx, 0xbcd32f3c
jmp 0x476728
mov eax, 2
and ecx, 0xbcf4a4ad
sub ebx, edi
xor ecx, ebx
sub ecx, ebx
shr edi, 0x10
jmp 0x477ca4
mov edx, dword fs:[edx]
ror esi, 0x12
sub ebx, esi
neg ecx
shl esi, 4
xor esi, ecx
and esi, 0xbcfb8ec8
or ebx, esi
and ebx, edi
xchg esi, ecx
jmp 0x477a79
mov edx, dword [edx]
bswap edi
xor ecx, edi
xchg edi, ebx
xchg ecx, ebx
mov ebx, edi
jmp 0x476132
pop edx
dec edi
dec esi
ror edi, 0x1d
mov ebx, ecx
and ecx, ebx
not ecx
not edi
jmp 0x475ecd
mov edx, dword [esp + 0x18]
sub edi, 0xbd0af9d7
add ebx, 0xbd0f64a1
shl ecx, 7
jmp 0x477e2e
mov dword [esp + 0xe8], edx
add ecx, edi
or esi, edi
mov esi, edi
shr ebx, 0x1c
xor ecx, 0xbd40e7ee
xor ebx, esi
inc edi
jmp 0x4784f1
mov dword [esp + 0x68], edx
neg esi
sub ecx, edi
sub esi, 0xbd4de07e
add edi, ecx
and ecx, esi
sub ecx, ebx
dec ebx
xchg ebx, ecx
rol ebx, 2
jmp 0x4766c6
movzx edx, word [edx]
add esi, 0xbdae20f4
shr esi, 9
xchg ecx, esi
xchg ecx, esi
or edi, esi
and edi, ecx
jmp 0x476552
mov dword [esp + 0x18], edx
or edi, esi
or esi, ecx
and ecx, ebx
bswap esi
or ecx, ebx
shl esi, 0x12
or ecx, ebx
mov edi, ebx
sub esi, ebx
sub ecx, ebx
xor edi, 0xbdb71e0b
sub esi, ecx
ror ecx, 0xd
and esi, 0xbdb7bf58
and ebx, esi
or esi, edi
jmp 0x4785c1
mov edx, dword [esp + 0xd4]
add edi, ecx
bswap esi
xchg edi, ebx
bswap edi
add ebx, ecx
shl ecx, 0x13
shr ebx, 8
jmp 0x475a2f
add dword [esp + 0xd4], 4
shl edi, 0xc
mov esi, ecx
shr ebx, 5
or edi, 0xbdd053e2
ror ebx, 0x1c
add edi, 0xbdd6cace
ror ebx, 0x16
jmp 0x475cf0
add dword [esp + 0xd4], 0x78
mov ecx, esi
or esi, ebx
rol esi, 0x12
inc esi
and ecx, edi
add edi, esi
sub edi, ebx
and edi, ebx
xchg ebx, esi
mov esi, ecx
add ebx, 0xbdf0843e
mov ebx, esi
xchg edi, ecx
add edi, ecx
and ebx, edi
inc ecx
jmp 0x47618c
sub esp, 0xec
xor edi, 0xbe04ebb0
nop
xor esi, ecx
or ebx, esi
mov ebx, esi
and edi, 0xbe05f9d9
or ecx, 0xbe065b5e
jmp 0x476f2a
mov edx, dword [esp + 0xe8]
dec edi
or ecx, 0xbe0d0a64
xor edi, 0xbe0d4389
and ebx, ecx
xchg ecx, edi
or ebx, 0xbe0ddebe
or esi, edi
add ebx, 0xbe0e5030
and edi, ebx
xor ecx, edi
jmp 0x476c89
mov edx, dword [esp + 0xd4]
shl esi, 6
sub ecx, 0xbe2c3e72
shl esi, 6
sub ecx, esi
add esi, ebx
or esi, ecx
add esi, 0xbe2e378c
jmp 0x4780db
mov dword [esp + 0x18], 0
mov ecx, edi
xor edi, ecx
dec esi
add esi, ebx
add ebx, ecx
and esi, ebx
and ebx, 0xbe44ceb0
jmp 0x47625f
add edx, 0xc
sub ecx, 0xbe641968
mov ebx, ecx
or ecx, 0xbe64891a
add edi, esi
xchg ecx, esi
and edi, 0xbe65223d
xchg ebx, ecx
mov esi, 0xbe658c81
and ebx, ecx
jmp 0x47852a
mov edx, dword [edx]
and ebx, ecx
or ebx, 0xbe6b2dc4
or ebx, 0xbe6b6087
inc esi
mov ecx, edi
mov esi, ecx
or ecx, edi
mov ebx, edi
jmp 0x4767b3