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

Disassembly:
sub esp, 0x6c
push ebp
push esi
push edi
mov edi, dword [0x10021fd8]
xor edx, edx
mov dword [esp + 0x4c], 0xfb17
add edi, 0x22c
xor dword [esp + 0x4c], 0x27da679
mov ecx, 0x7745d4e
xor dword [esp + 0x4c], 0xad5189ae
xor dword [esp + 0x4c], 0xaf2cbc4e
mov dword [esp + 0x64], 0x9cbe
shl dword [esp + 0x64], 5
xor dword [esp + 0x64], 0x13d1bb
mov dword [esp + 0x38], 0xb6c3
or dword [esp + 0x38], 0x8ceac323
imul eax, dword [esp + 0x38], 0x4c
push 0x4a
pop esi
push 0x66
mov dword [esp + 0x3c], eax
xor dword [esp + 0x3c], 0xd5c1d69f
mov dword [esp + 0x58], 0x7dd1
add dword [esp + 0x58], 0xffffb74b
xor dword [esp + 0x58], 0x79c7
mov dword [esp + 0x14], 0x8704
xor dword [esp + 0x14], 0xb281bbbf
shl dword [esp + 0x14], 1
xor dword [esp + 0x14], 0xfb8fb2d4
xor dword [esp + 0x14], 0x9e8d928a
mov dword [esp + 0x10], 0x1be7
shl dword [esp + 0x10], 8
or dword [esp + 0x10], 0xffbeffef
xor dword [esp + 0x10], 0xffbfdebc
mov dword [esp + 0x40], 0x4b3a
xor dword [esp + 0x40], 0x7b1fd3a1
mov eax, dword [esp + 0x40]
div esi
xor edx, edx
mov dword [esp + 0x40], eax
xor dword [esp + 0x40], 0x1a9904e
mov dword [esp + 0x64], 0x5d4f
xor dword [esp + 0x64], 0xf5181fb0
xor dword [esp + 0x64], 0xf51873aa
mov dword [esp + 0x60], 0x71f1
xor dword [esp + 0x60], 0xdd2998f0
xor dword [esp + 0x60], 0xdd298815
mov dword [esp + 0x5c], 0x25c8
shl dword [esp + 0x5c], 0xa
xor dword [esp + 0x5c], 0x976b21
mov dword [esp + 0x4c], 0x3f8d
add dword [esp + 0x4c], 0x60e3
imul eax, dword [esp + 0x4c], 0x42
pop esi
mov dword [esp + 0x48], eax
xor dword [esp + 0x48], 0x291d63
mov dword [esp + 0x14], 0x51a1
or dword [esp + 0x14], 0xc517db51
xor dword [esp + 0x14], 0xcc60a5a
imul eax, dword [esp + 0x14], 0x7f
mov dword [esp + 0x14], eax
xor dword [esp + 0x14], 0x1f176245
mov dword [esp + 0x44], 0x1fd5
shl dword [esp + 0x44], 4
shl dword [esp + 0x44], 7
xor dword [esp + 0x44], 0xfeb526
mov dword [esp + 0x40], 0xd83d
xor dword [esp + 0x40], 0x95e32b8c
shl dword [esp + 0x40], 7
xor dword [esp + 0x40], 0xf1f9a222
mov dword [esp + 0x1c], 0xc508
shr dword [esp + 0x1c], 2
imul eax, dword [esp + 0x1c], 0x59
mov dword [esp + 0x1c], eax
imul eax, dword [esp + 0x1c], 0x66
mov dword [esp + 0x1c], eax
xor dword [esp + 0x1c], 0x6d2de05
mov dword [esp + 0x6c], 0x31a
mov eax, dword [esp + 0x6c]
div esi
mov dword [esp + 0x6c], eax
xor dword [esp + 0x6c], 0x3592
mov ebp, 0x2f0c27ee
mov dword [esp + 0x68], 0x2494
shl dword [esp + 0x68], 0xe
xor dword [esp + 0x68], 0x9253183
mov dword [esp + 0x18], 0x6c76
shr dword [esp + 0x18], 0xa
xor dword [esp + 0x18], 0xe7eef47
or dword [esp + 0x18], 0xad17f9f2
xor dword [esp + 0x18], 0xaf7f91af
mov dword [esp + 0x28], 0x8a06
or dword [esp + 0x28], 0x53af1180
imul eax, dword [esp + 0x28], 0x33
mov dword [esp + 0x28], eax
shr dword [esp + 0x28], 0x10
xor dword [esp + 0x28], 0xb93e
mov dword [esp + 0x24], 0xdeab
or dword [esp + 0x24], 0x9a0bc06e
shl dword [esp + 0x24], 9
add dword [esp + 0x24], 0xffffffe8
xor dword [esp + 0x24], 0x17bdcfd9
mov dword [esp + 0x70], 0x7784
imul eax, dword [esp + 0x70], 0x32
mov dword [esp + 0x70], eax
xor dword [esp + 0x70], 0x172d44
mov dword [esp + 0x20], 0x8bb3
shl dword [esp + 0x20], 0xd
or dword [esp + 0x20], 0xfc17ffbf
xor dword [esp + 0x20], 0xfd77da45
mov dword [esp + 0x50], 0xcc8b
add dword [esp + 0x50], 0xffffc35b
add dword [esp + 0x50], 0xffff56f4
xor dword [esp + 0x50], 0xffff9e7a
mov dword [esp + 0x34], 0xebec
shl dword [esp + 0x34], 7
xor dword [esp + 0x34], 0xf5ab4ccd
shr dword [esp + 0x34], 6
xor dword [esp + 0x34], 0x3d74976
mov dword [esp + 0x30], 0xd009
add dword [esp + 0x30], 0xffff5c3e
shl dword [esp + 0x30], 5
shl dword [esp + 0x30], 3
xor dword [esp + 0x30], 0x2c2ebb
mov dword [esp + 0x2c], 0x459a
shr dword [esp + 0x2c], 0xc
add dword [esp + 0x2c], 0xfffffdfe
add dword [esp + 0x2c], 0xffffbd16
xor dword [esp + 0x2c], 0xffff9ca3
cmp ecx, 0x6a50839
je 0x18aa32
cmp ecx, 0x7745d4e
je 0x18aa1a
cmp ecx, 0x12348a90
je 0x18aa98
cmp ecx, ebp
jne 0x18aa8a
mov eax, dword [esp + 0xc]
sub esp, 0x10
mov eax, dword [esp + 0x20]
mov eax, dword [esp + 0x64]
mov eax, dword [esp + 0x48]
push 4
pop edx
push 0x10
pop ecx
call fcn.001974f6
push dword [esp + 0x68]
mov edx, edi
lea ecx, [esp + 0x88]
push 1
push 2
push dword [esp + 0x78]
mov esi, eax
push dword [esp + 0x80]
push dword [esp + 0x60]
call fcn.0019bbcd
push dword [esp + 0x68]
add edi, 2
lea ecx, [esp + 0xa0]
push esi
push 1
push dword [esp + 0x78]
mov edx, edi
push dword [esp + 0x4c]
push dword [esp + 0x84]
call fcn.0019bbcd
add esp, 0x40
lea edi, [edi + esi*2]
mov ecx, 0x6a50839
push 0x5c
pop eax
mov word [edi], ax
add edi, 2
jmp 0x18a969
mov eax, dword [esp + 0x64]
mov eax, dword [esp + 0x4c]
call fcn.00192f73
mov dword [esp + 0x74], eax
mov ecx, ebp
jmp 0x18a969
mov eax, dword [esp + 0x18]
sub esp, 0x10
mov eax, dword [esp + 0x78]
mov eax, dword [esp + 0x7c]
mov eax, dword [esp + 0x2c]
push 4
pop edx
push 0x10
pop ecx
call fcn.001974f6
push dword [esp + 0x30]
mov esi, eax
lea ecx, [esp + 0x88]
push esi
push 1
push dword [esp + 0x8c]
mov edx, edi
push dword [esp + 0x44]
push dword [esp + 0x4c]
call fcn.0019bbcd
add esp, 0x28
lea edi, [edi + esi*2]
mov ecx, 0x12348a90
push 0x2e
pop eax
mov word [edi], ax
add edi, 2
cmp ecx, 0x325243ef
jne 0x18a969
jmp 0x18aac0
push dword [esp + 0x2c]
mov edx, edi
lea ecx, [esp + 0x78]
push 3
push 1
push dword [esp + 0x3c]
push dword [esp + 0x44]
push dword [esp + 0x64]
call fcn.0019bbcd
add esp, 0x18
xor eax, eax
mov word [edi + 6], ax
pop edi
pop esi
pop ebp
add esp, 0x6c
ret