Function at 0x100277f2
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10057c5a
call fcn.100567e0
sub esp, 0xa4
cmp byte [ebp + 0xc], 0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
je 0x10027e1b
mov eax, dword [ebp + 0x20]
xor esi, esi
push 3
pop edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], 0x4dbb
mov dword [ebp - 0x20], 0xc70ab227
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x14], 0x2804
cmp dword [ebp - 0x14], 0x28e3
mov dword [ebp - 0x24], eax
jle 0x1002787e
mov ebx, esi
mov edi, esi
mov dword [ebp - 0x3c], esi
mov ecx, esi
mov eax, edi
sar eax, cl
mov ecx, 0x10071338
xor eax, ebx
cdq
push edx
push eax
call fcn.100060aa
inc esi
cmp esi, 0x4a9d
jl 0x10027848
inc edi
push 0
pop esi
cmp edi, 0x5918
jl 0x10027845
inc ebx
cmp ebx, 0x656e
jl 0x10027843
push 3
pop edi
push 4
pop eax
push eax
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x3c], eax
call fcn.100063b9
xor ebx, ebx
mov dword [ebp - 4], esi
inc ebx
mov byte [ebp - 4], bl
cmp dword [ebp - 0x14], 0x2664
jge 0x100278df
mov edx, str.dvjhar_rlyntxj_nghq_zytiaof_tvjtocduo_ruumfw_pxi_gpp_bkgdzgd_oxqb_dpe_nbdiebaol
mov ecx, 0x10071338
call fcn.1000aac1
jmp 0x100278df
mov dword [ebp - 4], esi
mov dword [ebp - 0x24], 0xfffffff9
mov dword [ebp - 0x14], 0x856cd833
mov dword [ebp - 0x14], 0xdd484073
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x30], esi
jmp 0x1002790d
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x44], 6
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ebx
jl 0x100278ff
push 0x684d
lea eax, [ebp - 0x30]
mov ecx, 0x27f0
push eax
push esi
push 0x1ff7
lea edx, [ebp - 0x74]
call fcn.1002835b
add esp, 0x10
dec dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x74]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x18]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
mov dword [edx + 4], eax
mov dword [ebp - 0x24], 0x7457
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp eax, dword [edx + 4]
setge cl
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], esi
jne 0x10027972
mov edx, esi
cmp dword [ebp - 0x24], esi
je 0x10027974
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
sete cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setle dl
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
xor edx, edx
imul ecx, dword [ebp - 0x18]
imul ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp ecx, 0x7fc0
setg dl
xor ecx, ecx
add edx, 0xae3d
cmp edx, eax
setg cl
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x1c], esi
jmp 0x10027a5c
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], esi
jl 0x10027a4a
mov dword [ebp - 0x44], 0xffffffff
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x74]
cmp dword [eax + ecx*4], 0xffffffff
jl 0x10027a05
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x74]
cmp dword [eax + ecx*4], esi
mov eax, esi
je 0x10027a07
mov eax, ebx
cmp eax, dword [ebp - 0x20]
jle 0x10027a0f
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
push 0xfffffffffffffffa
pop ecx
sub ecx, eax
add ecx, dword [ebp - 0x18]
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
cmp eax, 0xfffffff7
setne cl
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], esi
jmp 0x10027a40
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x44], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10027a36
dec dword [ebp - 0x14]
jns 0x100279dc
push ebx
push ecx
push 0x5344
call fcn.10027e63
add esp, 0xc
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jle 0x100279ce
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.1000643c
call fcn.1002a968
mov eax, dword [ebp + 0x18]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x18], 0x4e6d4f28
mov dword [ebp - 0x20], 0xfd43ddca
mov dword [ebp - 0x20], 0x64a11600
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x20], 0x13f5e3d1
mov dword [ebp - 0x14], esi
jmp 0x10027ab3
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x98], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10027aa6
cmp dword [ebp - 0x18], 0xcf2e5664
je 0x10027aff
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], 0x245f
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x94]
inc eax
je 0x10027aff
cmp dword [ebp - 0x18], esi
jne 0x10027b02
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], ebx
lea ecx, [ebp - 0x8c]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x40]
mov dword [ebp - 0x20], 0xffffffff
push edi
mov dword [ebp - 0x24], eax
call fcn.100063b9
mov dword [ebp - 4], edi
mov dword [ebp - 0x14], esi
jmp 0x10027b41
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x8c]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10027b32
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], 0xfffffff6
jne 0x10027c13
mov dword [ebp - 0x18], 0x4bb3
cmp dword [ebp - 0x18], 0x4e25
jle 0x10027bc0
mov edi, esi
mov ecx, esi
mov dword [ebp - 0x14], esi
mov eax, edi
sar eax, cl
lea ecx, [ebp - 0xb0]
cdq
push edx
push eax
call fcn.10001a99
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10027b86
mov eax, dword [eax]
push eax
call fcn.1004027d
pop ecx
push esi
push ebx
lea ecx, [ebp - 0xb0]
call fcn.10006cfe
mov ecx, dword [ebp - 0x14]
inc ecx
mov dword [ebp - 0x14], ecx
cmp ecx, 0x4a9
jl 0x10027b6a
inc edi
cmp edi, 0x247e
jl 0x10027b65
push 0x2003
call dword [sym.imp.USER32.dll_IsIconic]
push 3
pop edi
mov dword [ebp - 0x5c], 0xfffffffe
cmp dword [ebp - 0x18], 0x4a2f
jge 0x10027bdb
push str.jlqnjc_dniidg_sbohq_mighbh_lpiixf_luburi_jwgd_enmuy_qhnkwb_hsp_ahsfofify_jdqjd
call fcn.1004027d
pop ecx
push ebx
push 0x6d23
push 0x3633
push 0x1225
push ebx
push 0x3e19
xor dl, dl
mov dword [ebp - 4], edi
mov ecx, 0x251e
call fcn.10029f5a
add esp, 0x18
lea edx, [ebp - 0x5c]
call fcn.10029fcd
dec dword [ebp - 0x20]
jmp 0x10027b49
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8c]
call fcn.1000643c
lea ecx, [ebp - 0x40]
mov eax, ecx
sub ecx, eax
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x20], 0xadf890ba
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x64], 0xfffffffa
mov dword [ebp - 0x20], 0x5eb5a40a
mov dword [ebp - 0x78], 0x700c0d35
mov dword [ebp - 0x18], 0x4c38db0
mov dword [ebp - 0x1c], esi
jmp 0x10027c65
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x38], 0x3773672d
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10027c57
mov dword [ebp - 0x1c], esi
jmp 0x10027c7e
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x50], 0x8f9c
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x10027c70
mov dword [ebp - 0x1c], esi
jmp 0x10027c92
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x54], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x10027c88
mov ecx, dword [ebp - 0x38]
xor edx, edx
mov eax, dword [ebp - 0x34]
cmp eax, ecx
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
setle dl
add edx, 0x9e56e623
xor ebx, ebx
imul ecx, edx
mov edx, dword [ebp - 0x48]
cmp ecx, eax
mov eax, dword [ebp - 0x4c]
setne bl
xor ecx, ecx
imul edx, ebx
cmp edx, eax
setge cl
cmp ecx, 0xd88101ae
mov ecx, dword [ebp - 0x34]
sbb eax, eax
inc eax
imul ecx, eax
mov eax, dword [ebp - 0x38]
sub eax, ecx
jne 0x10027ce3
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x34]
add eax, ecx
mov ecx, dword [ebp - 0x20]
add ecx, eax
sub ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x34]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
add ecx, eax
mov eax, dword [ebp - 0x34]
cmp ecx, eax
mov eax, dword [ebp - 0x48]
setle dl
xor ecx, ecx
cmp edx, eax
sete cl
xor eax, eax
cmp ecx, 0x7088
mov dword [ebp - 0x54], ecx
sete al
neg eax
jne 0x10027d3e
cmp dword [ebp - 0x48], esi
jne 0x10027d3e
xor ebx, ebx
mov eax, esi
inc ebx
jmp 0x10027d43
xor ebx, ebx
inc ebx
mov eax, ebx
mov dword [ebp - 0x14], eax
xor edx, edx
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x14]
sub ecx, eax
mov eax, dword [ebp - 0x48]
cmp ecx, eax
setg dl
sub edx, 0x6e12cdfd
jne 0x10027d67
mov ecx, esi
cmp dword [ebp - 0x20], esi
je 0x10027d69
mov ecx, ebx
mov eax, dword [ebp - 0x34]
xor edx, edx
sub ecx, eax
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setle dl
cmp edx, 0x9dda
jle 0x10027d8d
mov eax, esi
cmp dword [ebp - 0x18], esi
je 0x10027d8f
mov eax, ebx
mov ecx, dword [ebp - 0x60]
mov dl, 0xfa
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x24]
mov cl, byte [ecx + eax]
call fcn.1002e36b
mov ecx, dword [ebp - 0x24]
mov byte [ecx], al
inc ecx
dec dword [ebp - 0x3c]
mov dword [ebp - 0x24], ecx
jne 0x10027c2c
mov dword [ebp - 0x28], 0x9841b3c6
xor dl, dl
mov dword [ebp - 0x80], 0x83cc
mov ecx, 0x7ba8
mov dword [ebp - 0x58], edi
call fcn.100280cb
mov dword [ebp - 0x28], 0x14
jmp 0x10027e0b
lea eax, [ebp - 0x80]
mov dword [ebp - 0x7c], 0x6b9dd952
push eax
push esi
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], 0xfffffff7
push eax
lea eax, [ebp - 0x28]
push eax
lea edx, [ebp - 0x7c]
lea ecx, [ebp - 0x58]
call fcn.1002811e
add esp, 0x10
cmp dword [ebp - 0x28], esi
jne 0x10027e11
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x1d
je 0x10027dda
mov ecx, dword [ebp + 0x20]
mov eax, dword [ebp - 0x40]
mov dword [ecx], eax
jmp 0x10027e31
mov byte [ebp - 0x29], 0
cmp byte [ebp - 0x29], 0
je 0x10027e31
mov edx, 0x1689
xor cl, cl
call fcn.10029d3a
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret