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

Disassembly:
sub esp, 0xd8
push ebx
push ebp
mov ebp, dword [esp + 0xe8]
push esi
push edi
push ebp
push dword [esp + 0xf0]
push edx
push ecx
call fcn.0028621e
mov dword [esp + 0xe8], 0x817b2
lea edi, [esp + 0xec]
xor eax, eax
add esp, 0x10
stosd dword es:[edi], eax
xor edx, edx
xor ebx, ebx
mov esi, 0x1f44051e
push 0x37
stosd dword es:[edi], eax
pop ecx
push 0x5a
stosd dword es:[edi], eax
mov dword [esp + 0xb4], 0xb66a
add dword [esp + 0xb4], 0xffff7e17
xor dword [esp + 0xb4], 0x528f
mov dword [esp + 0x5c], 0x5b25
mov eax, dword [esp + 0x5c]
div ecx
xor edx, edx
mov dword [esp + 0x5c], eax
add dword [esp + 0x5c], 0x4f4f
xor dword [esp + 0x5c], 0xd0f3
mov dword [esp + 0x78], 0x4b46
mov eax, dword [esp + 0x78]
pop ecx
div ecx
push 0x28
mov dword [esp + 0x78], eax
xor edx, edx
add dword [esp + 0x78], 0xdfdd
xor dword [esp + 0x78], 0x60b3
mov dword [esp + 0x90], 0xf066
add dword [esp + 0x90], 0xffff4f5b
add dword [esp + 0x90], 0xffff5388
xor dword [esp + 0x90], 0xffff9348
mov dword [esp + 0x38], 0x553e
mov eax, dword [esp + 0x38]
pop ecx
div ecx
mov dword [esp + 0x34], eax
shl dword [esp + 0x34], 9
shr dword [esp + 0x34], 1
xor dword [esp + 0x34], 0x22140
mov dword [esp + 0x78], 0xdef4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x78], eax
xor dword [esp + 0x78], 0x6a1a3d7f
xor dword [esp + 0x78], 0x9a1ae38b
mov dword [esp + 0x3c], 0x2268
xor dword [esp + 0x3c], 0xf4ad3c0b
shr dword [esp + 0x3c], 4
shr dword [esp + 0x3c], 0xb
xor dword [esp + 0x3c], 0x1d5a4
mov dword [esp + 0xcc], 0xe7a5
shl dword [esp + 0xcc], 0xf
xor dword [esp + 0xcc], 0x73d2ee93
mov dword [esp + 0x14], 0x4393
shl dword [esp + 0x14], 2
shl dword [esp + 0x14], 3
add dword [esp + 0x14], 0x4130
xor dword [esp + 0x14], 0x88712
mov dword [esp + 0xc0], 0x7485
add dword [esp + 0xc0], 0xb41a
xor dword [esp + 0xc0], 0x11269
mov dword [esp + 0x48], 0xa60f
add dword [esp + 0x48], 0xffff4e60
add dword [esp + 0x48], 0xffff0cc2
add dword [esp + 0x48], 0x378f
xor dword [esp + 0x48], 0xffff6c5f
mov dword [esp + 0x88], 0x3f2a
mov eax, dword [esp + 0x88]
xor edx, edx
push 3
pop ecx
div ecx
push 0x60
mov dword [esp + 0x8c], eax
xor edx, edx
xor dword [esp + 0x8c], 0xe140978f
xor dword [esp + 0x8c], 0xe140d5db
mov dword [esp + 0xc0], 0x906c
imul eax, dword [esp + 0xc0], 0x2a
pop ecx
push 0x44
mov dword [esp + 0xc0], eax
xor dword [esp + 0xc0], 0x17d354
mov dword [esp + 0x28], 0xbdf1
xor dword [esp + 0x28], 0xdad60915
add dword [esp + 0x28], 0xf74
shl dword [esp + 0x28], 7
xor dword [esp + 0x28], 0x6b626334
mov dword [esp + 0x6c], 0xd8e8
shl dword [esp + 0x6c], 5
xor dword [esp + 0x6c], 0x5e29f09d
xor dword [esp + 0x6c], 0x5e32b95c
mov dword [esp + 0xa0], 0x9da4
add dword [esp + 0xa0], 0xffffaa8a
xor dword [esp + 0xa0], 0x6e67
mov dword [esp + 0x94], 0xf4ce
add dword [esp + 0x94], 0x8eb5
xor dword [esp + 0x94], 0x1bbf9
mov dword [esp + 0x64], 0x2802
mov eax, dword [esp + 0x64]
div ecx
xor edx, edx
mov dword [esp + 0x64], eax
xor dword [esp + 0x64], 0xc011dc18
xor dword [esp + 0x64], 0xc011e9ef
mov dword [esp + 0xac], 0xf3fc
shr dword [esp + 0xac], 2
xor dword [esp + 0xac], 0x700a
mov dword [esp + 0x80], 0x8be5
shl dword [esp + 0x80], 1
or dword [esp + 0x80], 0x7707c59
xor dword [esp + 0x80], 0x7716883
mov dword [esp + 0x9c], 0xbe
shr dword [esp + 0x9c], 4
xor dword [esp + 0x9c], 0x66a5
mov dword [esp + 0x34], 0x33a0
shr dword [esp + 0x34], 1
or dword [esp + 0x34], 0x91718bbb
shl dword [esp + 0x34], 7
xor dword [esp + 0x34], 0xb8cd9f08
mov dword [esp + 0x68], 0xc8e8
or dword [esp + 0x68], 0x9b302d9f
add dword [esp + 0x68], 0xe58f
xor dword [esp + 0x68], 0x9b3187a9
mov dword [esp + 0x50], 0x3d7b
mov eax, dword [esp + 0x50]
pop ecx
div ecx
push 0x41
mov dword [esp + 0x50], eax
xor edx, edx
shl dword [esp + 0x50], 7
xor dword [esp + 0x50], 0x18e8
mov dword [esp + 0x98], 0x7f0d
shr dword [esp + 0x98], 4
xor dword [esp + 0x98], 0x51d7
mov dword [esp + 0x24], 0x5191
mov eax, dword [esp + 0x24]
pop ecx
div ecx
mov dword [esp + 0x20], eax
add dword [esp + 0x20], 0x491c
shl dword [esp + 0x20], 6
xor dword [esp + 0x20], 0x12f220
mov dword [esp + 0x18], 0x2905
imul eax, dword [esp + 0x18], 0x78
mov dword [esp + 0x18], eax
shl dword [esp + 0x18], 1
add dword [esp + 0x18], 0xffff4193
xor edx, edx
xor dword [esp + 0x18], 0x25c859
mov dword [esp + 0xb4], 0x127
xor dword [esp + 0xb4], 0x2e8eeb62
xor dword [esp + 0xb4], 0x2e8e8f9b
mov dword [esp + 0x54], 0x6a07
shl dword [esp + 0x54], 7
shr dword [esp + 0x54], 0xa
xor dword [esp + 0x54], 0x4f0d
mov dword [esp + 0x28], 0x18b
shr dword [esp + 0x28], 2
add dword [esp + 0x28], 0xffff0457
shr dword [esp + 0x28], 0xb
xor dword [esp + 0x28], 0x1f9daa
mov dword [esp + 0x10], 0xc4ba
imul eax, dword [esp + 0x10], 0x1b
push 0xc
pop ecx
push 5
mov dword [esp + 0x14], eax
add dword [esp + 0x14], 0xe4e2
or dword [esp + 0x14], 0xd6e90659
xor dword [esp + 0x14], 0xd6fd9177
mov dword [esp + 0x30], 0xd22
imul eax, dword [esp + 0x30], 0x28
mov dword [esp + 0x30], eax
add dword [esp + 0x30], 0xffff7672
add dword [esp + 0x30], 0x6dd2
xor dword [esp + 0x30], 0x1ca64
mov dword [esp + 0xc8], 0x2bac
mov eax, dword [esp + 0xc8]
div ecx
xor edx, edx
mov dword [esp + 0xc8], eax
xor dword [esp + 0xc8], 0x4753
mov dword [esp + 0x48], 0xd00c
add dword [esp + 0x48], 0xfffff720
mov eax, dword [esp + 0x48]
pop ecx
div ecx
push 0x48
mov dword [esp + 0x48], eax
xor edx, edx
add dword [esp + 0x48], 0xffff6d80
xor dword [esp + 0x48], 0xfffff4a4
mov dword [esp + 0x44], 0x98da
mov eax, dword [esp + 0x44]
pop ecx
div ecx
push 0x52
mov dword [esp + 0x44], eax
xor edx, edx
xor dword [esp + 0x44], 0x3a68587a
shr dword [esp + 0x44], 0xc
xor dword [esp + 0x44], 0x3ea28
mov dword [esp + 0xbc], 0x7f11
mov eax, dword [esp + 0xbc]
pop ecx
div ecx
push 0x47
mov dword [esp + 0xbc], eax
xor edx, edx
xor dword [esp + 0xbc], 0x116e
mov dword [esp + 0x88], 0x7c1f
xor dword [esp + 0x88], 0x3d9419b3
shl dword [esp + 0x88], 5
xor dword [esp + 0x88], 0xb28cdf86
mov dword [esp + 0x84], 0xe4b5
mov eax, dword [esp + 0x84]
pop ecx
div ecx
push 0x56
mov dword [esp + 0x84], eax
xor dword [esp + 0x84], 0x3bda08ae
xor dword [esp + 0x84], 0x3bda50cb
mov dword [esp + 0x74], 0x49af
imul eax, dword [esp + 0x74], 0xd
xor edx, edx
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x74]
pop ecx
div ecx
push 0x15
mov dword [esp + 0x74], eax
xor edx, edx
xor dword [esp + 0x74], 0x2112
mov edi, 0x1bc3e9dd
mov dword [esp + 0x20], 0x2784
shr dword [esp + 0x20], 0xa
shl dword [esp + 0x20], 6
shl dword [esp + 0x20], 0xd
xor dword [esp + 0x20], 0x484274
mov dword [esp + 0x60], 0x5ebb
shl dword [esp + 0x60], 8
add dword [esp + 0x60], 0x8751
xor dword [esp + 0x60], 0x5f310e
mov dword [esp + 0x54], 0x21c4
shl dword [esp + 0x54], 0xa
shr dword [esp + 0x54], 0xe
xor dword [esp + 0x54], 0x1f38
mov dword [esp + 0xb0], 0x5716
shl dword [esp + 0xb0], 0xe
xor dword [esp + 0xb0], 0x15c5d8b0
mov dword [esp + 0xcc], 0x2ddd
add dword [esp + 0xcc], 0xffff518c
xor dword [esp + 0xcc], 0xffff49a8
mov dword [esp + 0xa8], 0xb6d3
mov eax, dword [esp + 0xa8]
pop ecx
div ecx
mov dword [esp + 0xa4], eax
xor dword [esp + 0xa4], 0x732f
mov dword [esp + 0x6c], 0x270
shl dword [esp + 0x6c], 0xa
xor dword [esp + 0x6c], 0xcbdd2980
xor dword [esp + 0x6c], 0xcbd5e980
mov dword [esp + 0xa0], 0x7b5e
add dword [esp + 0xa0], 0x7391
xor dword [esp + 0xa0], 0xeefc
mov dword [esp + 0x38], 0xd50
add dword [esp + 0x38], 0x5b88
or dword [esp + 0x38], 0x6f7941f0
imul eax, dword [esp + 0x38], 0x4a
mov dword [esp + 0x38], eax
xor dword [esp + 0x38], 0x3918a1b1
cmp esi, 0x28537bdf
jg 0x29415c
je 0x294125
cmp esi, 0x829fe70
je 0x2940d4
cmp esi, 0xa8722e2
je 0x2942e5
cmp esi, edi
je 0x2940ad
cmp esi, 0x1e2d8803
je 0x294067
cmp esi, 0x1f44051e
jne 0x2942d2
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0xcc]
mov eax, dword [esp + 0x3c]
push ecx
push ecx
push 0x2c
pop edx
call fcn.00287d07
mov dword [0x29d9f4], eax
pop ecx
pop ecx
test eax, eax
je 0x2942fc
mov esi, 0x829fe70
jmp 0x293ff2
mov eax, dword [0x29d9f4]
push dword [eax + 0xc]
push dword [esp + 0x60]
push ecx
push dword [esp + 0x28]
mov eax, dword [0x29d9f4]
add eax, 8
push eax
push dword [esp + 0x84]
push dword [esp + 0x70]
mov ecx, dword [esp + 0x9c]
call fcn.002933e4
add esp, 0x1c
test eax, eax
jne 0x2942e0
mov esi, 0x28537bdf
jmp 0x293ff2
mov eax, dword [esp + 0x60]
mov eax, dword [esp + 0x90]
push ecx
push ecx
mov ecx, dword [0x29d9f4]
mov ecx, dword [ecx + 0xc]
call fcn.0028e24f
pop ecx
pop ecx
mov esi, 0xa8722e2
jmp 0x293ff2
mov eax, dword [esp + 0x78]
or eax, dword [esp + 0x34]
push eax
push dword [esp + 0xa0]
push ecx
push dword [esp + 0x74]
push dword [esp + 0x34]
push dword [esp + 0xd0]
mov edx, dword [0x29d9f4]
push ecx
push ecx
mov ecx, dword [esp + 0xa8]
lea edx, [edx + 0xc]
call fcn.002901e0
add esp, 0x20
mov esi, eax
neg esi
sbb esi, esi
and esi, 0x2aabdbd5
add esi, 0xa8722e2
jmp 0x293ff2
mov eax, dword [esp + 0xa4]
sub esp, 0xc
mov eax, dword [esp + 0xd4]
mov eax, dword [esp + 0xb8]
mov eax, dword [esp + 0x5c]
mov edx, dword [0x29d9f4]
mov edx, dword [edx + 0x1c]
call fcn.0028f62a
add esp, 0xc
mov esi, 0x390b9012
jmp 0x293ff2
cmp esi, 0x2ddf121d
je 0x294286
cmp esi, 0x3532feb7
je 0x29421c
cmp esi, 0x378bf5ff
je 0x2941b6
cmp esi, 0x390b9012
jne 0x2942d2
mov eax, dword [esp + 0x44]
sub esp, 0xc
mov eax, dword [esp + 0xd0]
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
mov edx, dword [0x29d9f4]
mov edx, dword [edx + 0x28]
call fcn.0028f62a
add esp, 0xc
mov esi, edi
jmp 0x293ff2
mov eax, dword [0x29d9f4]
push ecx
push dword [esp + 0xd4]
add eax, 0x28
push eax
push dword [esp + 0xc0]
mov eax, dword [0x29d9f4]
push dword [eax + 0xc]
push dword [esp + 0x2c]
push dword [esp + 0x38]
mov edx, dword [esp + 0xf0]
push ecx
mov ecx, dword [esp + 0xb4]
call fcn.00285813
mov edx, dword [esp + 0x48]
mov esi, eax
push dword [esp + 0xf0]
mov ecx, dword [esp + 0x78]
neg esi
sbb esi, esi
and esi, 0x121b2840
add esi, edi
call fcn.0029af4c
add esp, 0x24
jmp 0x2942d2
push dword [esp + 0x4c]
lea eax, [esp + 0xd4]
push eax
push dword [esp + 0x6c]
push dword [esp + 0x3c]
mov eax, dword [esp + 0x48]
or eax, dword [esp + 0x7c]
push eax
push dword [ebp + 4]
lea eax, [esp + 0xec]
push dword [esp + 0xb0]
push dword [esp + 0x90]
push eax
push dword [esp + 0xc4]
mov edx, dword [esp + 0xa4]
push ecx
push dword [ebp]
mov ecx, dword [esp + 0xd8]
call fcn.00299506
add esp, 0x30
mov esi, eax
neg esi
sbb esi, esi
and esi, 0x1bc80c22
add esi, edi
jmp 0x293ff2
mov eax, dword [0x29d9f4]
add eax, 0x1c
push eax
push dword [esp + 0x88]
push dword [esp + 0xb8]
mov eax, dword [0x29d9f4]
push dword [eax + 0xc]
push dword [esp + 0xc8]
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0x54]
call fcn.00282aa2
add esp, 0x14
test eax, eax
je 0x2942cd
mov esi, 0x1e2d8803
jmp 0x293ff2
mov esi, 0x390b9012
cmp esi, 0x3a275b2f
jne 0x293ff2
jmp 0x2942fc
xor ebx, ebx
inc ebx
jmp 0x2942fc
mov edx, dword [esp + 0x48]
push dword [0x29d9f4]
mov ecx, dword [esp + 0xc4]
call fcn.00299b59
pop ecx
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0xd8
ret