Function at 0x1002924f
Capabilities:
Encode data using xor
Resume thread

Disassembly:
mov eax, 0x100661df
call fcn.10064c08
sub esp, 0x2c
cmp byte [ebp + 0x10], 0
push ebx
push esi
push edi
mov esi, edx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x24], esi
mov byte [ebp - 0x14], cl
je 0x100293eb
mov dword [ebp - 0x28], 0x6df3
cmp dword [ebp - 0x28], 0x7014
jle 0x100292c1
xor ebx, ebx
xor esi, esi
xor eax, eax
mov dword [ebp + 0x10], eax
add eax, esi
mov ecx, 0x10081dd8
xor eax, ebx
cdq
push edx
push eax
call fcn.1000c947
mov eax, dword [ebp + 0x10]
inc eax
mov dword [ebp + 0x10], eax
cmp eax, 0x6513
jl 0x1002928d
inc esi
cmp esi, 0x800a
jl 0x10029288
inc ebx
cmp ebx, 0x6cae
jl 0x10029286
mov esi, dword [ebp - 0x24]
and dword [ebp - 4], 0
cmp dword [ebp - 0x28], 0x6c60
jge 0x100292fc
mov edx, str.czzwvkjmp_rmbcbrg_ona_zbtu_cbvqh_qdleekj
mov ecx, 0x10081dd8
call fcn.1000fdbf
jmp 0x100292fc
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 0x2477
cmp dword [ebp - 0x1c], 0x282d
jle 0x10029365
xor ebx, ebx
xor esi, esi
xor eax, eax
mov dword [ebp + 0x10], eax
xor ecx, ecx
mov dword [ebp - 0x28], ecx
cdq
idiv ecx
lea eax, [esi + ebx]
mov ecx, 0x10081dd8
or eax, edx
cdq
push edx
push eax
call fcn.1000c947
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp + 0x10]
inc ecx
mov dword [ebp - 0x28], ecx
cmp ecx, 0x95e
jl 0x1002931e
inc eax
mov dword [ebp + 0x10], eax
cmp eax, 0x78fa
jl 0x10029319
inc esi
cmp esi, 0x6358
jl 0x10029314
inc ebx
cmp ebx, 0x65bc
jl 0x10029312
mov esi, dword [ebp - 0x24]
cmp byte [ebp + 0x18], 0
je 0x10029390
mov edx, dword [ebp + 0xc]
mov dword [edx], 0
cmp dword [edx], 1
jge 0x100293ad
mov esi, dword [ebp + 0x14]
mov ecx, dword [edx]
mov eax, dword [esi]
mov dword [eax + ecx*4], 0x60df3928
inc dword [edx]
cmp dword [edx], 1
jl 0x1002937c
jmp 0x100293ad
mov dword [esi], 0
cmp dword [esi], 2
jge 0x100293ad
mov edx, dword [ebp + 8]
mov ecx, dword [esi]
mov eax, dword [edx]
or dword [eax + ecx*4], 0xffffffff
inc dword [esi]
cmp dword [esi], 2
jl 0x1002939e
mov dword [ebp - 4], 2
cmp dword [ebp - 0x1c], 0x20f2
jge 0x100293cc
mov edx, str.zqglvzay_pwry_lzqn_ptu_ytrzg_xskdxhnhn_kjc
mov ecx, 0x10081dd8
call fcn.1000fdbf
jmp 0x10029541
test cl, cl
je 0x100293fc
push 0
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp 0x10029541
mov dword [ebp + 0x10], 0
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x28], 0xfffffff7
mov dword [ebp - 0x1c], 0xfffffffb
mov dword [ebp - 0x28], 0x716e289a
mov dword [ebp - 0x28], 0
push 4
call fcn.100014bd
mov dword [ebp - 0x18], 0xfd89d684
mov dword [ebp + 0x10], 0xf2c67a95
mov dword [ebp + 0x10], 0
jmp 0x1002944e
mov eax, dword [ebp + 0x10]
mov dword [ebp + eax*4 - 0x20], 0xffff
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], 1
jl 0x10029440
mov dword [ebp + 0x10], 0
jmp 0x1002946d
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x34]
mov dword [eax + ecx*4], 0xc7a88ff7
inc dword [ebp + 0x10]
cmp dword [ebp + 0x10], 4
jl 0x1002945d
mov dword [ebp + 0x10], 0
xor edx, edx
mov eax, dword [ebp - 0x20]
cmp eax, 0xd6b5
mov eax, dword [ebp + 0x10]
setne dl
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x20]
cmp edx, eax
mov eax, dword [ebp + 0x10]
setge cl
add eax, ecx
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
add ecx, 2
sub ecx, dword [ebp + 0x10]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
imul ecx, dword [ebp + 0x10]
cmp ecx, 0xfffffff8
setge al
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp + 0x10]
cmp ecx, eax
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp - 0x34]
setg dl
xor ecx, ecx
cmp edx, 0x9e68
setle cl
xor ebx, ebx
cmp eax, ecx
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
setne bl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x18]
setle dl
mov eax, dword [ebp - 0x28]
imul ebx, edx
xor edx, edx
cmp eax, ecx
setg dl
mov dword [esi + 4], ebx
cmp edx, dword [ebp + 0x10]
je 0x10029522
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
cmp dword [esi + 4], eax
setge cl
mov dword [ebp + 0x10], ecx
lea ecx, [ebp - 0x34]
call fcn.10001540
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret