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

Disassembly:
sub esp, 0x22c
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x114], edx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x78], 0x5303b8
add dword [esp + 0x78], 0xbdcf
shl dword [esp + 0x78], 0xa
xor dword [esp + 0x78], 0x4f061c00
mov dword [esp + 0xa8], 0xcf94df
add dword [esp + 0xa8], 0xffffba0b
shr dword [esp + 0xa8], 8
xor dword [esp + 0xa8], 0x95017
mov dword [esp + 0x28], 0x336d8
xor dword [esp + 0x28], 0x74c4db34
imul eax, dword [esp + 0x28], 0x24
mov dword [esp + 0x28], eax
mov esi, 0x59d96f4
shr dword [esp + 0x28], 0xc
xor dword [esp + 0x28], 0xa85aa
mov dword [esp + 0xc8], 0xb0a82d
add dword [esp + 0xc8], 0xa29e
add dword [esp + 0xc8], 0xffff2ba1
xor dword [esp + 0xc8], 0xb1f9f7
mov dword [esp + 0x88], 0x6bada
mov eax, dword [esp + 0x88]
xor edx, edx
push 0x6b
pop edi
div edi
mov dword [esp + 0x88], eax
xor dword [esp + 0x88], 0xc51b98b2
xor dword [esp + 0x88], 0xc516c336
mov dword [esp + 0x50], 0x4d5e34
or dword [esp + 0x50], 0xb79f18b1
shr dword [esp + 0x50], 3
imul eax, dword [esp + 0x50], 0x70
mov dword [esp + 0x50], eax
xor dword [esp + 0x50], 0xe3798aa
mov dword [esp + 0x110], 0xebbd7
imul eax, dword [esp + 0x110], 0x48
mov dword [esp + 0x110], eax
xor dword [esp + 0x110], 0x42f4daf
mov dword [esp + 0x84], 0xd9af42
shr dword [esp + 0x84], 9
xor dword [esp + 0x84], 0xbc9bf07
xor dword [esp + 0x84], 0xbc6f531
mov dword [esp + 0xe8], 0x90a204
add dword [esp + 0xe8], 0x7970
xor dword [esp + 0xe8], 0x9d0ff7
mov dword [esp + 0x8c], 0x739527
add dword [esp + 0x8c], 0xffff5e09
shr dword [esp + 0x8c], 0xa
xor dword [esp + 0x8c], 0xd1325
mov dword [esp + 0x58], 0xd783b4
or dword [esp + 0x58], 0xc15d61f
add dword [esp + 0x58], 0xc3c0
or dword [esp + 0x58], 0x92dc5f80
xor dword [esp + 0x58], 0x9edf1b53
mov dword [esp + 0x70], 0xf9d01f
shl dword [esp + 0x70], 7
imul eax, dword [esp + 0x70], 0x4e
mov dword [esp + 0x70], eax
add dword [esp + 0x70], 0x3e6
xor dword [esp + 0x70], 0xeb7fe55
mov dword [esp + 0x100], 0xd9fb52
imul eax, dword [esp + 0x100], 0x69
mov dword [esp + 0x100], eax
xor dword [esp + 0x100], 0x596c9c7c
mov dword [esp + 0xb8], 0xbce19
xor dword [esp + 0xb8], 0x714c7307
shl dword [esp + 0xb8], 0xd
xor dword [esp + 0xb8], 0xf7a2b3a9
mov dword [esp + 0xa0], 0xa3e27
imul eax, dword [esp + 0xa0], 0x4e
mov dword [esp + 0xa0], eax
shl dword [esp + 0xa0], 0xb
xor dword [esp + 0xa0], 0xf7761dd1
mov dword [esp + 0xe0], 0x792a3c
add dword [esp + 0xe0], 0xe65e
xor dword [esp + 0xe0], 0x7c7248
xor edx, edx
mov dword [esp + 0x38], 0xee811d
or dword [esp + 0x38], 0xabd3bbff
imul eax, dword [esp + 0x38], 0x51
push 0x44
pop edi
push 0x47
mov dword [esp + 0x3c], eax
xor dword [esp + 0x3c], 0x6beb32a3
mov dword [esp + 0x80], 0xf5fc04
add dword [esp + 0x80], 0xffff7f57
add dword [esp + 0x80], 0xffff54e1
xor dword [esp + 0x80], 0xf18e2c
mov dword [esp + 0x110], 0x799bfe
add dword [esp + 0x110], 0xffff6b25
xor dword [esp + 0x110], 0x7a59ed
mov dword [esp + 0x44], 0x241338
mov eax, dword [esp + 0x44]
div edi
xor edx, edx
mov dword [esp + 0x44], eax
or dword [esp + 0x44], 0x8d75be13
mov eax, dword [esp + 0x44]
pop edi
div edi
push 0x68
mov dword [esp + 0x44], eax
xor edx, edx
xor dword [esp + 0x44], 0x1f14487
mov dword [esp + 0xd4], 0x1bb21f
add dword [esp + 0xd4], 0x55cd
xor dword [esp + 0xd4], 0x127618
mov dword [esp + 0x84], 0xd9164e
shl dword [esp + 0x84], 8
shr dword [esp + 0x84], 0xb
xor dword [esp + 0x84], 0x188a84
mov dword [esp + 0xc4], 0x5cf7d0
add dword [esp + 0xc4], 0x3e8a
add dword [esp + 0xc4], 0x32db
xor dword [esp + 0xc4], 0x5145f8
mov dword [esp + 0x6c], 0x1c80c2
xor dword [esp + 0x6c], 0x44a23604
add dword [esp + 0x6c], 0x2303
imul eax, dword [esp + 0x6c], 0xb
pop edi
push 3
mov dword [esp + 0x6c], eax
xor dword [esp + 0x6c], 0xf43ee1c0
mov dword [esp + 0x64], 0xa9428e
add dword [esp + 0x64], 0xabd7
imul eax, dword [esp + 0x64], 0x53
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x64]
div edi
xor edx, edx
mov dword [esp + 0x64], eax
xor dword [esp + 0x64], 0x8b26cc
mov dword [esp + 0xdc], 0xf2eef3
add dword [esp + 0xdc], 0xffffdb69
xor dword [esp + 0xdc], 0xfccf10
mov dword [esp + 0x24], 0x343f0
xor dword [esp + 0x24], 0xd5ce042e
imul eax, dword [esp + 0x24], 0x3f
pop edi
mov dword [esp + 0x20], eax
shr dword [esp + 0x20], 0xf
xor dword [esp + 0x20], 0x3620f
mov dword [esp + 0x48], 0x59b1d3
mov eax, dword [esp + 0x48]
div edi
mov dword [esp + 0x48], eax
shl dword [esp + 0x48], 2
xor dword [esp + 0x48], 0xcf9668fb
xor dword [esp + 0x48], 0xcfeea24f
mov dword [esp + 0x9c], 0x6aa4ed
add dword [esp + 0x9c], 0xffff67c9
xor dword [esp + 0x9c], 0x4d08f08b
xor dword [esp + 0x9c], 0x4d6ebeeb
mov dword [esp + 0x94], 0x69abf2
add dword [esp + 0x94], 0xffffba84
imul eax, dword [esp + 0x94], 0x28
xor edx, edx
push 0x15
pop ebx
push 0x17
pop edi
mov dword [esp + 0x94], eax
xor dword [esp + 0x94], 0x1074f291
mov dword [esp + 0x18], 0x48afcb
xor dword [esp + 0x18], 0x73d23cb5
imul eax, dword [esp + 0x18], 0x1d
push 0x69
mov dword [esp + 0x1c], eax
add dword [esp + 0x1c], 0xffff4c54
xor dword [esp + 0x1c], 0x188caf5e
mov dword [esp + 0xb0], 0xfb6d2b
shr dword [esp + 0xb0], 7
shr dword [esp + 0xb0], 7
xor dword [esp + 0xb0], 0x69daa
mov dword [esp + 0xa8], 0x41cb3e
or dword [esp + 0xa8], 0xeaa3270
xor dword [esp + 0xa8], 0xf56622c3
xor dword [esp + 0xa8], 0xfb8d1b77
mov dword [esp + 0x18], 0x9eda46
shr dword [esp + 0x18], 9
add dword [esp + 0x18], 0xffff1b59
shr dword [esp + 0x18], 0xf
xor dword [esp + 0x18], 0xc2675
mov dword [esp + 0x108], 0xe8ffe2
add dword [esp + 0x108], 0xa1c5
xor dword [esp + 0x108], 0xe1d562
mov dword [esp + 0xfc], 0x33f905
imul eax, dword [esp + 0xfc], 0x75
mov dword [esp + 0xfc], eax
xor dword [esp + 0xfc], 0x17ce01c9
mov dword [esp + 0x10c], 0xec5410
or dword [esp + 0x10c], 0xd19c68c9
xor dword [esp + 0x10c], 0xd1f4cc26
mov dword [esp + 0xf4], 0x2d0a7e
shl dword [esp + 0xf4], 3
xor dword [esp + 0xf4], 0x16ef490
mov dword [esp + 0x20], 0xd6743b
mov eax, dword [esp + 0x20]
div ebx
xor edx, edx
mov dword [esp + 0x20], eax
add dword [esp + 0x20], 0xffffaf7f
mov eax, dword [esp + 0x20]
div edi
xor edx, edx
mov dword [esp + 0x20], eax
xor dword [esp + 0x20], 0xad70e
mov dword [esp + 0xb8], 0xf41cc5
add dword [esp + 0xb8], 0x27c3
xor dword [esp + 0xb8], 0xe6d003ef
xor dword [esp + 0xb8], 0xe622e411
mov dword [esp + 0x30], 0x9307a9
shl dword [esp + 0x30], 0x10
mov eax, dword [esp + 0x30]
pop edi
div edi
mov dword [esp + 0x2c], eax
imul eax, dword [esp + 0x2c], 0x1a
mov dword [esp + 0x2c], eax
xor dword [esp + 0x2c], 0x1e78c36
mov dword [esp + 0xd4], 0x615949
or dword [esp + 0xd4], 0x9c713e7c
xor dword [esp + 0xd4], 0x9c72a93b
mov dword [esp + 0x24], 0x50abec
shr dword [esp + 0x24], 0xd
shr dword [esp + 0x24], 0xf
shl dword [esp + 0x24], 3
xor dword [esp + 0x24], 0xde064
mov dword [esp + 0x98], 0x4e3c3a
shl dword [esp + 0x98], 0x10
or dword [esp + 0x98], 0x4950d4c2
xor dword [esp + 0x98], 0x7d7c9095
mov dword [esp + 0xb0], 0x946412
shl dword [esp + 0xb0], 0x10
add dword [esp + 0xb0], 0xe4a7
xor dword [esp + 0xb0], 0x641e1679
mov dword [esp + 0x90], 0x4e037c
xor edx, edx
mov eax, dword [esp + 0x90]
push 0x31
pop edi
div edi
xor edx, edx
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x90]
push 0x4c
pop edi
div edi
xor edx, edx
mov dword [esp + 0x90], eax
xor dword [esp + 0x90], 0x37ff4
mov dword [esp + 0x30], 0x24ae3c
add dword [esp + 0x30], 0x4dc4
mov eax, dword [esp + 0x30]
push 0x65
pop edi
div edi
xor edx, edx
mov dword [esp + 0x30], eax
shr dword [esp + 0x30], 0xe
xor dword [esp + 0x30], 0x67442
mov dword [esp + 0x54], 0x916afe
or dword [esp + 0x54], 0xad0d2d23
shl dword [esp + 0x54], 0xc
shl dword [esp + 0x54], 9
xor dword [esp + 0x54], 0xffe2d40c
mov dword [esp + 0xec], 0xf8db3b
or dword [esp + 0xec], 0xac841605
xor dword [esp + 0xec], 0xacf6e700
mov dword [esp + 0x4c], 0x7da9f6
xor dword [esp + 0x4c], 0xb99dbe94
xor dword [esp + 0x4c], 0x4f589543
imul eax, dword [esp + 0x4c], 0x41
mov dword [esp + 0x4c], eax
xor dword [esp + 0x4c], 0xa4d8eb51
mov dword [esp + 0x44], 0x4c4580
xor dword [esp + 0x44], 0x9eee6d87
shr dword [esp + 0x44], 0x10
shr dword [esp + 0x44], 0xb
xor dword [esp + 0x44], 0x4762e
mov dword [esp + 0xf4], 0x1d2349
xor dword [esp + 0xf4], 0x10704b4d
xor dword [esp + 0xf4], 0x10664111
mov dword [esp + 0x64], 0x64247
or dword [esp + 0x64], 0x1b361ac5
shr dword [esp + 0x64], 4
or dword [esp + 0x64], 0x92b33d46
xor dword [esp + 0x64], 0x93baee8c
mov dword [esp + 0x5c], 0xe2d9f9
shr dword [esp + 0x5c], 8
shl dword [esp + 0x5c], 0xd
or dword [esp + 0x5c], 0x568df046
xor dword [esp + 0x5c], 0x5ed53406
mov dword [esp + 0xc4], 0x2f1c9e
imul eax, dword [esp + 0xc4], 0x3c
mov dword [esp + 0xc4], eax
add dword [esp + 0xc4], 0xffff93af
xor dword [esp + 0xc4], 0xb036da4
mov dword [esp + 0xfc], 0x4662c8
shl dword [esp + 0xfc], 0xb
xor dword [esp + 0xfc], 0x331b4932
mov dword [esp + 0xcc], 0x94b486
shl dword [esp + 0xcc], 5
shr dword [esp + 0xcc], 9
xor dword [esp + 0xcc], 0xc262d
mov dword [esp + 0x74], 0x972018
or dword [esp + 0x74], 0x7708739
xor dword [esp + 0x74], 0x3b0f29bd
add dword [esp + 0x74], 0xffffc0ba
xor dword [esp + 0x74], 0x3cfc2944
mov dword [esp + 0x6c], 0xaed936
xor dword [esp + 0x6c], 0x6884b789
mov eax, dword [esp + 0x6c]
div ebx
mov dword [esp + 0x6c], eax
add dword [esp + 0x6c], 0xffff50b1
xor dword [esp + 0x6c], 0x4fec9cf
mov dword [esp + 0xe4], 0x7b43db
imul eax, dword [esp + 0xe4], 0x42
mov ebx, dword [esp + 0x114]
mov ebp, dword [esp + 0x114]
mov edi, dword [esp + 0x114]
mov dword [esp + 0xe4], eax
xor dword [esp + 0xe4], 0x1fc87e44
mov dword [esp + 0xdc], 0x86d4b3
shl dword [esp + 0xdc], 4
xor dword [esp + 0xdc], 0x86ca4ef
mov dword [esp + 0xbc], 0xb6c687
or dword [esp + 0xbc], 0x366bf388
add dword [esp + 0xbc], 0xe986
xor dword [esp + 0xbc], 0x3704bf29
mov dword [esp + 0x34], 0xd0eb8a
or dword [esp + 0x34], 0x2ef7feb8
add dword [esp + 0x34], 0xffffba8e
xor dword [esp + 0x34], 0x2ef4abb1
mov eax, dword [esp + 0x10]
mov edx, 0xaa99eed
cmp esi, 0x5f7c47f
jg 0x24b8bf
je 0x24ba85
cmp esi, 0x32f4d93
je 0x24b837
cmp esi, 0x46fcd88
je 0x24b7ff
cmp esi, 0x4a988d0
je 0x24b7bb
cmp esi, 0x5235f61
je 0x24b745
cmp esi, 0x59d96f4
jne 0x24ba74
mov esi, 0x4a988d0
jmp 0x24b6f4
push dword [esp + 0x68]
push dword [esp + 0xc4]
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0xd8]
push 0x2318c4
call fcn.002338fd
add esp, 0xc
mov esi, eax
lea eax, [esp + 0x13c]
mov edx, 0xbbd43126
push eax
push esi
push edi
push dword [esp + 0x1c]
push 0xd6
call fcn.0024ac93
pop ecx
call eax
push dword [esp + 0x58]
push esi
push dword [esp + 0x38]
mov edx, dword [esp + 0xf4]
mov ecx, dword [esp + 0x7c]
call fcn.0024d172
add esp, 0x1c
mov esi, 0xb16f76a
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x3c]
jmp 0x24b6ef
mov eax, dword [esp + 0x28]
xor edx, edx
mov eax, dword [esp + 0xa8]
inc edx
push 8
push ecx
call fcn.002530d5
push dword [esp + 0x58]
mov edi, eax
lea edx, [esp + 0x128]
push 9
push dword [esp + 0x98]
mov ecx, edi
push dword [esp + 0xdc]
call fcn.002377e2
add esp, 0x18
mov esi, 0xdfcd4ec
jmp 0x24b7ae
push dword [esp + 0x30]
push dword [ecx + 4]
push dword [esp + 0x98]
push dword [esp + 0xbc]
mov edx, dword [ecx]
mov ecx, dword [esp + 0xa8]
push ebx
call fcn.00245f1e
mov ecx, dword [esp + 0x50]
add esp, 0x14
mov esi, 0x5f7c47f
add ebx, dword [ecx + 4]
jmp 0x24b6eb
mov eax, dword [esp + 0x100]
lea esi, [esp + 0x13c]
mov eax, dword [esp + 0x70]
push 0x10
push ecx
push 8
pop edx
call fcn.002530d5
mov edx, eax
mov eax, dword [esp + 0x80]
pop ecx
pop ecx
cmp eax, edx
jae 0x24b87a
sub edx, eax
mov edi, esi
mov ecx, edx
mov eax, 0x2d002d
shr ecx, 1
rep stosd dword es:[edi], eax
adc ecx, ecx
lea esi, [esi + edx*2]
rep stosw word es:[edi], ax
mov eax, dword [esp + 0xa0]
mov eax, dword [esp + 0xb8]
push 0x10
push ecx
push 8
pop edx
call fcn.002530d5
push dword [esp + 0x84]
mov edi, eax
mov edx, esi
push 0xb
push dword [esp + 0x48]
mov ecx, edi
push dword [esp + 0xf4]
call fcn.002377e2
add esp, 0x18
mov esi, 0xc24de2a
jmp 0x24b7ae
cmp esi, 0x8483e7e
je 0x24ba3e
cmp esi, edx
je 0x24b9a4
cmp esi, 0xb16f76a
je 0x24b96c
cmp esi, 0xc24de2a
je 0x24b93d
cmp esi, 0xdfcd4ec
jne 0x24ba74
mov eax, dword [esp + 0x84]
mov eax, dword [esp + 0x110]
push 0x10
push ecx
push 4
pop edx
call fcn.002530d5
push dword [esp + 0x60]
mov edi, eax
lea edx, [esp + 0x1c8]
push 0xb
push dword [esp + 0x9c]
mov ecx, edi
push dword [esp + 0xfc]
call fcn.002377e2
add esp, 0x18
mov esi, 0x32f4d93
jmp 0x24b7ae
mov eax, dword [esp + 0x40]
mov ecx, 0x4000
mov eax, dword [esp + 0x10c]
mov edi, ecx
push ecx
call fcn.0024bbc9
mov dword [esp + 0x14], eax
pop ecx
test eax, eax
je 0x24bb0c
mov esi, 0x5235f61
jmp 0x24b7b2
add edi, dword [ecx + 4]
mov eax, dword [esp + 0x94]
mov eax, dword [esp + 0x9c]
push ecx
mov ecx, edi
call fcn.0024bbc9
mov ebp, eax
mov esi, 0x8483e7e
mov eax, dword [esp + 0x14]
test ebp, ebp
pop ecx
mov ecx, dword [esp + 0x3c]
mov edx, 0xaa99eed
cmovne esi, edx
jmp 0x24b6f4
push dword [esp + 0x14]
lea ebx, [edi + ebp]
mov edx, 0x231914
push dword [esp + 0xa8]
mov dword [esp + 0x120], ebx
push dword [esp + 0xb4]
mov ecx, dword [esp + 0x24]
call fcn.0024f209
push dword [esp + 0x28]
mov esi, eax
sub ebx, ebp
push dword [esp + 0x100]
lea eax, [esp + 0x1d0]
push esi
push ebx
push ebp
push dword [esp + 0x128]
mov edx, dword [esp + 0x11c]
mov ecx, dword [esp + 0x128]
push eax
lea eax, [esp + 0x164]
push eax
lea eax, [esp + 0x148]
push eax
call fcn.0023ab1d
push dword [esp + 0x54]
push esi
push dword [esp + 0x10c]
mov edx, dword [esp + 0x68]
lea ebx, [eax + ebp]
mov ecx, dword [esp + 0xf0]
call fcn.0024d172
add esp, 0x3c
mov esi, 0x46fcd88
jmp 0x24b7ae
push dword [esp + 0x34]
push dword [esp + 0xc0]
mov edx, dword [esp + 0xe4]
mov ecx, dword [esp + 0xec]
push eax
call fcn.00252f07
mov ecx, dword [esp + 0x48]
add esp, 0xc
xor eax, eax
mov esi, 0xbc4d23c
mov dword [esp + 0x10], eax
mov edx, 0xaa99eed
cmp esi, 0xbc4d23c
jne 0x24b6f4
jmp 0x24bb0c
push dword [esp + 0x44]
mov edx, 0x231884
push dword [esp + 0x50]
push dword [esp + 0xf4]
mov ecx, dword [esp + 0x60]
call fcn.0024f209
push ebx
push dword [esp + 0xd4]
mov esi, eax
lea eax, [esp + 0x150]
push dword [esp + 0x70]
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x10c]
push eax
mov eax, dword [esp + 0x134]
sub eax, ebx
push esi
push eax
call fcn.00251933
push dword [esp + 0x90]
add ebx, eax
push esi
push dword [esp + 0xa0]
mov edx, dword [esp + 0xfc]
mov ecx, dword [esp + 0x12c]
call fcn.0024d172
mov eax, dword [esp + 0x144]
add esp, 0x30
sub ebx, ebp
mov dword [eax], ebp
mov dword [eax + 4], ebx
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x22c
ret