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

Disassembly:
sub esp, 0x6cc
mov dword [esp + 0xac], 0xf4c82e
xor eax, eax
mov dword [esp + 0xb0], eax
xor edx, edx
mov dword [esp + 0x7c], 0x7c462e
push ebx
push ebp
push esi
push edi
mov dword [esp + 0xb4], eax
mov edi, 0xb4e665b
mov eax, dword [esp + 0x8c]
push 0x2f
pop ecx
div ecx
push 0x77
mov dword [esp + 0x90], eax
xor edx, edx
or dword [esp + 0x90], 0xe5144df6
xor dword [esp + 0x90], 0xe516edde
mov dword [esp + 0x78], 0xf648e5
shl dword [esp + 0x78], 5
or dword [esp + 0x78], 0xd0c65f8c
xor dword [esp + 0x78], 0x5ecf5fad
mov dword [esp + 0x58], 0x45ee00
mov eax, dword [esp + 0x58]
pop ecx
div ecx
push 0x43
mov dword [esp + 0x58], eax
xor edx, edx
or dword [esp + 0x58], 0xf06707b6
xor dword [esp + 0x58], 0xf06797fd
mov dword [esp + 0x3c], 0xea4f48
add dword [esp + 0x3c], 0x6269
add dword [esp + 0x3c], 0xffff8cfc
add dword [esp + 0x3c], 0x3e5e
xor dword [esp + 0x3c], 0xea7d0a
mov dword [esp + 0x94], 0xe88c42
shl dword [esp + 0x94], 0xf
xor dword [esp + 0x94], 0x4622b37f
mov dword [esp + 0x44], 0x24d80
imul eax, dword [esp + 0x44], 0x59
pop ecx
push 0x4d
mov dword [esp + 0x44], eax
xor dword [esp + 0x44], 0xe0926b83
add dword [esp + 0x44], 0x5a69
xor dword [esp + 0x44], 0xe05a8f60
mov dword [esp + 0x1c], 0x434204
mov eax, dword [esp + 0x1c]
div ecx
xor edx, edx
mov dword [esp + 0x1c], eax
xor dword [esp + 0x1c], 0x5a31263e
shr dword [esp + 0x1c], 2
xor dword [esp + 0x1c], 0x16898105
mov dword [esp + 0x34], 0x1ae525
add dword [esp + 0x34], 0x5b0
mov eax, dword [esp + 0x34]
pop ecx
div ecx
push 0x3d
mov dword [esp + 0x34], eax
xor edx, edx
add dword [esp + 0x34], 0xfe9
xor dword [esp + 0x34], 0xe43f2
mov dword [esp + 0x74], 0x901f25
add dword [esp + 0x74], 0xffff2dc4
mov eax, dword [esp + 0x74]
pop ecx
div ecx
mov dword [esp + 0x70], eax
xor dword [esp + 0x70], 0x24b56
mov dword [esp + 0xb0], 0x5c4edc
xor dword [esp + 0xb0], 0xe13f7f20
xor dword [esp + 0xb0], 0xe1618c1f
mov dword [esp + 0xac], 0x21a5f1
add dword [esp + 0xac], 0xffff31e6
xor dword [esp + 0xac], 0x2f4f1b
mov dword [esp + 0x5c], 0x8f6d68
imul eax, dword [esp + 0x5c], 0x12
xor edx, edx
push 0x74
pop ecx
push 0xe
mov dword [esp + 0x60], eax
shl dword [esp + 0x60], 0xd
xor dword [esp + 0x60], 0xb6270455
mov dword [esp + 0x5c], 0x1fe57f
shl dword [esp + 0x5c], 7
imul eax, dword [esp + 0x5c], 0x26
mov dword [esp + 0x5c], eax
xor dword [esp + 0x5c], 0x5e099b11
mov dword [esp + 0x54], 0x17d12
add dword [esp + 0x54], 0xffff8639
add dword [esp + 0x54], 0x2710
xor dword [esp + 0x54], 0xf3b80
mov dword [esp + 0x8c], 0xbe2f7a
add dword [esp + 0x8c], 0xffffd1d1
mov eax, dword [esp + 0x8c]
div ecx
xor edx, edx
mov dword [esp + 0x8c], eax
xor dword [esp + 0x8c], 0x4c798
mov dword [esp + 0x4c], 0xccb500
mov eax, dword [esp + 0x4c]
pop ecx
div ecx
push 0x25
mov dword [esp + 0x4c], eax
xor edx, edx
mov eax, dword [esp + 0x4c]
pop ecx
div ecx
push 0x4e
mov dword [esp + 0x4c], eax
xor edx, edx
shr dword [esp + 0x4c], 1
xor dword [esp + 0x4c], 0x4e54a
mov dword [esp + 0x2c], 0x1281ad
shl dword [esp + 0x2c], 4
or dword [esp + 0x2c], 0x35eb381e
xor dword [esp + 0x2c], 0x661831c8
xor dword [esp + 0x2c], 0x53f42a5f
mov dword [esp + 0x18], 0xc42e7a
or dword [esp + 0x18], 0xac555f80
xor dword [esp + 0x18], 0xdad5f6d1
xor dword [esp + 0x18], 0x7b51a8c
xor dword [esp + 0x18], 0x71b457e1
mov dword [esp + 0x14], 0x58cdf0
mov eax, dword [esp + 0x14]
pop ecx
div ecx
push 0x7c
mov dword [esp + 0x14], eax
xor edx, edx
mov eax, dword [esp + 0x14]
pop ecx
div ecx
push 0x71
mov dword [esp + 0x14], eax
xor edx, edx
add dword [esp + 0x14], 0xffff7d2e
xor dword [esp + 0x14], 0xfffa0866
mov dword [esp + 0x68], 0xab20b7
add dword [esp + 0x68], 0xffff4ec7
shr dword [esp + 0x68], 0xa
xor dword [esp + 0x68], 0xac3bb
mov dword [esp + 0x70], 0x73aeba
xor dword [esp + 0x70], 0x5c536f7b
shr dword [esp + 0x70], 3
xor dword [esp + 0x70], 0xb822968
mov dword [esp + 0x20], 0x2b315e
imul eax, dword [esp + 0x20], 0x14
pop ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
div ecx
mov dword [esp + 0x1c], eax
shl dword [esp + 0x1c], 2
xor dword [esp + 0x1c], 0x117be2
mov dword [esp + 0x84], 0xf38d74
xor edx, edx
add dword [esp + 0x84], 0xffff2ff7
shl dword [esp + 0x84], 8
xor dword [esp + 0x84], 0xf2b4886e
mov dword [esp + 0x7c], 0x26049
mov eax, dword [esp + 0x7c]
push 0x38
pop ecx
div ecx
push 0x21
mov dword [esp + 0x80], eax
xor edx, edx
xor dword [esp + 0x80], 0xbad4e020
xor dword [esp + 0x80], 0xbadec9c6
mov dword [esp + 0x30], 0x2271e9
add dword [esp + 0x30], 0xfffffef4
xor dword [esp + 0x30], 0x94302fc7
imul eax, dword [esp + 0x30], 0x4d
pop ecx
push 0x54
mov dword [esp + 0x30], eax
xor dword [esp + 0x30], 0x8983a5b9
mov dword [esp + 0x28], 0xf256ae
xor dword [esp + 0x28], 0x6b661a38
imul eax, dword [esp + 0x28], 0x71
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
div ecx
xor edx, edx
mov dword [esp + 0x28], eax
xor dword [esp + 0x28], 0x3c0f16f
mov dword [esp + 0xa4], 0xcd00ac
add dword [esp + 0xa4], 0x3459
xor dword [esp + 0xa4], 0xcb1f3a
mov dword [esp + 0xac], 0x5c0348
imul eax, dword [esp + 0xac], 7
pop ecx
push 9
mov dword [esp + 0xac], eax
xor dword [esp + 0xac], 0x2813856
mov dword [esp + 0x40], 0xbbab01
add dword [esp + 0x40], 0xffffd343
shr dword [esp + 0x40], 5
mov eax, dword [esp + 0x40]
div ecx
xor edx, edx
mov dword [esp + 0x40], eax
xor dword [esp + 0x40], 0x97c64
mov dword [esp + 0x98], 0x3d653b
mov eax, dword [esp + 0x98]
pop ecx
div ecx
mov dword [esp + 0x94], eax
xor dword [esp + 0x94], 0x8d29b
mov dword [esp + 0x34], 0xea48bf
shl dword [esp + 0x34], 1
or dword [esp + 0x34], 0x6dbc893f
shl dword [esp + 0x34], 0xf
xor dword [esp + 0x34], 0x4cb93698
mov dword [esp + 0xa4], 0x60e14f
add dword [esp + 0xa4], 0xffffa0eb
xor dword [esp + 0xa4], 0x6da1fe
mov dword [esp + 0x60], 0xb84cd6
shl dword [esp + 0x60], 0xe
or dword [esp + 0x60], 0xae469af4
xor dword [esp + 0x60], 0xbf747a00
mov dword [esp + 0x80], 0x2ae679
add dword [esp + 0x80], 0xffffe76d
add dword [esp + 0x80], 0xffff966a
xor dword [esp + 0x80], 0x2af9b0
mov dword [esp + 0x9c], 0x5dc215
add dword [esp + 0x9c], 0xffff301b
xor dword [esp + 0x9c], 0x549305
mov dword [esp + 0x68], 0xe3917b
shl dword [esp + 0x68], 0xd
xor dword [esp + 0x68], 0xb15aed13
xor dword [esp + 0x68], 0xc37cfd68
mov dword [esp + 0x78], 0xa59055
mov eax, dword [esp + 0x78]
mov dword [esp + 0x78], eax
add dword [esp + 0x78], 0xffffdd12
xor edx, edx
xor dword [esp + 0x78], 0xa1f596
mov ebp, 0xb6e718
mov dword [esp + 0x20], 0xf0f3b7
shl dword [esp + 0x20], 0xb
mov eax, dword [esp + 0x20]
push 0x55
pop ecx
div ecx
push 0x33
mov dword [esp + 0x24], eax
xor edx, edx
xor dword [esp + 0x24], 0xc3c14bd
xor dword [esp + 0x24], 0xda6b3ec
mov dword [esp + 0x9c], 0x70e6ad
mov eax, dword [esp + 0x9c]
pop ecx
div ecx
mov ebx, dword [esp + 0xb4]
mov dword [esp + 0x98], eax
xor dword [esp + 0x98], 0x1b026
mov dword [esp + 0x4c], 0x336eab
add dword [esp + 0x4c], 0x2490
add dword [esp + 0x4c], 0xffffdec5
or dword [esp + 0x4c], 0xc166c96f
xor dword [esp + 0x4c], 0xc1736b65
mov dword [esp + 0x44], 0x11f1a3
imul eax, dword [esp + 0x44], 0x68
mov dword [esp + 0x44], eax
add dword [esp + 0x44], 0xffffb309
add dword [esp + 0x44], 0xed48
xor dword [esp + 0x44], 0x74f9ff6
push 0x5c
pop ecx
mov eax, 0x8f5cf45
cmp edi, ebp
je 0x10004654
cmp edi, 0x2411a89
je 0x100046e7
cmp edi, 0x2d3ef18
je 0x100045b5
cmp edi, 0x4a5ec26
je 0x10004598
cmp edi, eax
je 0x10004525
cmp edi, 0xb4e665b
jne 0x100046d9
push ecx
push dword [esp + 0x74]
lea eax, [esp + 0x2d4]
push dword [esp + 0x38]
push eax
push ecx
push ecx
push dword [esp + 0x30]
push dword [esp + 0x5c]
mov edx, dword [esp + 0xac]
mov ecx, dword [esp + 0xb0]
call fcn.1000e259
add esp, 0x20
mov edi, 0x2d3ef18
jmp 0x100044a9
push dword [esp + 0x80]
lea edx, [esp + 0xc8]
push dword [esp + 0x64]
mov ecx, dword [esp + 0xac]
call fcn.1000f14f
push ebx
push dword [esp + 0x2c]
lea ecx, [esp + 0xd4]
push dword [esp + 0x48]
lea eax, [eax*2 + 2]
push ecx
push eax
push dword [esp + 0x94]
push dword [esp + 0xd8]
push dword [esp + 0x8c]
mov edx, dword [esp + 0xc4]
call fcn.100139e4
xor ecx, ecx
add esp, 0x28
test eax, eax
mov edi, 0x2411a89
sete cl
mov dword [esp + 0xb4], ecx
jmp 0x100044a9
mov ebx, dword [0x10025bd8]
add ebx, 0x30
jmp 0x100045a6
add ebx, 2
cmp word [ebx], cx
jne 0x100045a3
add ebx, 2
mov edi, ebp
jmp 0x100044ac
mov edx, dword [esp + 0xac]
mov ecx, dword [esp + 0xb0]
push 0x1000144c
call fcn.10020ad3
lea ecx, [esp + 0x4d8]
mov esi, eax
call fcn.10022c16
push dword [esp + 0x2c]
lea eax, [esp + 0x2d4]
push eax
lea eax, [esp + 0x4e0]
push eax
mov eax, dword [0x10025bd8]
lea edx, [esp + 0xd4]
add eax, 0x30
push eax
push dword [esp + 0x5c]
push 0x104
push dword [esp + 0xa4]
push esi
push dword [esp + 0x74]
push dword [esp + 0x80]
mov eax, dword [0x10025bd8]
mov ecx, dword [esp + 0x88]
add eax, 0x238
push eax
call fcn.1001b062
push esi
push dword [esp + 0x98]
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
call fcn.10012eed
add esp, 0x38
mov edi, 0x4a5ec26
jmp 0x100044a9
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x6c]
push 0x1000149c
call fcn.10020ad3
pop ecx
mov esi, eax
lea eax, [esp + 0xb8]
push esi
push dword [esp + 0xac]
push dword [esp + 0x7c]
push dword [esp + 0xac]
push ecx
push ecx
push eax
push ecx
push dword [esp + 0x44]
push dword [esp + 0x50]
push dword [esp + 0xa4]
push ecx
push dword [esp + 0xb4]
mov edx, dword [esp + 0x88]
call fcn.10002089
test eax, eax
mov edi, 0xf961a4b
push esi
push dword [esp + 0x6c]
mov edx, dword [esp + 0xd0]
mov eax, 0x8f5cf45
mov ecx, dword [esp + 0x78]
cmove edi, eax
call fcn.10012eed
add esp, 0x3c
mov eax, 0x8f5cf45
push 0x5c
pop ecx
cmp edi, 0xf961a4b
jne 0x100044b1
jmp 0x10004704
push dword [esp + 0x44]
mov edx, dword [esp + 0x50]
push dword [esp + 0xbc]
mov ecx, dword [esp + 0xa0]
call fcn.10022a25
pop ecx
pop ecx
mov eax, dword [esp + 0xb4]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6cc
ret