Function at 0x1001781c
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
push ebx
mov ebx, edx
mov dword [ebp - 0x10], ecx
mov edx, 0x17b3
mov dword [ebp - 0x18], ebx
push esi
xor eax, eax
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], 0x22bb
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], 0x1322
mov dword [ebp - 0x2c], 0x13b6
mov dword [ebp - 0x28], 0x8a5
mov dword [ebp - 0x24], 0x12df
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], 0x20d1
cmp eax, 7
je 0x10017871
inc eax
cmp eax, 9
jl 0x10017866
mov edx, dword [ebp + eax*4 - 0x3c]
push 0x1a
xor edx, 0x41
mov dword [ebp - 0x40], 0x25c5
pop esi
mov dword [ebp - 8], edx
xor eax, eax
mov dword [ebp - 0x3c], 0x26bb
mov dword [ebp - 0x38], 0x19d3
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], 0x2565
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], 0xec5
mov dword [ebp - 0x24], 0x1558
mov dword [ebp - 0x20], 0x11ce
mov dword [ebp - 0x1c], 0x1610
cmp eax, 5
je 0x100178c9
inc eax
cmp eax, 0xa
jl 0x100178be
test ecx, ecx
je 0x10017a9c
mov eax, dword [ebp + eax*4 - 0x40]
xor eax, esi
cmp ebx, eax
jbe 0x10017a9c
xor eax, eax
mov dword [ebp - 0x44], 0xd
and dword [ebp - 0x48], eax
and dword [ebp - 0x1c], eax
and dword [0x1003ec74], 0x183b36b4
mov dword [ebp - 0x40], 0x17b
mov dword [ebp - 0x3c], 0x2354
mov dword [ebp - 0x38], 0x15c6
mov dword [ebp - 0x34], 0x1652
mov dword [ebp - 0x30], 0x15da
mov dword [ebp - 0x2c], 0x1c11
mov dword [ebp - 0x28], 0xfe0
mov dword [ebp - 0x24], 0x1fde
mov dword [ebp - 0x20], 0x340
test eax, eax
je 0x10017941
inc eax
cmp eax, 0xc
jl 0x10017937
mov eax, dword [ebp + eax*4 - 0x48]
mov dword [ebp - 4], eax
cmp eax, ebx
jae 0x10017a9c
mov esi, dword [0x1003ebd0]
push edi
mov edi, dword [0x1003ebf0]
call fcn.100175e9
mov ebx, str._m_hasFont
mov ecx, str.GetDIBColorTable
call fcn.1001674f
inc ebx
cmp byte [ebx], 0
jne 0x10017967
and edi, 0xfaa84d8b
mov dword [ebp - 0x3c], 0xcc4
mov ecx, 0xc4
imul ebx, edi, 0x89a6de31
xor eax, eax
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x38], 0x23e4
mov dword [ebp - 0x34], 0xcf
mov dword [ebp - 0x30], 0x29c
mov dword [ebp - 0x2c], 0x184f
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], 0x17e5
mov dword [ebp - 0x1c], 0x15be
cmp eax, 7
je 0x100179cf
inc eax
cmp eax, 0xa
jl 0x100179c4
mov eax, dword [ebp + eax*4 - 0x40]
mov edx, esi
xor eax, 0xc1
push ecx
mov dword [ebp - 0x14], eax
call fcn.100167eb
xor edi, edi
imul ebx, ebx, 0x73460539
pop ecx
mov dword [0x1003ec74], ebx
inc edi
cmp byte [edi + str._m_hasFont], 0
jne 0x100179f2
mov ecx, str.GetDIBColorTable
call fcn.1001674f
mov eax, dword [ebp - 0xc]
cmp eax, edi
jae 0x10017a28
cmp eax, 0x1b16
jne 0x10017a1a
imul esi, ebx, 0xc244e58d
sub esi, 0x470e4d85
inc eax
cmp eax, edi
jb 0x10017a0d
mov dword [ebp - 0xc], eax
push str.GetDIBColorTable
mov edx, esi
call fcn.10016f9d
pop ecx
mov edi, str.1_1_131A1J1e11
push ecx
call fcn.10017684
xor esi, 0x8b659e4c
inc edi
pop ecx
cmp byte [edi], 0
jne 0x10017a3a
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
mov edi, dword [0x1003ec74]
or edi, 0xdd8ad9f8
mov dword [0x1003ebd0], esi
mov bl, byte [eax + ecx]
lea edx, [ebx - 0x41]
cmp dl, 0x19
lea eax, [ebx + 0x20]
movzx ecx, al
movzx eax, bl
cmova ecx, eax
mov eax, dword [ebp - 4]
movsx edx, cl
mov ecx, dword [ebp - 0x14]
imul ecx, dword [ebp - 8]
add edx, ecx
inc eax
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
cmp eax, dword [ebp - 0x18]
jb 0x1001795d
pop edi
jmp 0x10017aa2
mov esi, dword [0x1003ebd0]
lea ecx, [esi + 0x2dae7d]
mov eax, edx
pop esi
mov dword [0x1003ebf0], ecx
pop ebx
leave
ret