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

Disassembly:
sub esp, 0xc7c
push ebx
push ebp
push esi
mov esi, dword [esp + 0xc94]
push edi
push dword [esp + 0xc9c]
mov edi, dword [esp + 0xc94]
push esi
push dword [esp + 0xc9c]
push edi
push edx
push ecx
call fcn.100056b2
mov dword [esp + 0x114], 0x5191
xor ebp, ebp
imul eax, dword [esp + 0x114], 0x56
add esp, 0x18
mov dword [esp + 0x150], ebp
mov ecx, 0x2a5de1a5
mov dword [esp + 0xfc], eax
xor dword [esp + 0xfc], 0x1b362a
mov dword [esp + 0xf4], 0x7b48
add dword [esp + 0xf4], 0xfffffae2
xor dword [esp + 0xf4], 0x48e
mov dword [esp + 0x1c], 0xfb4b
shr dword [esp + 0x1c], 0xf
add dword [esp + 0x1c], 0xd610
or dword [esp + 0x1c], 0xf3105de5
xor dword [esp + 0x1c], 0xf310f378
mov dword [esp + 0x18], 0x9b1e
shr dword [esp + 0x18], 8
xor dword [esp + 0x18], 0xb792a5e4
or dword [esp + 0x18], 0xa0a9b449
xor dword [esp + 0x18], 0xb7bbf9a0
mov dword [esp + 0x148], 0x8759
add dword [esp + 0x148], 0xffffcbd8
xor dword [esp + 0x148], 0x703f
mov dword [esp + 0x24], 0x14b0
imul eax, dword [esp + 0x24], 0x38
mov dword [esp + 0x24], eax
or dword [esp + 0x24], 0xd4c47a9c
add dword [esp + 0x24], 0xffff1c59
xor dword [esp + 0x24], 0xd4c44860
mov dword [esp + 0xb0], 0x6232
xor dword [esp + 0xb0], 0xdc31e630
shr dword [esp + 0xb0], 1
xor dword [esp + 0xb0], 0x6e1897ce
mov dword [esp + 0x2c], 0x7298
add dword [esp + 0x2c], 0x69dd
or dword [esp + 0x2c], 0x6390fda1
xor dword [esp + 0x2c], 0xdd2d2ef6
xor dword [esp + 0x2c], 0xbebdb0ec
mov dword [esp + 0xc0], 0x228e
xor dword [esp + 0xc0], 0x1a8b5cf2
imul eax, dword [esp + 0xc0], 0xc
mov dword [esp + 0xc0], eax
xor dword [esp + 0xc0], 0x3e89f3bf
mov dword [esp + 0x84], 0x762e
imul eax, dword [esp + 0x84], 0x59
mov dword [esp + 0x84], eax
or dword [esp + 0x84], 0x558f0020
shr dword [esp + 0x84], 6
xor dword [esp + 0x84], 0x156e9fd
mov dword [esp + 0x114], 0x835d
shl dword [esp + 0x114], 1
xor dword [esp + 0x114], 0x12854
mov dword [esp + 0x7c], 0x96c1
shl dword [esp + 0x7c], 4
add dword [esp + 0x7c], 0xffff53be
or dword [esp + 0x7c], 0xfd5d0ed6
xor dword [esp + 0x7c], 0xfd5dc139
mov dword [esp + 0x74], 0xffcb
shr dword [esp + 0x74], 4
add dword [esp + 0x74], 0xa69f
or dword [esp + 0x74], 0x535a1459
xor dword [esp + 0x74], 0x535ae4d6
mov dword [esp + 0xc4], 0xe3
add dword [esp + 0xc4], 0xffffd99b
imul eax, dword [esp + 0xc4], 0x50
mov dword [esp + 0xc4], eax
xor dword [esp + 0xc4], 0xfff472d0
mov dword [esp + 0x88], 0xbaa6
xor edx, edx
xor dword [esp + 0x88], 0xbd6a9f93
shl dword [esp + 0x88], 7
xor dword [esp + 0x88], 0xb512a337
mov dword [esp + 0xb4], 0x3531
shl dword [esp + 0xb4], 6
shr dword [esp + 0xb4], 0xe
xor dword [esp + 0xb4], 0x12d0
mov dword [esp + 0xa8], 0xe66d
xor dword [esp + 0xa8], 0x1985e749
shl dword [esp + 0xa8], 0x10
xor dword [esp + 0xa8], 0x1240ff4
mov dword [esp + 0x68], 0xdadb
mov eax, dword [esp + 0x68]
push 0x72
pop ebx
div ebx
push 0x62
mov dword [esp + 0x6c], eax
xor edx, edx
shl dword [esp + 0x6c], 5
shl dword [esp + 0x6c], 0xd
xor dword [esp + 0x6c], 0x7ac09df
mov dword [esp + 0x11c], 0xa461
add dword [esp + 0x11c], 0xffffc6b7
xor dword [esp + 0x11c], 0x386c
mov dword [esp + 0x138], 0xbe4d
add dword [esp + 0x138], 0xffffcdbc
xor dword [esp + 0x138], 0x91a9
mov dword [esp + 0x98], 0x5b34
xor dword [esp + 0x98], 0x9869eb0c
add dword [esp + 0x98], 0xffff7c43
xor dword [esp + 0x98], 0x98694e20
mov dword [esp + 0x90], 0xb3cb
add dword [esp + 0x90], 0xffff6388
xor dword [esp + 0x90], 0x2c5ba937
xor dword [esp + 0x90], 0x2c5bd4ce
mov dword [esp + 0x48], 0x52c0
mov eax, dword [esp + 0x48]
pop ebx
div ebx
push 0x2b
mov dword [esp + 0x48], eax
xor edx, edx
add dword [esp + 0x48], 0xffff9124
imul eax, dword [esp + 0x48], 0x41
pop ebx
push 0x4b
mov dword [esp + 0x48], eax
xor dword [esp + 0x48], 0xffe43930
mov dword [esp + 0x40], 0xac8b
shl dword [esp + 0x40], 0xd
shr dword [esp + 0x40], 3
add dword [esp + 0x40], 0xa7db
xor dword [esp + 0x40], 0x2b29829
mov dword [esp + 0x148], 0x643b
mov eax, dword [esp + 0x148]
div ebx
xor edx, edx
mov dword [esp + 0x148], eax
xor dword [esp + 0x148], 0x10f3
mov dword [esp + 0x128], 0xa997
shl dword [esp + 0x128], 0xa
xor dword [esp + 0x128], 0x2a66a03
mov dword [esp + 0x38], 0x7f7f
add dword [esp + 0x38], 0xffffaeb4
add dword [esp + 0x38], 0xffff06c6
shl dword [esp + 0x38], 0xf
xor dword [esp + 0x38], 0x9a7cd3e3
mov dword [esp + 0xa8], 0xf2f
imul eax, dword [esp + 0xa8], 0x34
pop ebx
mov dword [esp + 0xa4], eax
imul eax, dword [esp + 0xa4], 0x15
mov dword [esp + 0xa4], eax
xor dword [esp + 0xa4], 0x40dcde
mov dword [esp + 0x9c], 0x259b
mov eax, dword [esp + 0x9c]
div ebx
mov dword [esp + 0x9c], eax
or dword [esp + 0x9c], 0xb0025bdd
xor edx, edx
xor dword [esp + 0x9c], 0xb0023f27
mov dword [esp + 0x5c], 0xf72d
add dword [esp + 0x5c], 0xb64c
add dword [esp + 0x5c], 0xffff542c
shr dword [esp + 0x5c], 3
xor dword [esp + 0x5c], 0x3f89
mov dword [esp + 0x54], 0xcb46
xor dword [esp + 0x54], 0x17d5c45e
imul eax, dword [esp + 0x54], 0x28
push 0xf
pop ebx
push 0x25
mov dword [esp + 0x58], eax
imul eax, dword [esp + 0x58], 0x7b
mov dword [esp + 0x58], eax
xor dword [esp + 0x58], 0x6ba3f8c
mov dword [esp + 0x130], 0x1c0d
shl dword [esp + 0x130], 3
xor dword [esp + 0x130], 0xc19e
mov dword [esp + 0x50], 0x99a2
imul eax, dword [esp + 0x50], 0x3c
mov dword [esp + 0x50], eax
shl dword [esp + 0x50], 2
xor dword [esp + 0x50], 0xb9e099b
xor dword [esp + 0x50], 0xb0e3d8f
mov dword [esp + 0xdc], 0xc4f9
mov eax, dword [esp + 0xdc]
div ebx
xor edx, edx
mov dword [esp + 0xdc], eax
xor dword [esp + 0xdc], 0x1e9f
mov dword [esp + 0x134], 0xe9a6
imul eax, dword [esp + 0x134], 0x38
pop ebx
push 0x3b
mov dword [esp + 0x134], eax
xor dword [esp + 0x134], 0x330038
mov dword [esp + 0x104], 0xfa06
add dword [esp + 0x104], 0xffff4131
xor dword [esp + 0x104], 0x7322
mov dword [esp + 0xa4], 0x3711
shr dword [esp + 0xa4], 6
add dword [esp + 0xa4], 0x3b98
xor dword [esp + 0xa4], 0x2f0a
mov dword [esp + 0x24], 0xdc2f
xor dword [esp + 0x24], 0xf29ba80e
mov eax, dword [esp + 0x24]
div ebx
xor edx, edx
mov dword [esp + 0x24], eax
add dword [esp + 0x24], 0x267d
xor dword [esp + 0x24], 0x68eac78
mov dword [esp + 0x54], 0xb4c2
shr dword [esp + 0x54], 4
xor dword [esp + 0x54], 0x633a81e3
xor dword [esp + 0x54], 0xd55c9070
xor dword [esp + 0x54], 0xb6663903
mov dword [esp + 0xc0], 0x8be9
mov eax, dword [esp + 0xc0]
pop ebx
div ebx
mov dword [esp + 0xbc], eax
add dword [esp + 0xbc], 0xffff9a8b
xor dword [esp + 0xbc], 0xffffa766
mov dword [esp + 0x78], 0x5bde
imul eax, dword [esp + 0x78], 0x59
mov dword [esp + 0x78], eax
shl dword [esp + 0x78], 0xd
shr dword [esp + 0x78], 9
xor dword [esp + 0x78], 0x7f2aa6
mov dword [esp + 0x90], 0x411a
xor dword [esp + 0x90], 0xcf7ab9d1
shr dword [esp + 0x90], 7
xor dword [esp + 0x90], 0x19eb365
mov dword [esp + 0xe0], 0x6764
xor dword [esp + 0xe0], 0xbe6d5056
xor dword [esp + 0xe0], 0xbe6d5d89
mov dword [esp + 0x108], 0x76f2
xor dword [esp + 0x108], 0xb105586c
xor dword [esp + 0x108], 0xb10528cb
xor edx, edx
mov dword [esp + 0xe8], 0x1628
shl dword [esp + 0xe8], 0xf
xor dword [esp + 0xe8], 0xb146bd8
mov dword [esp + 0x13c], 0x8150
xor dword [esp + 0x13c], 0x1db2c46
xor dword [esp + 0x13c], 0x1dbc499
mov dword [esp + 0x28], 0xe57d
add dword [esp + 0x28], 0xffff940d
imul eax, dword [esp + 0x28], 0xa
push 0x52
pop ebx
push 0x2f
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
div ebx
xor edx, edx
mov dword [esp + 0x2c], eax
xor dword [esp + 0x2c], 0x2d62
mov dword [esp + 0xd4], 0xda51
shl dword [esp + 0xd4], 8
mov eax, dword [esp + 0xd4]
pop ebx
div ebx
push 0xf
mov dword [esp + 0xd4], eax
xor edx, edx
xor dword [esp + 0xd4], 0x4b460
mov dword [esp + 0x144], 0xc4bd
or dword [esp + 0x144], 0x99168015
xor dword [esp + 0x144], 0x991680ca
mov dword [esp + 0x4c], 0xf40b
imul eax, dword [esp + 0x4c], 0x64
pop ebx
mov dword [esp + 0x48], eax
shr dword [esp + 0x48], 0x10
add dword [esp + 0x48], 0x4d44
xor dword [esp + 0x48], 0x3d1f
mov dword [esp + 0x80], 0xe0fb
xor dword [esp + 0x80], 0x7a83a018
xor dword [esp + 0x80], 0x3dd3f5db
xor dword [esp + 0x80], 0x2cc23c84
xor dword [esp + 0x80], 0x6b92f75e
mov dword [esp + 0x40], 0x3ba
add dword [esp + 0x40], 0xe0c2
imul eax, dword [esp + 0x40], 0x6e
mov dword [esp + 0x40], eax
add dword [esp + 0x40], 0x8785
xor dword [esp + 0x40], 0x629da9
mov dword [esp + 0x110], 0xc1c4
xor dword [esp + 0x110], 0xb305b232
xor dword [esp + 0x110], 0xb3050daf
mov dword [esp + 0x138], 0x83df
xor dword [esp + 0x138], 0x6f2297cb
xor dword [esp + 0x138], 0x6f221ab4
mov dword [esp + 0xec], 0xe7e3
shr dword [esp + 0xec], 0xe
xor dword [esp + 0xec], 0x3f29
mov dword [esp + 0x6c], 0x9be6
or dword [esp + 0x6c], 0xdb39baf6
imul eax, dword [esp + 0x6c], 0xe
mov dword [esp + 0x6c], eax
shl dword [esp + 0x6c], 4
xor dword [esp + 0x6c], 0xd2843690
mov dword [esp + 0x98], 0x25e5
imul eax, dword [esp + 0x98], 0x5f
mov dword [esp + 0x98], eax
add dword [esp + 0x98], 0xf2a9
xor dword [esp + 0x98], 0xf50c4
mov dword [esp + 0xf0], 0x6aad
shr dword [esp + 0xf0], 0xb
xor dword [esp + 0xf0], 0xb06
mov dword [esp + 0x11c], 0xe6d7
imul eax, dword [esp + 0x11c], 0x44
mov dword [esp + 0x11c], eax
xor dword [esp + 0x11c], 0x3d0209
mov dword [esp + 0x58], 0xa945
mov eax, dword [esp + 0x58]
div ebx
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x58]
xor edx, edx
push 0x22
pop ebx
div ebx
push 0x1a
mov dword [esp + 0x5c], eax
xor edx, edx
add dword [esp + 0x5c], 0x1aba
xor dword [esp + 0x5c], 0x3b06
mov dword [esp + 0x64], 0x44c5
add dword [esp + 0x64], 0x4f06
shl dword [esp + 0x64], 0xe
shr dword [esp + 0x64], 0xb
xor dword [esp + 0x64], 0x4ce26
mov dword [esp + 0x3c], 0xcc93
mov eax, dword [esp + 0x3c]
pop ebx
div ebx
push 0x29
mov dword [esp + 0x3c], eax
xor edx, edx
mov eax, dword [esp + 0x3c]
pop ebx
div ebx
push 0x77
mov dword [esp + 0x3c], eax
xor edx, edx
mov eax, dword [esp + 0x3c]
pop ebx
div ebx
push 0x26
mov dword [esp + 0x3c], eax
xor edx, edx
xor dword [esp + 0x3c], 0x43f4
mov dword [esp + 0x12c], 0xa0a2
xor dword [esp + 0x12c], 0x7e84551b
xor dword [esp + 0x12c], 0x7e84971f
mov dword [esp + 0x74], 0xdad7
mov eax, dword [esp + 0x74]
pop ebx
div ebx
push 0x42
mov dword [esp + 0x74], eax
xor edx, edx
imul eax, dword [esp + 0x74], 0x48
pop ebx
push 7
mov dword [esp + 0x74], eax
add dword [esp + 0x74], 0xffff34f2
xor dword [esp + 0x74], 0x936e
mov dword [esp + 0x34], 0x892d
shr dword [esp + 0x34], 6
xor dword [esp + 0x34], 0xe5fcb6e4
shl dword [esp + 0x34], 4
xor dword [esp + 0x34], 0x5fcb3f6d
mov dword [esp + 0xfc], 0x9a3e
mov eax, dword [esp + 0xfc]
div ebx
xor edx, edx
mov dword [esp + 0xfc], eax
xor dword [esp + 0xfc], 0x6544
mov dword [esp + 0x124], 0x2293
add dword [esp + 0x124], 0x79b
xor dword [esp + 0x124], 0x6b1d
mov dword [esp + 0xbc], 0x3e81
imul eax, dword [esp + 0xbc], 0x31
pop ebx
mov dword [esp + 0xb8], eax
add dword [esp + 0xb8], 0xb35c
xor dword [esp + 0xb8], 0xcf45c
mov dword [esp + 0x64], 0x7cb6
xor dword [esp + 0x64], 0x88e3463d
imul eax, dword [esp + 0x64], 0x56
mov dword [esp + 0x64], eax
shl dword [esp + 0x64], 0xf
xor dword [esp + 0x64], 0xd559658e
mov dword [esp + 0xac], 0xf45a
mov eax, dword [esp + 0xac]
div ebx
mov dword [esp + 0xac], eax
imul eax, dword [esp + 0xac], 0x3e
xor edx, edx
push 0x60
pop ebx
mov dword [esp + 0xac], eax
xor dword [esp + 0xac], 0x800e5
mov dword [esp + 0xe4], 0xf8f
shr dword [esp + 0xe4], 4
xor dword [esp + 0xe4], 0x477d
mov dword [esp + 0xdc], 0xf07b
shr dword [esp + 0xdc], 0xb
xor dword [esp + 0xdc], 0x7281
mov dword [esp + 0xd4], 0xb5b1
shl dword [esp + 0xd4], 0xd
add dword [esp + 0xd4], 0xffff2f0a
xor dword [esp + 0xd4], 0x16b57b93
mov dword [esp + 0x10c], 0xd67e
xor dword [esp + 0x10c], 0x498b92c7
xor dword [esp + 0x10c], 0x498b23c9
mov dword [esp + 0xcc], 0x2221
shl dword [esp + 0xcc], 2
shr dword [esp + 0xcc], 6
xor dword [esp + 0xcc], 0x659f
mov dword [esp + 0x104], 0x2a0b
shr dword [esp + 0x104], 4
xor dword [esp + 0x104], 0x66a5
mov dword [esp + 0xc8], 0x810d
mov eax, dword [esp + 0xc8]
div ebx
mov dword [esp + 0xc8], eax
shl dword [esp + 0xc8], 0x10
xor dword [esp + 0xc8], 0x1580000
mov eax, dword [esp + 0x15c]
mov ebx, dword [esp + 0x158]
mov dword [esp + 0x14], eax
mov dword [esp + 0x154], ebx
cmp ecx, 0x1e362325
jg 0x1001ad8b
je 0x1001ad1d
cmp ecx, 0x12f44b45
jg 0x1001ab9d
je 0x1001ab71
cmp ecx, 0x1ac68c4
je 0x1001ab3f
cmp ecx, 0x4136454
je 0x1001ab0d
cmp ecx, 0x599ba18
je 0x1001aa76
cmp ecx, 0x93c2f64
jne 0x1001afe1
lea ecx, [esp + 0x208]
call fcn.10005856
mov ecx, 0x599ba18
mov eax, dword [esp + 0x14]
jmp 0x1001aa0f
push 0x100014d4
push dword [esp + 0xc0]
mov edx, dword [esp + 0x58]
mov ecx, dword [esp + 0x28]
call fcn.1001bf25
push dword [esp + 0x110]
mov esi, eax
lea edx, [esp + 0x214]
push dword [esp + 0xec]
lea eax, [esp + 0x198]
push dword [esp + 0xa0]
lea ecx, [esp + 0x49c]
push eax
lea eax, [esp + 0x2a0]
push eax
push 0x400
push dword [esp + 0x98]
push esi
call fcn.100164ec
push esi
push dword [esp + 0xfc]
push dword [esp + 0x58]
mov edx, dword [esp + 0x170]
mov ecx, dword [esp + 0x11c]
call fcn.1001c5f7
add esp, 0x34
mov ecx, 0x2dee6d8e
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0xc98]
jmp 0x1001aa0f
push dword [esp + 0x58]
push dword [esp + 0x164]
push dword [esp + 0x124]
mov edx, dword [esp + 0xfc]
mov ecx, dword [esp + 0xa4]
call fcn.100091cd
add esp, 0xc
mov ecx, 0x12f44b45
jmp 0x1001aa70
push dword [esp + 0xb8]
push dword [esp + 0x15c]
push dword [esp + 0x128]
mov edx, dword [esp + 0x104]
mov ecx, dword [esp + 0x3c]
call fcn.100091cd
add esp, 0xc
mov ecx, 0x3077984c
jmp 0x1001aa70
push dword [esp + 0x70]
push dword [esp + 0x170]
push dword [esp + 0x130]
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x6c]
call fcn.100091cd
add esp, 0xc
mov ecx, 0x1ac68c4
jmp 0x1001aa70
cmp ecx, 0x1993ee00
je 0x1001acdf
cmp ecx, 0x1bb47d9a
je 0x1001ac59
cmp ecx, 0x1bef9ca6
jne 0x1001afe1
mov eax, dword [esp + 0x14c]
lea edi, [esp + 0x288]
push 6
xor edx, edx
pop ecx
div ecx
mov ebp, edx
inc ebp
je 0x1001ac38
xor ebx, ebx
inc ebx
mov esi, dword [esp + 0x14c]
lea ecx, [esp + 0x14c]
push 0xf
pop eax
push edi
push dword [esp + 0xa4]
and esi, eax
push dword [esp + 0x108]
add esi, 4
push dword [esp + 0x13c]
mov edx, dword [esp + 0xe8]
push esi
push ebx
call fcn.100060da
add esp, 0x18
lea edi, [edi + esi*2]
push 0x2f
pop eax
mov word [edi], ax
add edi, 2
dec ebp
jne 0x1001abde
mov ebx, dword [esp + 0x154]
mov esi, dword [esp + 0xc98]
mov ebp, dword [esp + 0x150]
xor eax, eax
mov word [edi], ax
mov ecx, 0x93c2f64
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0xc90]
jmp 0x1001aa0f
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x164], eax
lea eax, [esp + 0x488]
push eax
push dword [esp + 0x16c]
and dword [esp + 0x168], 0
lea eax, [esp + 0x168]
push dword [esp + 0x140]
push eax
lea eax, [esp + 0x17c]
push eax
lea eax, [esp + 0x29c]
push eax
push dword [esp + 0x128]
lea eax, [esp + 0x1a4]
push dword [esp + 0x5c]
push eax
push dword [esp + 0xa4]
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x168]
call fcn.1000adce
add esp, 0x28
neg eax
sbb ecx, ecx
and ecx, 0x1b5b9d4f
add ecx, 0x12f44b45
jmp 0x1001aa70
lea eax, [esp + 0x158]
push eax
push dword [esp + 0x11c]
lea ecx, [esp + 0x17c]
push dword [esp + 0x70]
mov edx, dword [esp + 0xb4]
call fcn.100106c2
add esp, 0xc
neg eax
sbb ecx, ecx
and ecx, 0x8d2d6d7
add ecx, 0x3077984c
jmp 0x1001aa70
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [edi + 4]
call fcn.1000adbd
mov esi, eax
mov eax, dword [esp + 0x28]
mov eax, dword [esp + 0x14c]
mov ecx, esi
call fcn.100157e8
mov ebx, eax
mov dword [esp + 0x158], ebx
pop ecx
test ebx, ebx
je 0x1001b011
push dword [edi + 4]
push dword [edi]
push esi
push dword [esp + 0xcc]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0xc0]
push ebx
call fcn.1001bd4a
add esp, 0x14
mov dword [esp + 0x14], eax
test eax, eax
je 0x1001afef
mov ecx, 0x30070f42
jmp 0x1001ab01
cmp ecx, 0x22fa333e
je 0x1001afb3
cmp ecx, 0x2a5de1a5
je 0x1001af8f
cmp ecx, 0x2dee6d8e
je 0x1001af5e
cmp ecx, 0x2e4fe894
je 0x1001af25
cmp ecx, 0x30070f42
je 0x1001aecf
cmp ecx, 0x3077984c
je 0x1001ae9d
cmp ecx, 0x394a6f23
jne 0x1001afe1
push 0x100014a4
push dword [esp + 0x90]
mov edx, dword [esp + 0x9c]
mov ecx, dword [esp + 0x13c]
call fcn.1001bf25
push dword [esp + 0xa4]
mov esi, eax
mov eax, dword [0x100221c0]
push dword [esp + 0xb0]
push dword [esp + 0x44]
mov ecx, dword [eax + 0x18]
push esi
movzx eax, byte [ecx + 1]
push eax
movzx eax, byte [ecx + 2]
push 0x40
push eax
movzx eax, byte [ecx]
push eax
push dword [esp + 0x14c]
lea eax, [esp + 0x1b4]
push dword [esp + 0x170]
mov edx, dword [esp + 0x6c]
mov ecx, dword [esp + 0x74]
push eax
mov eax, dword [0x100221c0]
mov eax, dword [eax + 0x18]
movzx eax, byte [eax + 3]
push eax
call fcn.10003482
push esi
push dword [esp + 0x88]
push dword [esp + 0x16c]
mov edx, dword [esp + 0x98]
mov ecx, dword [esp + 0xa0]
call fcn.1001c5f7
mov eax, dword [0x100221c0]
add esp, 0x44
mov ecx, 0x1bef9ca6
mov eax, dword [eax + 0x18]
movzx eax, word [eax + 4]
mov dword [esp + 0x168], eax
jmp 0x1001aafd
push dword [esp + 0xdc]
push dword [esp + 0x178]
push dword [esp + 0xec]
mov edx, dword [esp + 0xb8]
mov ecx, dword [esp + 0x70]
call fcn.100091cd
add esp, 0xc
mov ecx, 0x22fa333e
jmp 0x1001aa70
push dword [esp + 0xb4]
mov dword [esp + 0x188], eax
lea ecx, [esp + 0x178]
lea eax, [esp + 0x180]
mov dword [esp + 0x180], esi
push eax
push dword [esp + 0x90]
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x18c], ebx
call fcn.1000a83a
add esp, 0xc
neg eax
sbb ecx, ecx
and ecx, 0xf699bac2
add ecx, 0x22fa333e
jmp 0x1001aa70
push dword [esp + 0x6c]
mov ecx, dword [esp + 0xc98]
lea edx, [esp + 0x164]
push dword [esp + 0xf0]
call fcn.1000c07d
pop ecx
pop ecx
test eax, eax
mov ecx, 0x4136454
push 1
pop eax
cmovne ebp, eax
mov dword [esp + 0x150], ebp
jmp 0x1001aa70
lea eax, [esp + 0x16c]
push eax
lea edx, [esp + 0x20c]
lea ecx, [esp + 0x15c]
call fcn.10011259
neg eax
pop ecx
sbb ecx, ecx
and ecx, 0x1a0814d6
add ecx, 0x1ac68c4
jmp 0x1001aa70
mov eax, dword [esp + 0xf4]
mov eax, dword [esp + 0xfc]
call fcn.10017b6b
mov dword [esp + 0x14c], eax
mov ecx, 0x1e362325
jmp 0x1001aa70
push dword [esp + 0x104]
push ebx
push dword [esp + 0xd4]
mov edx, dword [esp + 0x118]
mov ecx, dword [esp + 0xe0]
call fcn.100091cd
mov eax, dword [esp + 0x20]
add esp, 0xc
mov ecx, 0x12d8e207
cmp ecx, 0x12d8e207
jne 0x1001aa0f
jmp 0x1001b011
push dword [esp + 0x74]
push ebx
push dword [esp + 0x84]
mov edx, dword [esp + 0x120]
mov ecx, dword [esp + 0x90]
call fcn.100091cd
add esp, 0xc
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0xc7c
ret