Function at 0x101978bc
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x170
mov eax, dword [ebp + 8]
xor ecx, ecx
mov dword [0x101b0dd8], 0xfffff998
mov dword [0x101b0dd4], 0x3d47
mov edx, ecx
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x134], edx
mov dword [ebp - 0x138], ecx
jmp 0x101979e7
mov dword [0x101b0dd8], 0x898
mov dword [0x101b0dd4], 0x1404
call fcn.10198218
mov dword [esp], eax
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], eax
call fcn.101975a4
mov dword [0x101b0df4], eax
mov dword [0x101b0dd8], 0x1157
mov ecx, esp
mov edx, dword [ebp - 0x140]
mov dword [ecx + 4], edx
mov dword [ecx + 0xc], 4
mov dword [ecx + 8], 0x1000
mov dword [ecx], 0
call eax
sub esp, 0x10
xor ecx, ecx
mov edx, dword [0x101b0dd4]
add edx, 0xfffff9e0
mov dword [0x101b0dd8], edx
mov edx, ecx
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x148], edx
mov dword [ebp - 0x14c], ecx
jmp 0x10197a4a
mov eax, 1
lea ecx, [ebp - 0x2c]
mov dword [0x101b0dd4], 0x15fa
mov dword [0x101b0dd8], 0xfffffb3e
mov byte [ebp - 0x2c], 0x56
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x150]
mov ecx, eax
add ecx, 1
mov dl, byte [eax + 0x1019a1dc]
mov dh, byte [eax + 0x1019a1ad]
sub dh, dl
mov byte [ebp + eax - 0x2c], dh
cmp ecx, 0xe
mov dword [ebp - 0x150], ecx
je 0x101978fa
jmp 0x101979b1
mov eax, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x134]
lea edx, section..data
imul esi, eax, 0x50
mov edi, edx
add edi, esi
add edi, 0x4c
mov esi, eax
add esi, 1
imul eax, eax, 0x50
add edx, eax
add edx, 0x40
mov eax, dword [edi]
movzx edx, word [edx]
xor edx, eax
add edx, ecx
cmp esi, 0x42c
mov eax, edx
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x140], edx
mov dword [ebp - 0x138], esi
je 0x10197985
jmp 0x101979e7
mov eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x148]
lea edx, section..data
imul esi, ecx, 0x50
mov edi, edx
add edi, esi
add edi, 0x4c
imul esi, ecx, 0x50
mov ebx, edx
add ebx, esi
add ebx, 0x40
imul esi, ecx, 0x50
add edx, esi
add edx, 8
add ecx, 1
mov esi, dword [ebp - 0x144]
add esi, eax
mov edi, dword [edi]
mov edx, dword [edx]
movzx ebx, word [ebx]
xor ebx, edi
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x158], ebx
mov dword [ebp - 0x15c], ecx
call fcn.10198888
mov eax, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x154]
add eax, ecx
mov edx, dword [ebp - 0x15c]
cmp edx, 0x42c
mov dword [ebp - 0x148], edx
mov dword [ebp - 0x14c], eax
jne 0x10197a4a
lea eax, [0x1019a1bb]
mov ecx, 0x20
lea edx, [ebp - 0x12c]
mov esi, dword [ebp - 0x144]
add esi, 0x4f163
mov edi, dword [ebp - 0x144]
add edi, 0x255e8
mov dword [0x101b0dd4], 0x1847
mov dword [0x101b0dd8], 0x13de
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
mov dword [ebp - 0x160], edi
mov dword [ebp - 0x164], ecx
mov dword [ebp - 0x168], edx
mov dword [ebp - 0x16c], esi
call fcn.10197fdb
mov eax, dword [ebp - 0x168]
mov dword [esp], eax
mov ecx, dword [ebp - 0x144]
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
mov edx, dword [ebp - 0x140]
mov dword [esp + 0xc], edx
call fcn.10198b4b
xor eax, eax
mov ecx, dword [ebp - 0x130]
mov edx, dword [ebp - 0x16c]
mov dword [ecx], edx
mov dword [ecx + 4], 0x12c600
mov edx, dword [ebp - 0x160]
mov dword [ecx + 8], edx
mov dword [0x101b0dd8], 0x1902
mov dword [ecx + 0xc], 0x20b0
mov dword [0x101b0dd4], 0x1733
add esp, 0x170
pop esi
pop edi
pop ebx
pop ebp
ret