Function at 0x100cade9
Capabilities:
Encode data using xor
Hash data using murmur3
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x84
call fcn.1039fcd0
test ecx, ecx
mov edx, dword [esp + 0x88]
mov eax, dword [esp + 0x8c]
je 0x100cbedc
push ebx
push ebp
push esi
mov dword [esp + 0x4c], ecx
push edi
jmp 0x100cadc0
mov ecx, dword [edx + 4]
mov esi, dword [edx + 0x14]
mov ebp, dword [edx + 0x10]
mov edi, dword [edx]
mov ebx, dword [edx + 0x18]
mov dword [esp + 0x44], esi
movzx esi, byte [eax]
shl esi, 0x18
mov dword [esp + 0x24], ecx
mov ecx, dword [edx + 8]
inc eax
mov dword [esp + 0x14], ecx
mov ecx, dword [edx + 0xc]
mov edx, dword [edx + 0x1c]
mov dword [esp + 0x34], edx
movzx edx, byte [eax]
shl edx, 0x10
or esi, edx
xor edx, edx
mov dh, byte [eax + 1]
inc eax
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x20], ebp
or esi, edx
movzx edx, byte [eax + 1]
or esi, edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x54], esi
inc eax
mov edx, ebp
rol edx, 0x1a
mov esi, ebp
rol esi, 0x15
xor edx, esi
mov esi, ebp
rol esi, 7
xor edx, esi
mov esi, ebp
not esi
and esi, ebx
mov ebx, dword [esp + 0x44]
and ebx, ebp
add edx, dword [esp + 0x10]
xor esi, ebx
add esi, edx
mov edx, dword [esp + 0x34]
lea edx, [esi + edx + 0x428a2f98]
add ecx, edx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x24]
mov esi, edx
and edx, edi
xor esi, edi
mov ebx, edi
rol ebx, 0x1e
mov ebp, edi
rol ebp, 0x13
xor ebx, ebp
mov ebp, edi
rol ebp, 0xa
xor ebx, ebp
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x40], esi
and esi, ebp
movzx ebp, byte [eax + 1]
xor esi, edx
inc eax
mov dword [esp + 0x38], edx
add ebx, dword [esp + 0x10]
movzx edx, byte [eax + 1]
shl ebp, 0x18
add esi, ebx
inc eax
shl edx, 0x10
or ebp, edx
inc eax
xor edx, edx
mov dh, byte [eax]
mov dword [esp + 0x30], ecx
or ebp, edx
movzx edx, byte [eax + 1]
or ebp, edx
inc eax
mov edx, ecx
rol edx, 0x1a
mov ebx, ecx
rol ebx, 0x15
xor edx, ebx
mov ebx, ecx
rol ebx, 7
xor edx, ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x58], ebp
mov ebp, dword [esp + 0x44]
mov ebx, ecx
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x20]
and ebp, ecx
xor ebx, ebp
add edx, dword [esp + 0x10]
add ebx, edx
mov edx, dword [esp + 0x3c]
lea edx, [ebx + edx + 0x71374491]
mov ebp, dword [esp + 0x14]
add ebp, edx
mov dword [esp + 0x10], edx
mov ebx, esi
rol ebx, 0x1e
mov edx, esi
rol edx, 0x13
xor ebx, edx
mov edx, esi
rol edx, 0xa
xor ebx, edx
mov edx, dword [esp + 0x40]
and edx, esi
xor edx, dword [esp + 0x38]
inc eax
mov dword [esp + 0x34], edx
add ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x34]
add edx, ebx
movzx ebx, byte [eax + 1]
mov dword [esp + 0x1c], edx
movzx edx, byte [eax]
shl edx, 0x18
shl ebx, 0x10
or edx, ebx
xor ebx, ebx
inc eax
mov bh, byte [eax + 1]
inc eax
and ecx, ebp
mov dword [esp + 0x14], ebp
or edx, ebx
movzx ebx, byte [eax + 1]
or edx, ebx
inc eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x5c], edx
mov edx, ebp
rol edx, 0x1a
mov ebx, ebp
rol ebx, 0x15
xor edx, ebx
mov ebx, ebp
rol ebx, 7
xor edx, ebx
mov ebx, ebp
not ebx
and ebx, dword [esp + 0x20]
inc eax
xor ebx, ecx
add edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x44]
add ebx, edx
lea ecx, [ebx + ecx - 0x4a3f0431]
mov edx, dword [esp + 0x24]
add edx, ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x1c]
mov ebx, edx
rol ebx, 0x1e
mov ecx, edx
rol ecx, 0x13
xor ebx, ecx
mov ecx, edx
rol ecx, 0xa
xor ebx, ecx
mov ecx, edx
xor ecx, edi
and ecx, esi
and edx, edi
xor ecx, edx
add ebx, dword [esp + 0x10]
add ecx, ebx
movzx edx, byte [eax + 1]
mov dword [esp + 0x28], ecx
movzx ecx, byte [eax]
shl ecx, 0x18
shl edx, 0x10
or ecx, edx
xor edx, edx
inc eax
mov dh, byte [eax + 1]
inc eax
or ecx, edx
movzx edx, byte [eax + 1]
or ecx, edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x24]
inc eax
mov edx, ecx
mov ebx, ecx
rol edx, 0x1a
rol ebx, 0x15
xor edx, ebx
mov ebx, ecx
rol ebx, 7
and ebp, ecx
xor edx, ebx
mov ebx, ecx
add edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
not ebx
and ebx, dword [esp + 0x30]
inc eax
xor ebx, ebp
add ebx, edx
mov edx, dword [esp + 0x28]
lea ecx, [ebx + ecx - 0x164a245b]
mov ebx, dword [esp + 0x1c]
add edi, ecx
mov dword [esp + 0x10], ecx
mov ebp, edx
rol ebp, 0x1e
mov ecx, edx
rol ecx, 0x13
xor ebp, ecx
mov ecx, edx
rol ecx, 0xa
xor ebp, ecx
mov ecx, ebx
xor ecx, edx
and ecx, esi
and ebx, edx
xor ecx, ebx
add ebp, dword [esp + 0x10]
add ecx, ebp
movzx ebp, byte [eax]
mov dword [esp + 0x2c], edi
shl ebp, 0x18
movzx edx, byte [eax + 1]
shl edx, 0x10
or ebp, edx
xor edx, edx
inc eax
mov dh, byte [eax + 1]
inc eax
mov ebx, edi
or ebp, edx
movzx edx, byte [eax + 1]
or ebp, edx
inc eax
mov edx, edi
rol edx, 0x1a
rol ebx, 0x15
xor edx, ebx
mov dword [esp + 0x10], ebp
mov ebx, edi
rol ebx, 7
xor edx, ebx
mov dword [esp + 0x64], ebp
mov ebp, dword [esp + 0x14]
mov ebx, edi
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x24]
and ebp, edi
mov edi, dword [esp + 0x10]
xor ebx, ebp
add edx, edi
add ebx, edx
mov edx, dword [esp + 0x30]
lea edx, [ebx + edx + 0x3956c25b]
mov ebx, dword [esp + 0x28]
add esi, edx
mov ebp, ecx
rol ebp, 0x1e
mov edi, ecx
rol edi, 0x13
xor ebp, edi
mov edi, ecx
rol edi, 0xa
xor ebp, edi
add ebp, edx
mov edi, ebx
xor edi, ecx
and edi, dword [esp + 0x1c]
and ebx, ecx
xor edi, ebx
add edi, ebp
movzx ebp, byte [eax + 1]
shl ebp, 0x18
inc eax
movzx edx, byte [eax + 1]
shl edx, 0x10
or ebp, edx
inc eax
xor edx, edx
mov dh, byte [eax + 1]
inc eax
mov ebx, esi
mov dword [esp + 0x18], esi
or ebp, edx
movzx edx, byte [eax + 1]
or ebp, edx
inc eax
mov edx, esi
rol edx, 0x1a
rol ebx, 0x15
xor edx, ebx
mov ebx, esi
rol ebx, 7
xor edx, ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x68], ebp
mov ebp, dword [esp + 0x24]
mov ebx, esi
not ebx
inc eax
and ebx, ebp
and esi, dword [esp + 0x2c]
xor ebx, esi
add edx, dword [esp + 0x10]
add ebx, edx
mov edx, dword [esp + 0x14]
lea edx, [ebx + edx + 0x59f111f1]
mov esi, dword [esp + 0x1c]
add esi, edx
mov dword [esp + 0x10], edx
mov ebp, dword [esp + 0x28]
mov ebx, edi
rol ebx, 0x1e
mov edx, edi
rol edx, 0x13
xor ebx, edx
mov edx, edi
rol edx, 0xa
xor ebx, edx
mov edx, ecx
xor edx, edi
and edx, ebp
mov ebp, ecx
and ebp, edi
xor edx, ebp
add ebx, dword [esp + 0x10]
movzx ebp, byte [eax]
add edx, ebx
shl ebp, 0x18
mov dword [esp + 0x14], edx
movzx edx, byte [eax + 1]
shl edx, 0x10
or ebp, edx
xor edx, edx
inc eax
mov dh, byte [eax + 1]
inc eax
mov ebx, esi
mov dword [esp + 0x1c], esi
or ebp, edx
movzx edx, byte [eax + 1]
or ebp, edx
inc eax
mov edx, esi
rol edx, 0x1a
rol ebx, 0x15
xor edx, ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x6c], ebp
mov ebp, dword [esp + 0x2c]
mov ebx, esi
rol ebx, 7
xor edx, ebx
mov ebx, esi
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x18]
and ebp, esi
xor ebx, ebp
add edx, dword [esp + 0x10]
mov ebp, dword [esp + 0x28]
add ebx, edx
mov edx, dword [esp + 0x24]
lea edx, [ebx + edx - 0x6dc07d5c]
add ebp, edx
mov dword [esp + 0x28], ebp
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x14]
mov ebp, edx
rol ebp, 0x1e
mov ebx, edx
rol ebx, 0x13
xor ebp, ebx
mov ebx, edx
rol ebx, 0xa
xor ebp, ebx
mov ebx, edi
inc eax
xor ebx, edx
and ebx, ecx
mov dword [esp + 0x34], ebx
mov ebx, edi
and ebx, edx
mov edx, dword [esp + 0x34]
xor edx, ebx
add ebp, dword [esp + 0x10]
add edx, ebp
movzx ebp, byte [eax]
shl ebp, 0x18
mov dword [esp + 0x24], edx
movzx edx, byte [eax + 1]
shl edx, 0x10
or ebp, edx
xor edx, edx
inc eax
mov dh, byte [eax + 1]
inc eax
or ebp, edx
movzx edx, byte [eax + 1]
or ebp, edx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x10], ebp
inc eax
mov dword [esp + 0x70], ebp
and esi, edx
mov ebx, edx
rol ebx, 0x1a
mov ebp, edx
rol ebp, 0x15
xor ebx, ebp
mov ebp, edx
rol ebp, 7
xor ebx, ebp
mov ebp, edx
mov edx, dword [esp + 0x2c]
not ebp
and ebp, dword [esp + 0x18]
inc eax
xor ebp, esi
add ebx, dword [esp + 0x10]
add ebp, ebx
lea edx, [edx + ebp - 0x54e3a12b]
add ecx, edx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x24]
mov ebx, edx
mov esi, edx
rol ebx, 0x1e
rol esi, 0x13
xor ebx, esi
mov esi, edx
rol esi, 0xa
xor ebx, esi
mov esi, dword [esp + 0x14]
mov ebp, esi
and esi, edx
xor ebp, edx
movzx edx, byte [eax + 1]
and ebp, edi
xor ebp, esi
add ebx, dword [esp + 0x10]
movzx esi, byte [eax]
shl esi, 0x18
add ebp, ebx
inc eax
shl edx, 0x10
or esi, edx
xor edx, edx
mov dh, byte [eax + 1]
inc eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], ebp
or esi, edx
movzx edx, byte [eax + 1]
inc eax
or esi, edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x74], esi
mov ebx, dword [esp + 0x1c]
mov edx, ecx
rol edx, 0x1a
mov esi, ecx
rol esi, 0x15
xor edx, esi
mov esi, ecx
rol esi, 7
xor edx, esi
mov esi, ecx
not esi
and esi, ebx
mov ebx, dword [esp + 0x28]
and ebx, ecx
xor esi, ebx
add edx, dword [esp + 0x10]
add esi, edx
mov edx, dword [esp + 0x18]
lea edx, [esi + edx - 0x27f85568]
mov esi, dword [esp + 0x24]
add edi, edx
mov dword [esp + 0x10], edx
mov edx, esi
and esi, ebp
xor edx, ebp
mov dword [esp + 0x38], esi
mov esi, ebp
rol esi, 0x1e
mov ebx, ebp
rol ebx, 0x13
xor esi, ebx
mov ebx, dword [esp + 0x14]
rol ebp, 0xa
xor esi, ebp
mov ebp, edx
and ebp, ebx
add esi, dword [esp + 0x10]
mov dword [esp + 0x40], edx
xor ebp, dword [esp + 0x38]
add ebp, esi
movzx esi, byte [eax + 1]
shl esi, 0x18
inc eax
movzx edx, byte [eax + 1]
shl edx, 0x10
or esi, edx
inc eax
xor edx, edx
mov dh, byte [eax + 1]
inc eax
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x30], edi
mov dword [esp + 0x18], ebp
or esi, edx
movzx edx, byte [eax + 1]
or esi, edx
inc eax
mov dword [esp + 0x10], esi
mov dword [esp + 0x78], esi
mov edx, edi
rol edx, 0x1a
mov esi, edi
rol esi, 0x15
xor edx, esi
mov esi, edi
rol esi, 7
xor edx, esi
mov esi, edi
not esi
and esi, ebx
mov ebx, ecx
and ebx, edi
xor esi, ebx
add edx, dword [esp + 0x10]
inc eax
add esi, edx
mov edx, dword [esp + 0x1c]
lea esi, [esi + edx + 0x12835b01]
mov edx, dword [esp + 0x14]
add edx, esi
mov ebx, ebp
rol ebx, 0x1e
mov dword [esp + 0x10], esi
mov esi, ebp
rol esi, 0x13
xor ebx, esi
mov esi, ebp
rol esi, 0xa
xor ebx, esi
mov esi, dword [esp + 0x40]
and esi, ebp
xor esi, dword [esp + 0x38]
add ebx, dword [esp + 0x10]
movzx ebp, byte [eax]
add esi, ebx
movzx ebx, byte [eax + 1]
shl ebp, 0x18
shl ebx, 0x10
or ebp, ebx
xor ebx, ebx
inc eax
mov bh, byte [eax + 1]
inc eax
mov dword [esp + 0x14], edx
or ebp, ebx
movzx ebx, byte [eax + 1]
or ebp, ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x7c], ebp
inc eax
mov ebx, edx
rol ebx, 0x1a
mov ebp, edx
rol ebp, 0x15
xor ebx, ebp
mov ebp, edx
rol ebp, 7
xor ebx, ebp
mov ebp, edx
not ebp
and ebp, ecx
mov ecx, edi
and ecx, edx
mov edx, dword [esp + 0x10]
xor ebp, ecx
add ebx, edx
mov edx, dword [esp + 0x28]
add ebp, ebx
lea ecx, [edx + ebp + 0x243185be]
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x18]
add edx, ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x24], edx
mov ebx, esi
rol ebx, 0x1e
mov ecx, esi
rol ecx, 0x13
xor ebx, ecx
mov edx, esi
rol edx, 0xa
xor ebx, edx
mov edx, dword [esp + 0x2c]
mov ecx, esi
xor ecx, edx
and ecx, ebp
mov ebp, esi
and ebp, edx
mov edx, dword [esp + 0x10]
inc eax
xor ecx, ebp
movzx ebp, byte [eax]
add ebx, edx
add ecx, ebx
shl ebp, 0x18
movzx edx, byte [eax + 1]
shl edx, 0x10
or ebp, edx
xor edx, edx
inc eax
mov dh, byte [eax + 1]
inc eax
or ebp, edx
movzx edx, byte [eax + 1]
or ebp, edx
mov edx, dword [esp + 0x24]
mov ebx, edx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x80], ebp
mov ebp, edx
inc eax
rol ebx, 0x1a
rol ebp, 0x15
xor ebx, ebp
mov ebp, edx
rol ebp, 7
xor ebx, ebp
mov ebp, edx
not ebp
and ebp, edi
mov edi, dword [esp + 0x14]
and edi, edx
mov edx, dword [esp + 0x20]
xor ebp, edi
add ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x2c]
add ebp, ebx
lea edx, [edx + ebp + 0x550c7dc3]
add edi, edx
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x10], edx
mov ebx, ecx
rol ebx, 0x1e
mov edx, ecx
rol edx, 0x13
xor ebx, edx
mov edx, ecx
rol edx, 0xa
xor ebx, edx
mov edx, esi
xor edx, ecx
and edx, ebp
mov ebp, esi
and ebp, ecx
xor edx, ebp
add ebx, dword [esp + 0x10]
movzx ebp, byte [eax + 1]
add edx, ebx
inc eax
shl ebp, 0x18
mov dword [esp + 0x20], edx
movzx edx, byte [eax + 1]
shl edx, 0x10
or ebp, edx
inc eax
xor edx, edx
mov dh, byte [eax + 1]
inc eax
mov ebx, edi
mov dword [esp + 0x2c], edi
or ebp, edx
movzx edx, byte [eax + 1]
inc eax
or ebp, edx
mov edx, edi
rol edx, 0x1a
rol ebx, 0x15
xor edx, ebx
mov ebx, edi
rol ebx, 7
inc eax
mov dword [esp + 0x10], ebp
mov dword [esp + 0x84], ebp
xor edx, ebx
mov ebp, dword [esp + 0x14]
mov ebx, edi
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x24]
and ebp, edi
xor ebx, ebp
add edx, dword [esp + 0x10]
add ebx, edx
mov edx, dword [esp + 0x30]
lea edx, [ebx + edx + 0x72be5d74]
add dword [esp + 0x18], edx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x20]
mov ebp, edx
rol ebp, 0x1e
mov ebx, edx
rol ebx, 0x13
xor ebp, ebx
mov ebx, edx
rol ebx, 0xa
xor ebp, ebx
mov ebx, ecx
xor ebx, edx
and ebx, esi
mov dword [esp + 0x34], ebx
mov ebx, ecx
and ebx, edx
mov edx, dword [esp + 0x34]
xor edx, ebx
add ebp, dword [esp + 0x10]
add edx, ebp
movzx ebp, byte [eax]
shl ebp, 0x18
mov dword [esp + 0x30], edx
movzx edx, byte [eax + 1]
shl edx, 0x10
or ebp, edx
xor edx, edx
inc eax
mov dh, byte [eax + 1]
inc eax
or ebp, edx
movzx edx, byte [eax + 1]
or ebp, edx
mov edx, dword [esp + 0x18]
inc eax
mov dword [esp + 0x10], ebp
mov dword [esp + 0x88], ebp
mov ebx, edx
rol ebx, 0x1a
mov ebp, edx
rol ebp, 0x15
xor ebx, ebp
mov ebp, edx
rol ebp, 7
xor ebx, ebp
mov ebp, edx
and edx, edi
mov edi, dword [esp + 0x10]
not ebp
and ebp, dword [esp + 0x24]
add ebx, edi
xor ebp, edx
mov edx, dword [esp + 0x14]
add ebp, ebx
lea edx, [edx + ebp - 0x7f214e02]
add esi, edx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x30]
mov ebx, edx
rol ebx, 0x1e
mov edi, edx
rol edi, 0x13
inc eax
xor ebx, edi
mov edi, edx
rol edi, 0xa
xor ebx, edi
mov edi, dword [esp + 0x20]
mov ebp, edi
and edi, edx
xor ebp, edx
movzx edx, byte [eax + 1]
and ebp, ecx
xor ebp, edi
add ebx, dword [esp + 0x10]
movzx edi, byte [eax]
add ebp, ebx
shl edi, 0x18
shl edx, 0x10
or edi, edx
xor edx, edx
inc eax
mov dh, byte [eax + 1]
inc eax
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x14], ebp
or edi, edx
movzx edx, byte [eax + 1]
or edi, edx
mov dword [esp + 0x10], edi
mov dword [esp + 0x8c], edi
inc eax
mov edx, esi
rol edx, 0x1a
mov edi, esi
rol edi, 0x15
xor edx, edi
mov edi, esi
rol edi, 7
xor edx, edi
mov edi, esi
not edi
and edi, ebx
mov ebx, dword [esp + 0x18]
and ebx, esi
xor edi, ebx
add edx, dword [esp + 0x10]
add edi, edx
mov edx, dword [esp + 0x24]
lea edx, [edi + edx - 0x6423f959]
mov ebx, dword [esp + 0x20]
add ecx, edx
mov dword [esp + 0x10], edx
mov edx, ebp
rol edx, 0x1e
mov edi, ebp
rol edi, 0x13
xor edx, edi
mov edi, ebp
rol edi, 0xa
xor edx, edi
mov edi, dword [esp + 0x30]
xor edi, ebp
and edi, ebx
mov ebx, dword [esp + 0x30]
and ebx, ebp
movzx ebp, byte [eax + 1]
inc eax
xor edi, ebx
add edx, dword [esp + 0x10]
add edi, edx
movzx edx, byte [eax + 1]
shl ebp, 0x18
inc eax
shl edx, 0x10
or ebp, edx
xor edx, edx
mov dh, byte [eax + 1]
inc eax
or ebp, edx
movzx edx, byte [eax + 1]
inc eax
or ebp, edx
mov edx, ecx
rol edx, 0x1a
mov ebx, ecx
rol ebx, 0x15
xor edx, ebx
mov dword [esp + 0x10], ebp
mov dword [esp + 0x90], ebp
mov ebp, dword [esp + 0x18]
mov ebx, ecx
rol ebx, 7
xor edx, ebx
mov ebx, ecx
not ebx
and ebx, ebp
mov ebp, esi
and ebp, ecx
xor ebx, ebp
add edx, dword [esp + 0x10]
add ebx, edx
mov edx, dword [esp + 0x2c]
lea edx, [ebx + edx - 0x3e640e8c]
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0x30]
add ebx, edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x20], ebx
mov ebx, edi
rol ebx, 0x1e
mov edx, edi
rol edx, 0x13
xor ebx, edx
mov edx, edi
rol edx, 0xa
xor ebx, edx
mov edx, dword [esp + 0x14]
xor edx, edi
and edx, ebp
mov ebp, dword [esp + 0x14]
and ebp, edi
xor edx, ebp
add ebx, dword [esp + 0x10]
inc eax
add edx, ebx
mov dword [esp + 0x2c], edx
mov edx, 0x11
mov dword [esp + 0x1c], edx
mov dword [esp + 0x28], 0x1041acbc
jmp 0x100cb780
mov ebx, edx
and ebx, 0xf
lea ebx, [esp + ebx*4 + 0x54]
mov dword [esp + 0x3c], ebx
mov ebx, dword [ebx]
mov dword [esp + 0x10], ebx
lea ebx, [edx - 3]
and ebx, 0xf
lea ebx, [esp + ebx*4 + 0x54]
mov dword [esp + 0x4c], ebx
mov ebx, dword [ebx]
mov ebp, ebx
dec edx
and edx, 0xf
lea edx, [esp + edx*4 + 0x54]
mov dword [esp + 0x44], edx
mov edx, ebx
shr ebx, 0xa
rol ebp, 0xf
rol edx, 0xd
xor ebp, edx
xor ebp, ebx
mov edx, dword [esp + 0x10]
mov ebx, edx
rol ebx, 0x19
rol edx, 0xe
xor ebx, edx
mov edx, dword [esp + 0x10]
shr edx, 3
xor ebx, edx
mov edx, dword [esp + 0x1c]
add ebp, ebx
add edx, 0xfffffff8
and edx, 0xf
mov ebx, dword [esp + edx*4 + 0x54]
mov edx, dword [esp + 0x44]
add ebp, ebx
add dword [edx], ebp
mov edx, dword [esp + 0x20]
mov ebx, edx
rol ebx, 0x1a
mov ebp, edx
rol ebp, 0x15
xor ebx, ebp
mov ebp, edx
rol ebp, 7
xor ebx, ebp
mov dword [esp + 0x34], ebx
mov ebx, edx
not ebx
and ebx, esi
mov ebp, ecx
and ebp, edx
mov edx, dword [esp + 0x34]
xor ebx, ebp
add edx, ebx
mov ebx, dword [esp + 0x28]
mov ebp, dword [ebx - 4]
mov ebx, dword [esp + 0x44]
add edx, ebp
mov ebp, dword [ebx]
mov ebx, dword [esp + 0x30]
add edx, ebp
add edx, dword [esp + 0x18]
add ebx, edx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x2c]
mov ebx, edi
xor ebx, edx
mov dword [esp + 0x40], ebx
mov ebx, edi
and ebx, edx
mov dword [esp + 0x38], ebx
mov ebx, edx
mov ebp, edx
rol ebx, 0x1e
rol ebp, 0x13
xor ebx, ebp
rol edx, 0xa
xor ebx, edx
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x40]
and edx, ebp
xor edx, dword [esp + 0x38]
add ebx, dword [esp + 0x10]
add edx, ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x18], edx
lea edx, [ebx + 1]
and edx, 0xf
lea edx, [esp + edx*4 + 0x54]
mov dword [esp + 0x34], edx
mov edx, dword [edx]
mov dword [esp + 0x10], edx
lea edx, [ebx - 2]
and edx, 0xf
lea edx, [esp + edx*4 + 0x54]
mov dword [esp + 0x48], edx
mov edx, dword [edx]
mov ebx, edx
rol ebx, 0xf
mov ebp, edx
rol ebp, 0xd
xor ebx, ebp
shr edx, 0xa
xor ebx, edx
mov edx, dword [esp + 0x10]
mov ebp, edx
rol ebp, 0x19
rol edx, 0xe
xor ebp, edx
mov edx, dword [esp + 0x10]
shr edx, 3
xor ebp, edx
mov edx, dword [esp + 0x1c]
add ebx, ebp
add edx, 0xfffffff9
and edx, 0xf
mov ebp, dword [esp + edx*4 + 0x54]
mov edx, dword [esp + 0x3c]
add ebx, ebp
add dword [edx], ebx
mov edx, dword [esp + 0x30]
mov ebp, edx
rol ebp, 0x1a
mov ebx, edx
rol ebx, 0x15
xor ebp, ebx
mov ebx, edx
rol ebx, 7
xor ebp, ebx
mov ebx, edx
not ebx
and ebx, ecx
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x20]
and ebx, edx
mov edx, dword [esp + 0x24]
xor edx, ebx
mov ebx, dword [esp + 0x3c]
add ebp, dword [ebx]
mov ebx, dword [esp + 0x14]
add edx, ebp
add edx, esi
mov esi, dword [esp + 0x28]
add edx, dword [esi]
add ebx, edx
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x18]
mov ebp, ebx
mov esi, ebx
rol ebp, 0x1e
rol esi, 0x13
xor ebp, esi
mov esi, ebx
rol esi, 0xa
xor ebp, esi
add ebp, edx
mov edx, dword [esp + 0x1c]
add edx, 2
mov esi, dword [esp + 0x40]
and edx, 0xf
and esi, ebx
mov ebx, dword [esp + 0x38]
lea edx, [esp + edx*4 + 0x54]
mov dword [esp + 0x40], edx
mov edx, dword [edx]
xor esi, ebx
add esi, ebp
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x44]
mov edx, dword [edx]
mov ebx, edx
rol ebx, 0xf
mov ebp, edx
rol ebp, 0xd
xor ebx, ebp
shr edx, 0xa
xor ebx, edx
mov edx, dword [esp + 0x10]
mov ebp, edx
rol ebp, 0x19
rol edx, 0xe
xor ebp, edx
mov edx, dword [esp + 0x10]
shr edx, 3
xor ebp, edx
mov edx, dword [esp + 0x1c]
add ebx, ebp
add edx, 0xfffffffa
and edx, 0xf
mov ebp, dword [esp + edx*4 + 0x54]
mov edx, dword [esp + 0x34]
add ebx, ebp
add dword [edx], ebx
mov edx, dword [esp + 0x14]
mov ebx, edx
rol ebx, 0x1a
mov ebp, edx
rol ebp, 0x15
xor ebx, ebp
mov ebp, edx
rol ebp, 7
xor ebx, ebp
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x38], ebx
mov ebx, edx
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x30]
and ebp, edx
mov edx, dword [esp + 0x38]
xor ebx, ebp
add edx, ebx
mov ebx, dword [esp + 0x28]
mov ebp, dword [ebx + 4]
mov ebx, dword [esp + 0x34]
add edx, ebp
add edx, dword [ebx]
add edx, ecx
add edi, edx
mov dword [esp + 0x10], edx
mov edx, esi
rol edx, 0x1e
mov ecx, esi
rol ecx, 0x13
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
mov dword [esp + 0x24], edi
xor edx, ecx
mov ecx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x18]
mov ebx, esi
xor ebx, ecx
and ebx, ebp
mov ebp, esi
and ebp, ecx
xor ebx, ebp
add edx, dword [esp + 0x10]
add ebx, edx
mov edx, dword [esp + 0x1c]
add edx, 3
and edx, 0xf
lea edx, [esp + edx*4 + 0x54]
mov dword [esp + 0x38], edx
mov edx, dword [edx]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x3c]
mov edx, dword [edx]
mov ecx, ebx
mov ebx, edx
rol ebx, 0xf
mov ebp, edx
shr edx, 0xa
rol ebp, 0xd
xor ebx, ebp
xor ebx, edx
mov edx, dword [esp + 0x10]
mov ebp, edx
rol ebp, 0x19
rol edx, 0xe
xor ebp, edx
mov edx, dword [esp + 0x10]
shr edx, 3
xor ebp, edx
mov edx, dword [esp + 0x1c]
add ebx, ebp
add edx, 0xfffffffb
and edx, 0xf
mov ebp, dword [esp + edx*4 + 0x54]
mov edx, dword [esp + 0x40]
add ebx, ebp
mov ebp, dword [edx]
add ebp, ebx
mov dword [edx], ebp
mov edx, ebp
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x3c], edx
mov edx, edi
rol edx, 0x1a
mov ebx, edi
rol ebx, 0x15
xor edx, ebx
mov ebx, edi
rol ebx, 7
xor edx, ebx
mov ebx, edi
not ebx
and ebx, ebp
mov ebp, dword [esp + 0x14]
and ebp, edi
xor ebx, ebp
add edx, ebx
mov ebx, dword [esp + 0x28]
mov ebp, dword [ebx + 8]
mov ebx, dword [esp + 0x20]
add edx, ebp
add edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x2c]
add edx, ebx
add ebp, edx
mov dword [esp + 0x10], edx
mov edx, ecx
rol edx, 0x1e
mov ebx, ecx
rol ebx, 0x13
xor edx, ebx
mov dword [esp + 0x2c], ebp
mov ebx, ecx
mov ebp, dword [esp + 0x18]
rol ebx, 0xa
xor edx, ebx
mov ebx, esi
xor ebx, ecx
and ebx, ebp
mov ebp, esi
and ebp, ecx
xor ebx, ebp
add edx, dword [esp + 0x10]
add ebx, edx
mov edx, dword [esp + 0x1c]
add edx, 4
and edx, 0xf
lea edx, [esp + edx*4 + 0x54]
mov dword [esp + 0x3c], edx
mov edx, dword [edx]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x34]
mov edx, dword [edx]
mov ebp, edx
mov dword [esp + 0x20], ebx
mov ebx, edx
shr edx, 0xa
rol ebx, 0xf
rol ebp, 0xd
xor ebx, ebp
xor ebx, edx
mov edx, dword [esp + 0x10]
mov ebp, edx
rol ebp, 0x19
rol edx, 0xe
xor ebp, edx
mov edx, dword [esp + 0x10]
shr edx, 3
xor ebp, edx
mov edx, dword [esp + 0x1c]
add ebx, ebp
add edx, 0xfffffffc
and edx, 0xf
mov ebp, dword [esp + edx*4 + 0x54]
mov edx, dword [esp + 0x38]
add ebx, ebp
mov ebp, dword [edx]
add ebp, ebx
mov ebx, dword [esp + 0x2c]
mov dword [edx], ebp
mov edx, ebp
mov dword [esp + 0x34], edx
mov edx, ebx
rol edx, 0x1a
mov ebp, ebx
rol ebp, 0x15
xor edx, ebp
mov ebp, ebx
rol ebp, 7
xor edx, ebp
mov ebp, dword [esp + 0x14]
not ebx
and ebx, ebp
and edi, dword [esp + 0x2c]
xor ebx, edi
mov edi, dword [esp + 0x28]
mov ebp, dword [edi + 0xc]
mov edi, dword [esp + 0x30]
add edx, ebx
mov ebx, dword [esp + 0x34]
add edx, ebp
mov ebp, dword [esp + 0x18]
add edx, ebx
add edx, edi
mov edi, dword [esp + 0x20]
add ebp, edx
mov dword [esp + 0x10], edx
mov edx, edi
mov ebx, edi
rol edx, 0x1e
mov dword [esp + 0x18], ebp
rol ebx, 0x13
xor edx, ebx
mov ebx, edi
rol ebx, 0xa
xor edx, ebx
mov ebx, ecx
xor ebx, edi
and ebx, esi
mov ebp, ecx
and ebp, edi
xor ebx, ebp
add edx, dword [esp + 0x10]
add ebx, edx
mov edx, dword [esp + 0x1c]
add edx, 5
and edx, 0xf
lea edx, [esp + edx*4 + 0x54]
mov dword [esp + 0x34], edx
mov edx, dword [edx]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x40]
mov edx, dword [edx]
mov ebp, edx
mov dword [esp + 0x30], ebx
mov ebx, edx
shr edx, 0xa
rol ebx, 0xf
rol ebp, 0xd
xor ebx, ebp
xor ebx, edx
mov edx, dword [esp + 0x10]
mov ebp, edx
rol ebp, 0x19
rol edx, 0xe
xor ebp, edx
mov edx, dword [esp + 0x10]
shr edx, 3
xor ebp, edx
mov edx, dword [esp + 0x4c]
add ebx, ebp
mov ebp, dword [edx]
mov edx, dword [esp + 0x3c]
add ebx, ebp
mov ebp, dword [edx]
add ebp, ebx
mov ebx, dword [esp + 0x18]
mov dword [edx], ebp
mov edx, ebp
mov dword [esp + 0x4c], edx
mov edx, ebx
rol edx, 0x1a
mov ebp, ebx
rol ebp, 0x15
xor edx, ebp
mov ebp, ebx
rol ebp, 7
xor edx, ebp
mov ebp, ebx
and ebx, dword [esp + 0x2c]
not ebp
and ebp, dword [esp + 0x24]
xor ebp, ebx
mov ebx, dword [esp + 0x28]
add edx, ebp
mov ebp, dword [ebx + 0x10]
mov ebx, dword [esp + 0x4c]
add edx, ebp
mov ebp, dword [esp + 0x14]
add edx, ebx
mov ebx, dword [esp + 0x30]
add edx, ebp
add esi, edx
mov dword [esp + 0x10], edx
mov edx, ebx
rol edx, 0x1e
mov ebp, ebx
rol ebp, 0x13
xor edx, ebp
mov ebp, ebx
rol ebp, 0xa
xor edx, ebp
mov ebp, edi
xor ebp, ebx
and ebp, ecx
and edi, ebx
xor ebp, edi
add edx, dword [esp + 0x10]
add ebp, edx
mov edx, dword [esp + 0x1c]
add edx, 6
and edx, 0xf
lea edx, [esp + edx*4 + 0x54]
mov dword [esp + 0x4c], edx
mov edx, dword [edx]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x38]
mov edx, dword [edx]
mov dword [esp + 0x14], ebp
mov edi, edx
rol edi, 0xf
mov ebp, edx
rol ebp, 0xd
xor edi, ebp
shr edx, 0xa
xor edi, edx
mov edx, dword [esp + 0x10]
mov ebp, edx
rol ebp, 0x19
rol edx, 0xe
xor ebp, edx
mov edx, dword [esp + 0x10]
shr edx, 3
xor ebp, edx
mov edx, dword [esp + 0x48]
add edi, ebp
mov ebp, dword [edx]
mov edx, dword [esp + 0x34]
add edi, ebp
mov ebp, dword [edx]
add ebp, edi
mov dword [edx], ebp
mov edx, ebp
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x48], edx
mov edx, esi
rol edx, 0x1a
mov edi, esi
rol edi, 0x15
xor edx, edi
mov edi, esi
rol edi, 7
xor edx, edi
mov edi, esi
not edi
and edi, ebp
mov ebp, dword [esp + 0x18]
and ebp, esi
xor edi, ebp
add edx, edi
mov edi, dword [esp + 0x28]
mov ebp, dword [edi + 0x14]
mov edi, dword [esp + 0x48]
add edx, ebp
mov ebp, dword [esp + 0x24]
add edx, edi
add edx, ebp
add ecx, edx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x14]
mov edi, edx
rol edi, 0x1e
mov ebp, edx
rol ebp, 0x13
xor edi, ebp
mov ebp, edx
rol ebp, 0xa
xor edi, ebp
mov ebp, ebx
xor ebp, edx
and ebp, dword [esp + 0x20]
and ebx, edx
xor ebp, ebx
mov edx, dword [esp + 0x1c]
add edx, 7
mov ebx, dword [esp + 0x10]
and edx, 0xf
mov edx, dword [esp + edx*4 + 0x54]
add edi, ebx
add edi, ebp
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x3c]
mov edx, dword [edx]
mov ebx, edx
rol ebx, 0xf
mov ebp, edx
shr edx, 0xa
rol ebp, 0xd
xor ebx, ebp
xor ebx, edx
mov edx, dword [esp + 0x10]
mov ebp, edx
rol ebp, 0x19
rol edx, 0xe
xor ebp, edx
mov edx, dword [esp + 0x10]
shr edx, 3
xor ebp, edx
mov edx, dword [esp + 0x44]
add ebx, ebp
mov ebp, dword [edx]
mov edx, dword [esp + 0x4c]
add ebx, ebp
mov ebp, dword [edx]
add ebp, ebx
mov dword [edx], ebp
mov edx, ebp
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x48], edx
mov edx, ecx
rol edx, 0x1a
mov ebx, ecx
rol ebx, 0x15
xor edx, ebx
mov ebx, ecx
rol ebx, 7
xor edx, ebx
mov ebx, ecx
not ebx
and ebx, ebp
mov ebp, esi
and ebp, ecx
xor ebx, ebp
add edx, ebx
mov ebx, dword [esp + 0x28]
mov ebp, dword [ebx + 0x18]
mov ebx, dword [esp + 0x48]
add edx, ebp
mov ebp, dword [esp + 0x2c]
add edx, ebx
mov ebx, dword [esp + 0x20]
add edx, ebp
add ebx, edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x20], ebx
mov ebx, edi
rol ebx, 0x1e
mov edx, edi
rol edx, 0x13
xor ebx, edx
mov edx, edi
rol edx, 0xa
xor ebx, edx
mov edx, dword [esp + 0x14]
mov ebp, edx
xor ebp, edi
and ebp, dword [esp + 0x30]
and edx, edi
xor ebp, edx
add ebx, dword [esp + 0x10]
add ebx, ebp
mov dword [esp + 0x2c], ebx
mov ebp, dword [esp + 0x28]
mov edx, dword [esp + 0x1c]
add ebp, 0x20
add edx, 8
mov dword [esp + 0x28], ebp
lea ebp, [edx - 1]
cmp ebp, 0x40
mov dword [esp + 0x1c], edx
jl 0x100cb780
mov edx, dword [esp + 0x98]
mov ebp, dword [edx]
add ebp, ebx
mov ebx, dword [edx + 4]
add ebx, edi
mov edi, dword [edx + 8]
mov dword [edx + 4], ebx
mov ebx, dword [esp + 0x14]
add edi, ebx
mov ebx, dword [esp + 0x30]
mov dword [edx + 8], edi
mov edi, dword [edx + 0xc]
add edi, ebx
mov ebx, dword [esp + 0x20]
mov dword [edx + 0xc], edi
mov edi, dword [edx + 0x10]
add edi, ebx
mov dword [edx + 0x10], edi
mov edi, dword [edx + 0x14]
add edi, ecx
mov ecx, dword [edx + 0x18]
add ecx, esi
mov esi, dword [esp + 0x18]
mov dword [edx + 0x18], ecx
mov ecx, dword [edx + 0x1c]
add ecx, esi
mov dword [edx + 0x1c], ecx
mov ecx, dword [esp + 0x50]
dec ecx
mov dword [edx], ebp
mov dword [edx + 0x14], edi
mov dword [esp + 0x50], ecx
jne 0x100cadc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret