Function at 0x1000f5dc
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1a0
mov dword [ebp - 0x50], ecx
xor ecx, ecx
push ebx
xor ebx, ebx
mov dword [ebp - 0x38], 0xf81
inc ecx
mov dword [ebp - 0x30], 0x2633
push edi
mov eax, ebx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x2c], 0x67
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], 0x1f8f
mov dword [ebp - 0x20], 0x152d
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], ecx
test eax, eax
je 0x1000f62d
inc eax
cmp eax, 0xa
jl 0x1000f623
push esi
mov eax, dword [ebp + eax*4 - 0x3c]
lea edi, [ebp - 0xa0]
mov esi, str.Still_Impersonated
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x10], 0xb24c2e8d
mov eax, ebx
mov dword [ebp - 0xc], 0x35c60211
mov byte [ebp - 8], 0x21
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x48], ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov byte [ebp + eax - 0x1a0], al
inc eax
cmp eax, 0x100
jb 0x1000f65e
mov eax, dword [0x1003ee84]
mov ecx, 0x100327f0
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 4], eax
call fcn.1000e2cd
push 8
pop ecx
mov esi, str.pj.atika.emojog
mov dword [ebp - 0x44], ebx
lea edi, [ebp - 0x34]
mov eax, ebx
rep movsd dword es:[edi], dword [esi]
push 0x61
pop ecx
cmp cx, word [ebp - 0x34]
jne 0x1000f6c2
mov edx, ecx
mov ecx, ebx
test dx, dx
je 0x1000f6bf
cmp word [ebp + ecx - 0x34], bx
je 0x1000f6bf
inc eax
lea ecx, [eax + eax]
movzx edx, word [ecx + 0x100327f0]
cmp dx, word [ebp + ecx - 0x34]
je 0x1000f6a1
mov dword [ebp - 0x44], eax
call fcn.1000e818
mov ebx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x44]
mov esi, dword [ebp - 4]
cmp ebx, edi
jae 0x1000f718
mov ecx, dword [0x1003ee10]
call fcn.1000eb75
cmp ebx, 0x1fa5
jne 0x1000f703
mov ecx, dword [0x1003ee10]
mov eax, 0x100327f0
push eax
push eax
mov edx, eax
imul esi, ecx, 0x7ca24e59
call fcn.1000ee69
pop ecx
pop ecx
sub esi, 0x3fdb6676
mov ecx, esi
call fcn.1000eb75
inc ebx
cmp ebx, edi
jb 0x1000f6d4
mov dword [ebp - 0x14], ebx
mov edi, dword [ebp - 0x4c]
xor edx, edx
push 0x12
pop ecx
mov eax, edi
xor esi, 0xbeeaf7ab
div ecx
mov bl, byte [ebp + edi - 0x1a0]
movzx ecx, bl
push 0
mov dword [ebp - 4], esi
movzx eax, byte [ebp + edx - 0xa0]
add eax, dword [ebp - 0x48]
add ecx, eax
movzx ecx, cl
mov dword [ebp - 0x48], ecx
mov al, byte [ebp + ecx - 0x1a0]
mov byte [ebp + edi - 0x1a0], al
inc edi
mov byte [ebp + ecx - 0x1a0], bl
mov ecx, 0x100327f0
mov dword [ebp - 0x4c], edi
pop ebx
cmp edi, 0x100
jb 0x1000f67d
xor esi, 0x1a5a97a6
mov edi, ebx
mov dword [ebp - 4], esi
mov esi, ebx
lea eax, [esi + 1]
movzx esi, al
mov cl, byte [ebp + esi - 0x1a0]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x1a0]
mov byte [ebp + esi - 0x1a0], al
mov byte [ebp + ebx - 0x1a0], cl
movzx eax, byte [ebp + esi - 0x1a0]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x1a0]
xor al, byte [ebp + edi - 0x10]
mov byte [ebp + edi - 0x98], al
inc edi
cmp edi, 9
jb 0x1000f784
xor ebx, ebx
mov dword [ebp - 0x8c], 0x1c29
imul eax, dword [ebp - 4], 0xe09ec1cb
mov ecx, ebx
mov byte [ebp - 0x8f], bl
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x80], 0x1c1b
mov dword [ebp - 0x7c], 0x336
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x74], 0x257
mov dword [ebp - 0x70], 0x21f4
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], 0x64c
mov dword [ebp - 0x64], 0x1b79
mov dword [ebp - 0x60], 0x263e
mov dword [ebp - 0x5c], 0x1a56
mov dword [ebp - 0x58], 0x1529
cmp ecx, 5
je 0x1000f84b
inc ecx
cmp ecx, 0xe
jl 0x1000f840
xor eax, 0x89d57a11
mov dword [ebp - 0x34], 0x1842
mov dword [0x1003ee10], eax
mov esi, ebx
or eax, 0xa739ab31
mov dword [ebp - 0x30], 0x10ed
mov dword [ebp - 0x2c], 0x1710
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], 0x1426
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], 0x1331
mov dword [0x1003ee84], eax
cmp esi, 3
je 0x1000f898
inc esi
cmp esi, 8
jl 0x1000f88d
push dword [ebp - 0x50]
push dword [ebp + ecx*4 - 0x8c]
call fcn.1000f5d2
mov ecx, dword [ebp - 0x54]
lea edx, [ebp - 0x98]
push eax
call fcn.10019e4c
call eax
mov edi, eax
cmp edi, dword [ebp + esi*4 - 0x34]
pop esi
je 0x1000f93e
mov eax, dword [0x1003ee10]
mov edx, 0xbf
mov dword [ebp - 0x40], 0xc3f
and eax, 0x5867cae9
mov dword [ebp - 0x3c], edx
mov ecx, 0x100327f0
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], 0x182c
mov dword [ebp - 0x30], 0x1e72
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], 0x1e8c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], 0x1c17
mov dword [ebp - 0x18], 0x10b8
lea ecx, [ecx + 2]
xor eax, 0xc571d91b
cmp word [ecx], bx
jne 0x1000f90e
mov dword [0x1003ee10], eax
cmp ebx, 5
je 0x1000f92b
inc ebx
cmp ebx, 0xb
jl 0x1000f920
push dword [ebp - 0x50]
mov eax, dword [ebp + ebx*4 - 0x40]
xor eax, edx
push eax
push edi
call fcn.1000fbe9
add esp, 0xc
mov eax, dword [0x1003ee84]
add eax, 0x8ab4366d
mov dword [0x1003ee10], eax
mov eax, edi
pop edi
pop ebx
leave
ret