Function at 0x100cbc50
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x7c
push ebx
push esi
push edi
mov dword [esp + 0x58], 0xa2a7b593
xor ecx, ecx
mov dword [esp + 0x5c], 0xaeaa86a9
mov dword [esp + 0x60], 0xfbbea7ad
mov dword [esp + 0x64], 0x100fafd
nop
lea eax, [ecx - 0x40]
xor byte [esp + ecx + 0x58], al
inc ecx
cmp ecx, 0xe
jb 0x100cbc80
mov byte [esp + 0x67], 0
xor ecx, ecx
mov dword [esp + 0xe], 0x4bd04bb
mov dword [esp + 0x12], 0x4aa04af
mov dword [esp + 0x16], 0x4ae04a1
mov dword [esp + 0x1a], 0x4a604a2
mov dword [esp + 0x1e], 0x4bf04b5
mov dword [esp + 0x22], 0x4fd04a6
mov dword [esp + 0x26], 0x4b904b0
mov dword [esp + 0x2a], 0x4ba
mov byte [esp + 0x2e], 1
nop dword [eax]
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0xf
jb 0x100cbce0
lea ecx, [esp + 0xe]
mov byte [esp + 0x2e], 0
call fcn.10009b60
mov esi, eax
test esi, esi
je 0x100cbd57
movaps xmm0, xmmword [0x100f0b30]
xor ecx, ecx
movups xmmword [esp + 0x68], xmm0
mov byte [esp + 0x78], 1
lea eax, [ecx - 0x40]
xor byte [esp + ecx + 0x68], al
inc ecx
cmp ecx, 0xf
jb 0x100cbd18
lea edx, [esp + 0x68]
mov byte [esp + 0x78], 0
mov ecx, esi
call fcn.100098c0
test eax, eax
je 0x100cbd57
lea ecx, [esp + 0x58]
push 0
push ecx
call eax
mov ecx, eax
add esp, 8
mov dword [0x100fc2f0], ecx
test ecx, ecx
jne 0x100cbe6e
jmp 0x100cbd61
mov dword [0x100fc2f0], 0
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
nop dword [eax + eax]
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cbe00
xor eax, eax
mov byte [esp + 0x56], 0
mov dword [esp + 0x58], 0x4a40484
xor ecx, ecx
mov dword [esp + 0x5c], 0x4af04a0
mov dword [esp + 0x60], 0x4b804a5
mov word [esp + 0x64], ax
mov byte [esp + 0x66], 1
nop dword [eax]
lea eax, [ecx + 0x4c7]
xor word [esp + ecx*2 + 0x58], ax
inc ecx
cmp ecx, 6
jb 0x100cbe40
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x6a], 0
push eax
lea edx, [esp + 0x60]
call fcn.100be510
mov ecx, dword [0x100fc2f0]
add esp, 8
mov eax, dword [ecx]
call dword [eax]
mov ebx, eax
test ebx, ebx
jne 0x100cbf8b
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cbf13
mov byte [esp + 0x56], 0
xor ecx, ecx
mov dword [esp + 0x68], 0x4b204a8
mov dword [esp + 0x6c], 0x4a6048c
mov dword [esp + 0x70], 0x49504b3
mov dword [esp + 0x74], 0x4b704af
mov dword [esp + 0x78], 0x4ad
mov byte [esp + 0x7c], 1
nop dword [eax + eax]
lea eax, [ecx + 0x4c0]
xor word [esp + ecx*2 + 0x68], ax
inc ecx
cmp ecx, 9
jb 0x100cbf60
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x80], 0
push eax
lea edx, [esp + 0x70]
call fcn.100be510
add esp, 8
mov ecx, dword [0x100fc2f0]
push ebx
mov eax, dword [ecx]
call dword [eax + 8]
mov edi, eax
test edi, edi
jne 0x100cc0bb
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
nop dword [eax + eax]
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cc040
mov byte [esp + 0x56], 0
xor ecx, ecx
mov dword [esp + 0x68], 0x4b204a8
mov dword [esp + 0x6c], 0x4a6048c
mov dword [esp + 0x70], 0x49004b3
mov dword [esp + 0x74], 0x4a204b5
mov dword [esp + 0x78], 0x4ba
mov byte [esp + 0x7c], 1
nop word [eax + eax]
lea eax, [ecx + 0x4c0]
xor word [esp + ecx*2 + 0x68], ax
inc ecx
cmp ecx, 9
jb 0x100cc090
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x80], 0
push eax
lea edx, [esp + 0x70]
call fcn.100be510
add esp, 8
mov ecx, dword [0x100fc2f0]
xor edx, edx
movaps xmm0, xmmword [0x100f0b90]
mov eax, dword [ecx]
movups xmmword [esp + 0x68], xmm0
mov byte [esp + 0x78], 1
mov esi, dword [eax + 0x20]
nop dword [eax]
lea eax, [edx - 0x40]
xor byte [esp + edx + 0x68], al
inc edx
cmp edx, 0xf
jb 0x100cc0e0
lea eax, [esp + 0x68]
mov byte [esp + 0x78], 0
push eax
push ebx
push edi
call esi
mov dword [0x100fc2e0], eax
test eax, eax
jne 0x100cc21b
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
nop
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cc1a0
xor eax, eax
mov byte [esp + 0x56], 0
mov dword [esp + 0x68], 0x4b30486
xor ecx, ecx
mov dword [esp + 0x6c], 0x4a604ab
mov dword [esp + 0x70], 0x4a104aa
mov dword [esp + 0x74], 0x4f704b5
mov dword [esp + 0x78], 0x4fb04f8
mov word [esp + 0x7c], ax
mov byte [esp + 0x7e], 1
nop dword [eax]
lea eax, [ecx + 0x4c0]
xor word [esp + ecx*2 + 0x68], ax
inc ecx
cmp ecx, 0xa
jb 0x100cc1f0
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x82], 0
push eax
lea edx, [esp + 0x70]
call fcn.100be510
add esp, 8
mov ecx, dword [0x100fc2f0]
xor edx, edx
movaps xmm0, xmmword [0x100f0b80]
mov eax, dword [ecx]
movups xmmword [esp + 0x68], xmm0
mov byte [esp + 0x78], 1
mov esi, dword [eax + 0x20]
nop dword [eax]
lea eax, [edx - 0x40]
xor byte [esp + edx + 0x68], al
inc edx
cmp edx, 0xf
jb 0x100cc240
lea eax, [esp + 0x68]
mov byte [esp + 0x78], 0
push eax
push ebx
push edi
call esi
mov dword [0x100fc2e4], eax
test eax, eax
jne 0x100cc37b
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
nop
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cc300
xor eax, eax
mov byte [esp + 0x56], 0
mov dword [esp + 0x68], 0x4b30486
xor ecx, ecx
mov dword [esp + 0x6c], 0x4a604ab
mov dword [esp + 0x70], 0x4a104aa
mov dword [esp + 0x74], 0x4f704b5
mov dword [esp + 0x78], 0x4fc04f9
mov word [esp + 0x7c], ax
mov byte [esp + 0x7e], 1
nop dword [eax]
lea eax, [ecx + 0x4c0]
xor word [esp + ecx*2 + 0x68], ax
inc ecx
cmp ecx, 0xa
jb 0x100cc350
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x82], 0
push eax
lea edx, [esp + 0x70]
call fcn.100be510
add esp, 8
mov ecx, dword [0x100fc2f0]
xor edx, edx
mov eax, dword [ecx]
mov dword [esp + 0x58], 0xa2a7b593
mov dword [esp + 0x5c], 0xaeb290a9
mov dword [esp + 0x60], 0xfbfabaa4
mov esi, dword [eax + 0x24]
mov word [esp + 0x64], 0xfb
mov byte [esp + 0x66], 1
nop dword [eax]
lea eax, [edx - 0x40]
xor byte [esp + edx + 0x58], al
inc edx
cmp edx, 0xd
jb 0x100cc3b0
lea eax, [esp + 0x58]
mov byte [esp + 0x66], 0
push eax
push edi
call esi
mov dword [0x100fc2f8], eax
test eax, eax
jne 0x100cc4dc
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
nop
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cc470
xor eax, eax
mov byte [esp + 0x56], 0
mov dword [esp + 0x68], 0x4bd049d
xor ecx, ecx
mov dword [esp + 0x6c], 0x4a704a3
mov dword [esp + 0x70], 0x4fd04bf
mov dword [esp + 0x74], 0x4f804fe
mov word [esp + 0x78], ax
mov byte [esp + 0x7a], 1
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0x68], ax
inc ecx
cmp ecx, 8
jb 0x100cc4b4
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x7e], 0
push eax
lea edx, [esp + 0x70]
call fcn.100be510
add esp, 8
mov ecx, dword [0x100fc2f0]
xor edx, edx
movaps xmm0, xmmword [0x100f13d0]
mov eax, dword [ecx]
movups xmmword [esp + 0x68], xmm0
mov dword [esp + 0x78], 0xb8a3a6a5
mov dword [esp + 0x7c], 0xb8b8acbe
mov esi, dword [eax + 0x3c]
mov dword [esp + 0x80], 0xdfa0a2a5
mov dword [esp + 0x84], 0x100c7c0
nop dword [eax + eax]
lea eax, [edx - 0x2c]
xor byte [esp + edx + 0x68], al
inc edx
cmp edx, 0x1e
jb 0x100cc520
lea eax, [esp + 0x68]
mov byte [esp + 0x87], 0
push eax
push ebx
push edi
call esi
mov dword [0x100fc2e8], eax
test eax, eax
jne 0x100cc65b
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cc5e2
mov byte [esp + 0x56], 0
xor ecx, ecx
mov dword [esp + 0x68], 0x4b50493
mov dword [esp + 0x6c], 0x4a204a7
mov dword [esp + 0x70], 0x48404a9
mov dword [esp + 0x74], 0x4b704b6
mov dword [esp + 0x78], 0x4bb
mov byte [esp + 0x7c], 1
nop word [eax + eax]
lea eax, [ecx + 0x4c0]
xor word [esp + ecx*2 + 0x68], ax
inc ecx
cmp ecx, 9
jb 0x100cc630
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x80], 0
push eax
lea edx, [esp + 0x70]
call fcn.100be510
add esp, 8
mov ecx, dword [0x100fc2f0]
xor edx, edx
movaps xmm0, xmmword [0x100f14d0]
mov eax, dword [ecx]
movups xmmword [esp + 0xe], xmm0
mov dword [esp + 0x2e], 0xc7c4c4
movaps xmm0, xmmword [0x100f16b0]
mov esi, dword [eax + 0x34]
movups xmmword [esp + 0x1e], xmm0
mov byte [esp + 0x32], 1
nop dword [eax]
lea eax, [edx - 0x2c]
xor byte [esp + edx + 0xe], al
inc edx
cmp edx, 0x23
jb 0x100cc690
lea eax, [esp + 0xe]
mov byte [esp + 0x32], 0
push eax
push ebx
push edi
call esi
mov dword [0x100fc2ec], eax
test eax, eax
jne 0x100cc7cb
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
nop
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cc750
mov byte [esp + 0x56], 0
xor ecx, ecx
mov dword [esp + 0x68], 0x4b20495
mov dword [esp + 0x6c], 0x4b104a7
mov dword [esp + 0x70], 0x4b10497
mov dword [esp + 0x74], 0x4b304a7
mov dword [esp + 0x78], 0x4bb
mov byte [esp + 0x7c], 1
nop word [eax + eax]
lea eax, [ecx + 0x4c0]
xor word [esp + ecx*2 + 0x68], ax
inc ecx
cmp ecx, 9
jb 0x100cc7a0
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x80], 0
push eax
lea edx, [esp + 0x70]
call fcn.100be510
add esp, 8
mov ecx, dword [0x100fc2f0]
xor edx, edx
mov eax, dword [ecx]
mov dword [esp + 0x58], 0xa2a7b593
mov dword [esp + 0x5c], 0xa2b590a9
mov dword [esp + 0x60], 0xfcfbf9ba
mov esi, dword [eax + 0x14]
mov word [esp + 0x64], 0x100
lea eax, [edx - 0x40]
xor byte [esp + edx + 0x58], al
inc edx
cmp edx, 0xc
jb 0x100cc7f7
lea eax, [esp + 0x58]
mov byte [esp + 0x65], 0
push eax
push ebx
push edi
call esi
mov dword [0x100fc2f4], eax
test eax, eax
jne 0x100cc91c
mov dword [esp + 0xe], 0x49a048b
xor ecx, ecx
mov dword [esp + 0x12], 0x4ae04be
mov dword [esp + 0x16], 0x4a004ad
mov dword [esp + 0x1a], 0x4a10487
mov dword [esp + 0x1e], 0x4b404a4
mov dword [esp + 0x22], 0x4b504a0
mov dword [esp + 0x26], 0x4b604b5
mov dword [esp + 0x2a], 0x4a404b3
mov dword [esp + 0x2e], 0x4e304e2
mov dword [esp + 0x32], 0x4b50493
mov dword [esp + 0x36], 0x4a904b5
mov dword [esp + 0x3a], 0x4f604f6
mov dword [esp + 0x3e], 0x4cc04c0
mov dword [esp + 0x42], 0x4c304dc
mov dword [esp + 0x46], 0x490048a
mov dword [esp + 0x4a], 0x48b048a
mov dword [esp + 0x4e], 0x49d0498
mov dword [esp + 0x52], 0x498
mov byte [esp + 0x56], 1
nop word [eax + eax]
lea eax, [ecx + 0x4c8]
xor word [esp + ecx*2 + 0xe], ax
inc ecx
cmp ecx, 0x23
jb 0x100cc8c0
xor eax, eax
mov byte [esp + 0x56], 0
mov dword [esp + 0x58], 0x4bb0492
xor ecx, ecx
mov dword [esp + 0x5c], 0x4b804ac
mov word [esp + 0x60], ax
mov byte [esp + 0x62], 1
lea eax, [ecx + 0x4c7]
xor word [esp + ecx*2 + 0x58], ax
inc ecx
cmp ecx, 4
jb 0x100cc8f4
push ecx
lea eax, [esp + 0x12]
mov byte [esp + 0x66], 0
push eax
lea edx, [esp + 0x60]
call fcn.100be510
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret