Function at 0x1000ed74
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x168
mov eax, ecx
mov dword [ebp - 0x44], eax
test eax, eax
je 0x1000efb7
push ebx
xor ebx, ebx
mov dword [ebp - 0x3c], 0x1d6f
xor ecx, ecx
mov dword [ebp - 0x34], 0xc0f
inc ecx
mov dword [ebp - 0x2c], 0x1961
mov eax, ebx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], 0xc9a
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], 0x35c
mov dword [ebp - 0x18], 0xcef
mov dword [ebp - 0x14], 0x3cc
mov dword [ebp - 0x10], 0x2686
cmp eax, 8
je 0x1000ede4
inc eax
cmp eax, 0xd
jl 0x1000edd9
mov eax, dword [ebp + eax*4 - 0x40]
push esi
push edi
push 5
pop ecx
mov esi, str.chieuchcirclekorean
mov dword [ebp - 0x48], eax
lea edi, [ebp - 0x68]
mov dword [ebp - 0xc], 0x1410a56f
rep movsd dword es:[edi], dword [esi]
push 6
pop ecx
mov esi, str.Error_in_JPX_codestream
mov dword [ebp - 8], 0xebc4f06a
lea edi, [ebp - 0x24]
mov dword [ebp - 4], ebx
rep movsd dword es:[edi], dword [esi]
cmp byte [ebp - 0x24], 0x73
jne 0x1000ee3e
mov al, 0x73
mov esi, ebx
test al, al
je 0x1000ee3e
cmp byte [ebp + esi - 0x24], bl
je 0x1000ee3e
call fcn.1000d624
mov al, byte [esi + 0x1002fc41]
inc esi
cmp al, byte [ebp + esi - 0x24]
je 0x1000ee22
mov eax, ebx
mov edi, 0x100
mov byte [ebp + eax - 0x168], al
inc eax
cmp eax, edi
jb 0x1000ee45
mov esi, ebx
xor edx, edx
mov bl, byte [ebp + esi - 0x168]
push 0x13
mov eax, esi
pop ecx
div ecx
movzx ecx, bl
movzx eax, byte [ebp + edx - 0x68]
add eax, dword [ebp - 4]
add ecx, eax
movzx ecx, cl
mov dword [ebp - 4], ecx
mov al, byte [ebp + ecx - 0x168]
mov byte [ebp + esi - 0x168], al
inc esi
mov byte [ebp + ecx - 0x168], bl
cmp esi, edi
jb 0x1000ee53
xor ebx, ebx
mov edi, ebx
mov esi, ebx
lea eax, [edi + 1]
movzx edi, al
mov cl, byte [ebp + edi - 0x168]
movzx edx, cl
lea eax, [edx + ebx]
movzx ebx, al
mov al, byte [ebp + ebx - 0x168]
mov byte [ebp + edi - 0x168], al
mov byte [ebp + ebx - 0x168], cl
movzx eax, byte [ebp + edi - 0x168]
add eax, edx
movzx eax, al
mov al, byte [ebp + eax - 0x168]
xor al, byte [ebp + esi - 0xc]
mov byte [ebp + esi - 0x54], al
inc esi
cmp esi, 8
jb 0x1000ee96
mov eax, dword [str._9O_]
mov edi, str.LocalInstallMobileSecurityWaitEvent
add eax, 0xeea7563c
imul esi, eax, 0x754aa94a
xor ebx, ebx
call fcn.1000d25c
lea edi, [edi + 2]
and esi, 0x8be0810
cmp word [edi], bx
jne 0x1000eefa
push 0x19
pop eax
or esi, 0xcff92660
mov byte [ebp - 0x4c], bl
mov ecx, str.LocalInstallMobileSecurityWaitEvent
mov dword [ebp - 0x2c], 0x1e46
mov dword [ebp - 0x28], 0x1139
mov dword [ebp - 0x24], 0x252a
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x19b6
mov dword [str._9O_], esi
call fcn.1000e116
mov esi, dword [str._9O_]
mov edi, ebx
call fcn.1000df34
imul esi, esi, 0x3bb6e304
inc edi
cmp word [edi*2 + str.LocalInstallMobileSecurityWaitEvent], bx
jne 0x1000ef59
cmp edi, 0x2169
jne 0x1000ef7f
imul esi, esi, 0x3c482ee7
jmp 0x1000ef85
xor esi, 0x918b2631
pop edi
mov dword [str._9O_], esi
pop esi
cmp ebx, 3
je 0x1000ef98
inc ebx
cmp ebx, 8
jl 0x1000ef8d
mov eax, dword [ebp + ebx*4 - 0x2c]
push dword [ebp - 0x44]
xor eax, 0x19
push eax
call fcn.1000e930
mov ecx, dword [ebp - 0x48]
lea edx, [ebp - 0x54]
push eax
call fcn.1001779c
call eax
pop ebx
leave
ret