Function at 0x1cacf3
Capabilities:
Encrypt data using chaskey
Manually build aes constants
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x80
push ebx
push ebp
push esi
mov dword [esp + 0x54], 0x9f8a3
xor ebp, ebp
push edi
mov dword [esp + 0x5c], 0x16164
mov ebx, 0x3ca90
mov dword [esp + 0x3c], ecx
mov edi, 0xa663c
mov dword [esp + 0x60], 0x669c9
mov esi, 0xf1419
mov edx, 0xfa89e
mov eax, 0x457da
mov ecx, 0x44242
cmp ebx, 0x5cfd6
jg 0x1cb6a8
je 0x1cb605
cmp ebx, 0x3ca90
je 0x1cb5fb
cmp ebx, ecx
je 0x1cb116
cmp ebx, eax
je 0x1cb0a1
cmp ebx, 0x53967
jne 0x1cbc8b
mov dword [esp + 0x14], 0x88d1a8
xor edx, edx
imul eax, dword [esp + 0x14], 0x1d
push 0x1b
pop ecx
push 0x3b
mov dword [esp + 0x18], eax
shr dword [esp + 0x18], 4
imul eax, dword [esp + 0x18], 0x5c
mov dword [esp + 0x18], eax
xor dword [esp + 0x18], 0x5917c468
mov dword [esp + 0x2c], 0x63d41f
or dword [esp + 0x2c], 0xd9d3095e
xor dword [esp + 0x2c], 0xd9f2a719
mov dword [esp + 0x28], 0x9ea87d
shl dword [esp + 0x28], 7
shl dword [esp + 0x28], 1
xor dword [esp + 0x28], 0x9ea0f699
mov dword [esp + 0x14], 0x69ff43
add dword [esp + 0x14], 0xffff4840
mov eax, dword [esp + 0x14]
div ecx
pop ecx
mov dword [esp + 0x10], eax
xor edx, edx
mov eax, dword [esp + 0x10]
div ecx
mov dword [esp + 0x10], eax
xor dword [esp + 0x10], 0xc3b00
push dword [esp + 0x10]
push 0x1b1768
push dword [esp + 0x2c]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x20]
call fcn.001ce2a7
mov dword [esp + 0x2c], 0xffa912
mov edi, eax
or dword [esp + 0x2c], 0x7d902c07
xor edx, edx
xor dword [esp + 0x2c], 0x7df5cde1
mov dword [esp + 0x20], 0xcf82a3
imul eax, dword [esp + 0x20], 0x5c
push 0x5b
pop ecx
push 0x55
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
div ecx
pop ecx
mov dword [esp + 0x20], eax
xor edx, edx
shl dword [esp + 0x20], 0x10
xor dword [esp + 0x20], 0xca67bf51
mov dword [esp + 0x30], 0xc1604f
xor dword [esp + 0x30], 0x8da37d34
xor dword [esp + 0x30], 0x8d6c1d35
mov dword [esp + 0x34], 0xdb6841
mov eax, dword [esp + 0x34]
div ecx
mov dword [esp + 0x34], eax
xor dword [esp + 0x34], 0x1d84d
push dword [esp + 0x34]
push 0x1b1678
push dword [esp + 0x38]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x38]
call fcn.001ce2a7
mov dword [esp + 0x34], 0xe8a17d
mov esi, eax
add dword [esp + 0x34], 0xffff6185
add esp, 0x18
imul eax, dword [esp + 0x1c], 0x63
mov dword [esp + 0x1c], eax
xor dword [esp + 0x1c], 0xa9356697
xor dword [esp + 0x1c], 0xf082f18e
mov dword [esp + 0x18], 0xd6f80b
shl dword [esp + 0x18], 0xc
imul eax, dword [esp + 0x18], 6
xor edx, edx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
push 0x26
pop ecx
div ecx
push 0x66
mov dword [esp + 0x1c], eax
xor edx, edx
xor dword [esp + 0x1c], 0x42a9b8e
mov dword [esp + 0x14], 0xb59cfd
mov eax, dword [esp + 0x14]
pop ecx
div ecx
push esi
mov dword [esp + 0x14], eax
or dword [esp + 0x14], 0x8b7428d7
shl dword [esp + 0x14], 0xa
xor dword [esp + 0x14], 0xd7bc37a8
mov dword [esp + 0x18], 0xbe877d
or dword [esp + 0x18], 0xa7f97cbf
shr dword [esp + 0x18], 1
xor dword [esp + 0x18], 0x53f93098
push dword [esp + 0x18]
push ecx
push edi
push dword [esp + 0x20]
lea ecx, [esp + 0x4c]
push dword [esp + 0x2c]
mov edx, dword [esp + 0x34]
call fcn.001b396f
mov dword [esp + 0x38], 0xfa4f8a
test eax, eax
mov eax, 0x44242
mov ebx, 0xdce1d
cmove ebx, eax
shr dword [esp + 0x38], 5
xor dword [esp + 0x38], 0x911999e0
xor dword [esp + 0x38], 0x9115cff1
mov dword [esp + 0x34], 0x6db5e2
shr dword [esp + 0x34], 0xc
xor dword [esp + 0x34], 0x18dc7
mov dword [esp + 0x40], 0xbe3b1d
or dword [esp + 0x40], 0x915eb58e
xor dword [esp + 0x40], 0x91f70bf0
mov dword [esp + 0x3c], 0x571053
or dword [esp + 0x3c], 0x80d4f132
add dword [esp + 0x3c], 0xffff8f73
xor dword [esp + 0x3c], 0x80db82d4
push edi
push dword [esp + 0x40]
push dword [esp + 0x48]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
call fcn.001b905b
mov dword [esp + 0x44], 0xf496c1
xor edx, edx
xor dword [esp + 0x44], 0x24010733
xor dword [esp + 0x44], 0x24f73bcc
mov dword [esp + 0x40], 0xf11abd
mov eax, dword [esp + 0x40]
push 0x54
pop ecx
div ecx
push 0x31
mov dword [esp + 0x44], eax
xor edx, edx
mov eax, dword [esp + 0x44]
pop ecx
div ecx
push esi
mov dword [esp + 0x44], eax
shr dword [esp + 0x44], 0xb
xor dword [esp + 0x44], 0x50a96
mov dword [esp + 0x4c], 0x8062ec
shr dword [esp + 0x4c], 5
xor dword [esp + 0x4c], 0x5e74b
mov dword [esp + 0x50], 0x17f63a
or dword [esp + 0x50], 0xd3f2e710
xor dword [esp + 0x50], 0xd3f62d8f
push dword [esp + 0x50]
push dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
call fcn.001b905b
add esp, 0x30
mov edi, 0xa663c
mov esi, 0xf1419
jmp 0x1cbc7c
mov dword [esp + 0x20], 0xd87e76
xor edx, edx
mov eax, dword [esp + 0x20]
push 0x2c
pop ecx
div ecx
push ecx
mov dword [esp + 0x24], eax
add dword [esp + 0x24], 0xffff091d
xor dword [esp + 0x24], 0x6e80c
mov dword [esp + 0x28], 0xa7d7e0
add dword [esp + 0x28], 0x5d66
or dword [esp + 0x28], 0xcaa9b352
xor dword [esp + 0x28], 0xcaa6866a
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
mov edx, dword [0x1d220c]
mov edx, dword [edx + 0x78]
call fcn.001c4ae6
pop ecx
mov ecx, eax
mov ebx, edi
mov eax, dword [0x1d220c]
test ecx, ecx
cmovne ebx, esi
mov dword [eax + 0x74], ecx
jmp 0x1cad2a
mov dword [esp + 0x24], 0x84cb9a
shl dword [esp + 0x24], 6
xor dword [esp + 0x24], 0x213e408b
mov dword [esp + 0x18], 0x4f1108
add dword [esp + 0x18], 0x747c
add dword [esp + 0x18], 0x494b
add dword [esp + 0x18], 0xffff8f1d
xor dword [esp + 0x18], 0x4f7356
mov dword [esp + 0x1c], 0xac057d
shl dword [esp + 0x1c], 5
add dword [esp + 0x1c], 0xfd75
shr dword [esp + 0x1c], 0xc
xor dword [esp + 0x1c], 0x8d7a9
mov dword [esp + 0x28], 0x4ef965
add dword [esp + 0x28], 0xffffde81
xor dword [esp + 0x28], 0x49ae7c
push dword [esp + 0x28]
push 0x1b1718
push dword [esp + 0x24]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x30]
call fcn.001ce2a7
mov dword [esp + 0x30], 0xbe8d65
mov edi, eax
shl dword [esp + 0x30], 0x10
xor edx, edx
or dword [esp + 0x30], 0x95ae3608
xor dword [esp + 0x30], 0x9de70f0d
mov dword [esp + 0x28], 0xf57a7c
add dword [esp + 0x28], 0xffffd69b
mov eax, dword [esp + 0x28]
push 0x1d
pop ecx
div ecx
push 0x6a
mov dword [esp + 0x2c], eax
xor edx, edx
xor dword [esp + 0x2c], 0x3320d2ee
xor dword [esp + 0x2c], 0x33287d1f
mov dword [esp + 0x30], 0xc3390c
mov eax, dword [esp + 0x30]
pop ecx
div ecx
mov dword [esp + 0x2c], eax
xor dword [esp + 0x2c], 0x30e37
mov dword [esp + 0x34], 0x69650f
add dword [esp + 0x34], 0xffff9cf7
xor dword [esp + 0x34], 0x6ffd4f
push dword [esp + 0x34]
push 0x1b1788
push dword [esp + 0x34]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x3c]
call fcn.001ce2a7
mov dword [esp + 0x3c], 0x4fc617
mov esi, eax
add dword [esp + 0x3c], 0xffff7c8c
shl dword [esp + 0x3c], 4
xor dword [esp + 0x3c], 0x4f42a30
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x28], 0xd9fcb1
or dword [esp + 0x28], 0xfca3ff83
shr dword [esp + 0x28], 0xd
shl dword [esp + 0x28], 7
xor dword [esp + 0x28], 0x3f3ef81
mov dword [esp + 0x2c], 0x9c149a
shl dword [esp + 0x2c], 8
shl dword [esp + 0x2c], 1
shl dword [esp + 0x2c], 4
xor dword [esp + 0x2c], 0x8296d575
mov dword [esp + 0x3c], 0x2670eb
add dword [esp + 0x3c], 0x7e26
imul eax, dword [esp + 0x3c], 0x5f
mov dword [esp + 0x3c], eax
xor dword [esp + 0x3c], 0xe72f9ff
mov dword [esp + 0x30], 0xd9d280
shl dword [esp + 0x30], 0xb
imul eax, dword [esp + 0x30], 0x47
mov dword [esp + 0x30], eax
or dword [esp + 0x30], 0x5cc301fd
xor dword [esp + 0x30], 0x5fc251fc
xor edx, edx
mov dword [esp + 0x34], 0xf6ddb7
mov eax, dword [esp + 0x34]
push 0x44
pop ecx
div ecx
push 0x35
mov dword [esp + 0x38], eax
xor edx, edx
mov eax, dword [esp + 0x38]
pop ecx
div ecx
mov dword [esp + 0x34], eax
xor dword [esp + 0x34], 0x8fa00b1b
xor dword [esp + 0x34], 0x8fa9ab8a
push dword [esp + 0x34]
push edi
push dword [esp + 0x38]
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x38]
call fcn.001cf00b
add eax, dword [esp + 0x34]
add esp, 0x24
mov dword [esp + 0x48], edi
add eax, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x24], 0xea8c40
or dword [esp + 0x24], 0x9ff47cdf
xor dword [esp + 0x24], 0x9ffefcdf
mov eax, dword [esp + 0x24]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x24], 0x189253
imul eax, dword [esp + 0x24], 0x7c
push esi
mov dword [esp + 0x28], eax
add dword [esp + 0x28], 0x378a
xor dword [esp + 0x28], 0xbe717bf
mov eax, dword [esp + 0x28]
mov dword [esp + 0x54], eax
lea eax, [esp + 0x44]
mov dword [esp + 0x58], eax
mov dword [esp + 0x20], 0x249a0b
or dword [esp + 0x20], 0x384e9d73
xor dword [esp + 0x20], 0x7671c486
add dword [esp + 0x20], 0xffffb44c
xor dword [esp + 0x20], 0x4e1f1069
mov eax, dword [esp + 0x20]
mov dword [esp + 0x38], eax
mov dword [esp + 0x18], 0x690e26
shr dword [esp + 0x18], 0x10
add dword [esp + 0x18], 0xffffaf22
or dword [esp + 0x18], 0xf5af4be1
xor dword [esp + 0x18], 0xfff0feaa
mov dword [esp + 0x1c], 0xaf79e1
shl dword [esp + 0x1c], 1
xor dword [esp + 0x1c], 0x26d2392d
shr dword [esp + 0x1c], 4
xor dword [esp + 0x1c], 0x27989b1
mov dword [esp + 0x20], 0x8f4bfd
shl dword [esp + 0x20], 0xd
shl dword [esp + 0x20], 0xd
or dword [esp + 0x20], 0xede2dc82
xor dword [esp + 0x20], 0xfdeb29cd
mov dword [esp + 0x24], 0xb8ec54
imul eax, dword [esp + 0x24], 0xf
mov dword [esp + 0x24], eax
xor dword [esp + 0x24], 0xade58c5
mov dword [esp + 0x2c], 0xe92162
shl dword [esp + 0x2c], 3
xor dword [esp + 0x2c], 0x74d0178
mov dword [esp + 0x28], 0x7f71e9
or dword [esp + 0x28], 0x8574e63
xor dword [esp + 0x28], 0x1f77721e
xor dword [esp + 0x28], 0x17050906
push dword [esp + 0x38]
push dword [esp + 0x2c]
push dword [esp + 0x34]
push dword [esp + 0x4c]
push ecx
push dword [esp + 0x38]
lea eax, [esp + 0x50]
push eax
push dword [esp + 0x3c]
lea eax, [esp + 0x94]
push eax
push dword [esp + 0x40]
mov edx, dword [esp + 0x40]
lea ecx, [esp + 0x78]
call fcn.001ba5de
mov dword [esp + 0x4c], 0x98960d
test eax, eax
mov eax, 0xfa89e
mov ebx, 0xa663c
cmove ebx, eax
add dword [esp + 0x4c], 0x2abf
xor dword [esp + 0x4c], 0x9b6296
xor edx, edx
mov dword [esp + 0x50], 0x1aa7a6
shr dword [esp + 0x50], 0xf
xor dword [esp + 0x50], 0xa7a1b
mov dword [esp + 0x54], 0x7565b4
mov eax, dword [esp + 0x54]
push 0x3f
pop ecx
div ecx
push edi
mov dword [esp + 0x58], eax
xor dword [esp + 0x58], 0x660c4
mov dword [esp + 0x4c], 0x6fd4c8
add dword [esp + 0x4c], 0x97bc
imul eax, dword [esp + 0x4c], 0x70
mov dword [esp + 0x4c], eax
xor dword [esp + 0x4c], 0x6ce2f187
xor dword [esp + 0x4c], 0x5dce4d78
push dword [esp + 0x4c]
push dword [esp + 0x5c]
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
call fcn.001b905b
mov dword [esp + 0x54], 0x9dda21
xor edx, edx
add dword [esp + 0x54], 0xe97d
add dword [esp + 0x54], 0xac83
xor dword [esp + 0x54], 0x9aba74
mov dword [esp + 0x58], 0xe4accc
add dword [esp + 0x58], 0xffff18b3
mov eax, dword [esp + 0x58]
push 0x3b
pop ecx
div ecx
push 0x5e
mov dword [esp + 0x5c], eax
xor edx, edx
xor dword [esp + 0x5c], 0x45fdb
mov dword [esp + 0x64], 0x47abe2
mov eax, dword [esp + 0x64]
pop ecx
div ecx
push esi
mov dword [esp + 0x64], eax
xor dword [esp + 0x64], 0xe6d73
mov dword [esp + 0x60], 0x8dfaea
shl dword [esp + 0x60], 2
xor dword [esp + 0x60], 0x55133bb5
xor dword [esp + 0x60], 0x57238376
push dword [esp + 0x60]
push dword [esp + 0x68]
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x60]
call fcn.001b905b
add esp, 0x44
jmp 0x1cb092
mov ebx, 0x53967
jmp 0x1cad39
mov dword [esp + 0x14], 0xb71f6c
xor edx, edx
or dword [esp + 0x14], 0x552938c4
imul eax, dword [esp + 0x14], 0x14
push 0x43
pop ecx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
div ecx
mov dword [esp + 0x14], eax
xor dword [esp + 0x14], 0x2a4dff2
mov dword [esp + 0x18], 0x9528f0
add dword [esp + 0x18], 0xffff9a6c
imul eax, dword [esp + 0x18], 0xf
mov dword [esp + 0x18], eax
xor dword [esp + 0x18], 0x520ac81
xor dword [esp + 0x18], 0xd9cc017
mov dword [esp + 0x1c], 0x4bff9a
add dword [esp + 0x1c], 0x590d
xor dword [esp + 0x1c], 0x1349125b
xor dword [esp + 0x1c], 0x803e7284
xor dword [esp + 0x1c], 0x933a54dd
mov eax, dword [0x1d220c]
push dword [eax + 0x74]
push dword [esp + 0x20]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
call fcn.001cf0b2
pop ecx
pop ecx
mov ebx, edi
jmp 0x1cad2a
cmp ebx, edi
je 0x1cbc10
cmp ebx, esi
je 0x1cb8c2
cmp ebx, edx
jne 0x1cbc8b
mov dword [esp + 0x1c], 0xcaf02b
xor dword [esp + 0x1c], 0x199e233e
add dword [esp + 0x1c], 0x5a12
shr dword [esp + 0x1c], 0xc
xor dword [esp + 0x1c], 0xf025e
mov dword [esp + 0x20], 0x46e322
add dword [esp + 0x20], 0x6699
xor dword [esp + 0x20], 0x492f66
mov dword [esp + 0x24], 0xcdead0
shr dword [esp + 0x24], 0xf
xor dword [esp + 0x24], 0xbf1ab
mov dword [esp + 0x28], 0x3556b3
shr dword [esp + 0x28], 4
xor dword [esp + 0x28], 0xc35f9
push dword [esp + 0x28]
push 0x1b16e8
push dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
call fcn.001ce2a7
mov dword [esp + 0x20], 0x3c7650
mov esi, eax
add dword [esp + 0x20], 0x640
xor edx, edx
shl dword [esp + 0x20], 0x10
xor dword [esp + 0x20], 0xc74e7546
xor dword [esp + 0x20], 0xbbdf1fa7
mov dword [esp + 0x24], 0x229053
shl dword [esp + 0x24], 5
shl dword [esp + 0x24], 2
xor dword [esp + 0x24], 0xb083ffa
xor dword [esp + 0x24], 0x1a4c7b11
mov dword [esp + 0x2c], 0x21414d
xor dword [esp + 0x2c], 0x9a194128
add dword [esp + 0x2c], 0xaa1c
xor dword [esp + 0x2c], 0x9a3bfb76
mov dword [esp + 0x30], 0x4fb09
mov eax, dword [esp + 0x30]
push 0x3a
pop ecx
div ecx
add esp, 8
mov dword [esp + 0x28], eax
shr dword [esp + 0x28], 0xe
xor dword [esp + 0x28], 0x18120
mov dword [esp + 0x20], 0x470cb3
shl dword [esp + 0x20], 0xc
mov eax, dword [esp + 0x20]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x38]
shl dword [esp + 0x20], 0xe
xor dword [esp + 0x20], 0xcc087f96
push dword [esp + 0x20]
push dword [esp + 0x2c]
push eax
push dword [esp + 0x30]
push dword [esp + 0x2c]
push dword [esp + 0x2c]
mov edx, dword [0x1d220c]
push dword [esp + 0x54]
push esi
lea edx, [edx + 0x78]
call fcn.001bf3f8
mov dword [esp + 0x44], 0xd9707f
test eax, eax
mov eax, 0x457da
mov ebx, edi
cmove ebx, eax
imul eax, dword [esp + 0x44], 0x4a
mov dword [esp + 0x44], eax
xor dword [esp + 0x44], 0x3ed234fb
mov dword [esp + 0x4c], 0xdc69d4
or dword [esp + 0x4c], 0x4d7058d0
xor dword [esp + 0x4c], 0x4df17275
mov dword [esp + 0x40], 0x3ee025
add dword [esp + 0x40], 0xffff7004
add dword [esp + 0x40], 0xffffad62
xor dword [esp + 0x40], 0xeaa2c072
xor dword [esp + 0x40], 0xea94cbe8
mov dword [esp + 0x48], 0x7b1b72
or dword [esp + 0x48], 0x50a14d45
xor dword [esp + 0x48], 0x1d4d8535
xor dword [esp + 0x48], 0x4dbf19f5
push esi
push dword [esp + 0x4c]
push dword [esp + 0x48]
mov edx, dword [esp + 0x58]
mov ecx, dword [esp + 0x50]
call fcn.001b905b
add esp, 0x30
jmp 0x1cb097
mov dword [esp + 0x20], 0x24d03
xor edx, edx
imul eax, dword [esp + 0x20], 0xe
push 0x54
pop ecx
mov dword [esp + 0x20], eax
xor dword [esp + 0x20], 0x2901ad
mov dword [esp + 0x28], 0xef4c18
shr dword [esp + 0x28], 9
xor dword [esp + 0x28], 0xf46c1
mov dword [esp + 0x1c], 0x2008dc
mov eax, dword [esp + 0x1c]
div ecx
mov dword [esp + 0x1c], eax
or dword [esp + 0x1c], 0xc20791fb
xor dword [esp + 0x1c], 0x814a9b82
xor dword [esp + 0x1c], 0x43465652
mov dword [esp + 0x24], 0x3f208f
imul eax, dword [esp + 0x24], 0x28
mov dword [esp + 0x24], eax
add dword [esp + 0x24], 0xae98
xor dword [esp + 0x24], 0x9d6e1f2
push dword [esp + 0x24]
push 0x1b17f8
push dword [esp + 0x24]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
call fcn.001ce2a7
mov dword [esp + 0x34], 0x949c15
mov esi, eax
or dword [esp + 0x34], 0x66cf7364
add esp, 0xc
xor dword [esp + 0x28], 0x2b9dbb3e
xor edx, edx
mov eax, dword [esp + 0x28]
mov dword [esp + 0x64], eax
mov dword [esp + 0x28], 0x551589
add dword [esp + 0x28], 0xa713
xor dword [esp + 0x28], 0x55bc9d
mov eax, dword [esp + 0x28]
mov dword [esp + 0x68], eax
mov dword [esp + 0x1c], 0xdcf78f
add dword [esp + 0x1c], 0xdc46
shl dword [esp + 0x1c], 5
shl dword [esp + 0x1c], 1
xor dword [esp + 0x1c], 0x3774f560
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x24], 0x34f278
shr dword [esp + 0x24], 9
or dword [esp + 0x24], 0x7cab1057
shl dword [esp + 0x24], 0x10
xor dword [esp + 0x24], 0x1a71eb89
mov dword [esp + 0x30], 0x221b30
add dword [esp + 0x30], 0xa402
xor dword [esp + 0x30], 0x2acc20
mov dword [esp + 0x20], 0x25e8e5
or dword [esp + 0x20], 0x8948e3ce
shr dword [esp + 0x20], 3
xor dword [esp + 0x20], 0x5244dd44
xor dword [esp + 0x20], 0x436df251
mov dword [esp + 0x28], 0x903417
mov eax, dword [esp + 0x28]
push 0x4d
pop ecx
div ecx
push 0x60
mov dword [esp + 0x2c], eax
xor edx, edx
add dword [esp + 0x2c], 0xffff0121
xor dword [esp + 0x2c], 0x3a2fc
mov dword [esp + 0x14], 0xebad69
imul eax, dword [esp + 0x14], 0xc
pop ecx
mov dword [esp + 0x10], eax
imul eax, dword [esp + 0x10], 0x63
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
div ecx
mov dword [esp + 0x10], eax
xor dword [esp + 0x10], 0xb74a54
mov dword [esp + 0x14], 0x6b15d0
xor edx, edx
xor dword [esp + 0x14], 0x373febd3
add dword [esp + 0x14], 0x1583
mov eax, dword [esp + 0x14]
push 0xd
pop ecx
div ecx
push 0x32
mov dword [esp + 0x18], eax
xor edx, edx
xor dword [esp + 0x18], 0x44ca244
mov dword [esp + 0x1c], 0x3a45b7
shl dword [esp + 0x1c], 0xd
or dword [esp + 0x1c], 0xaf22947b
shr dword [esp + 0x1c], 0xc
xor dword [esp + 0x1c], 0x86810
mov dword [esp + 0x20], 0x1cee37
add dword [esp + 0x20], 0x9328
add dword [esp + 0x20], 0x5aac
mov eax, dword [esp + 0x20]
pop ecx
div ecx
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x64]
xor dword [esp + 0x1c], 0xe284a
mov dword [esp + 0x2c], 0xb29d75
or dword [esp + 0x2c], 0xc9f13138
xor dword [esp + 0x2c], 0xc9f2a3dc
push dword [esp + 0x2c]
push ecx
push dword [esp + 0x24]
push eax
mov eax, dword [0x1d220c]
push ecx
push dword [esp + 0x4c]
add eax, 0x60
push eax
push dword [esp + 0x34]
push dword [esp + 0x34]
mov eax, dword [0x1d220c]
push dword [eax + 0x74]
push ecx
push esi
push dword [esp + 0x40]
push dword [esp + 0x5c]
push dword [esp + 0x58]
mov eax, dword [0x1d220c]
mov edx, dword [esp + 0x6c]
mov ecx, dword [esp + 0x60]
push dword [eax + 0x78]
call fcn.001ca5dc
add esp, 0x40
test eax, eax
jne 0x1cbb74
xor ebp, ebp
mov ebx, edi
inc ebp
jmp 0x1cbb79
mov ebx, 0x5cfd6
mov dword [esp + 0x30], 0x34c15
xor edx, edx
imul eax, dword [esp + 0x30], 0x7e
push 0x52
pop ecx
push esi
mov dword [esp + 0x34], eax
xor dword [esp + 0x34], 0x1916519
mov dword [esp + 0x24], 0x476ab6
shl dword [esp + 0x24], 5
xor dword [esp + 0x24], 0xada8e6d8
xor dword [esp + 0x24], 0xa54bd69c
mov dword [esp + 0x28], 0xee8f32
or dword [esp + 0x28], 0x137240ea
mov eax, dword [esp + 0x28]
div ecx
mov dword [esp + 0x28], eax
xor dword [esp + 0x28], 0x337494
mov dword [esp + 0x2c], 0x56ae26
shl dword [esp + 0x2c], 4
add dword [esp + 0x2c], 0xbd0c
xor dword [esp + 0x2c], 0x564366f
push dword [esp + 0x2c]
push dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x3c]
call fcn.001b905b
mov esi, 0xf1419
jmp 0x1cbc79
mov dword [esp + 0x24], 0x6f8e0
add dword [esp + 0x24], 0x7de
imul eax, dword [esp + 0x24], 0x3a
mov dword [esp + 0x24], eax
shl dword [esp + 0x24], 0xd
xor dword [esp + 0x24], 0xc568344f
mov dword [esp + 0x2c], 0xc94bc8
shr dword [esp + 0x2c], 5
xor dword [esp + 0x2c], 0x96101
mov dword [esp + 0x30], 0x266352
shl dword [esp + 0x30], 1
xor dword [esp + 0x30], 0x4f6080
push dword [esp + 0x30]
push dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
push dword [esp + 0x40]
call fcn.001c6841
mov ebx, 0xdce1d
add esp, 0xc
mov eax, 0x457da
mov ecx, 0x44242
mov edx, 0xfa89e
cmp ebx, 0xdce1d
jne 0x1cad39
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x80
ret