Function at 0x10024936
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10052e50
call fcn.10052218
sub esp, 0xac
push ebx
push esi
xor esi, esi
mov dword [ebp - 0x28], 0x65da
push edi
mov edi, edx
mov dword [ebp - 0x10], esp
xor ebx, ebx
mov dword [ebp - 0x2c], edi
inc esi
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x28], 0x67df
jle 0x100249fe
mov edi, ebx
mov dword [ebp - 0x18], edi
mov eax, ebx
mov dword [ebp - 0x14], ebx
mov edx, ebx
mov dword [ebp - 0x30], edi
mov ecx, eax
mov dword [ebp - 0x1c], edx
shl edi, cl
mov ecx, edx
mov dword [ebp - 0x24], 0x7f85
mov dword [ebp - 0x20], ecx
mov eax, edi
sar eax, cl
lea ecx, [ebp - 0xa0]
cdq
push edx
push eax
call fcn.10003c04
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100249ab
mov eax, dword [eax]
push eax
call fcn.1003a280
pop ecx
push ebx
push esi
lea ecx, [ebp - 0xa0]
call fcn.10002056
mov ecx, dword [ebp - 0x20]
dec ecx
dec dword [ebp - 0x24]
mov dword [ebp - 0x20], ecx
jne 0x1002498f
mov edx, dword [ebp - 0x1c]
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, 0x73a2
jl 0x10024983
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x3ddf
jl 0x10024977
inc edi
mov dword [ebp - 0x18], edi
cmp edi, 0xafc
jl 0x10024972
mov edi, dword [ebp - 0x2c]
cmp dword [ebp - 0x28], 0x622a
jge 0x10024a12
push str.skybebs_weqxohvos_rfovctseh_clddv_pem_tqji_weclei_nsojhulpt_vgagktge_enk_ahaokdwo_qztnlojrf_budrvxzm
call fcn.1003a280
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp + 0xc], 0
je 0x100252a6
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x74], eax
mov eax, dword [edi]
mov dword [ebp - 0x60], edi
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x24], 0x24f1
cmp dword [ebp - 0x24], 0x2748
jle 0x10024a9e
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x20], ebx
mov eax, ebx
mov dword [ebp - 0x28], ebx
mov ecx, eax
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], ebx
sar edi, cl
mov ecx, ebx
mov eax, edi
sar eax, cl
mov ecx, 0x1006a318
xor eax, esi
cdq
push edx
push eax
call fcn.10001c75
inc ebx
cmp ebx, 0x635c
jl 0x10024a54
mov eax, dword [ebp - 0x28]
mov edi, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x28], eax
push 0
pop ebx
cmp eax, 0x6a42
jl 0x10024a4a
inc edi
mov dword [ebp - 0x20], edi
cmp edi, 0x1b44
jl 0x10024a45
inc esi
cmp esi, 0x6f63
jl 0x10024a40
xor esi, esi
inc esi
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], 2
cmp dword [ebp - 0x24], 0x2325
jge 0x10024ac0
mov edx, str.hhm_eixekq_zkp_ymmnymh_ncf_xre_mnaysuoqp_xdsqavc_weidxqkle_xbvakxkr_oxaex
mov ecx, 0x1006a318
call fcn.10003644
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], ebx
xor ecx, ecx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x30], 0x1ff3c8d
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
cmp eax, 0xffffe2f6
setle cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setne cl
xor edx, edx
cmp ecx, eax
setle dl
xor ecx, ecx
imul edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp edx, eax
setl cl
sub ecx, 0x25e4
cmp ecx, dword [ebp - 0x18]
jne 0x10024b34
mov eax, esi
cmp dword [ebp - 0x18], ebx
jne 0x10024b36
mov eax, ebx
mov dword [ebp - 0x1c], eax
xor edx, edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
setg dl
imul edx, dword [ebp - 0x18]
cmp edx, 0x5043c4ab
jg 0x10024b55
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], 0x4b4a
cmp dword [ebp - 0x20], 0x4c3f
jle 0x10024b91
mov edi, ebx
mov esi, ebx
lea eax, [esi + edi]
mov ecx, 0x1006a318
cdq
push edx
push eax
call fcn.10001c75
inc esi
cmp esi, 0xa41
jl 0x10024b6c
inc edi
cmp edi, 0x6d79
jl 0x10024b6a
xor esi, esi
inc esi
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], 0x19
jle 0x10024c94
mov ecx, 0xffff
mov dword [ebp - 0x30], 0xece9e619
mov dword [ebp - 0x1c], ebx
jmp 0x10024be1
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x3c], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10024bd7
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], ebx
jl 0x10024c81
mov dword [ebp - 0x28], 0xf1b6398c
mov dword [ebp - 0x2c], 0xfffffff8
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], ebx
jl 0x10024c78
mov dword [ebp - 0x30], 0x69233c9e
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x3c], ebx
je 0x10024c69
cmp dword [ebp - 0x3c], ebx
je 0x10024c20
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x3c]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0x28], ebx
jne 0x10024c46
mov eax, esi
cmp dword [ebp - 0x30], ebx
je 0x10024c48
mov eax, ebx
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setge dl
sub edx, 0x6de68677
cmp edx, 3
jae 0x10024c69
mov eax, esi
cmp dword [ebp - 0x3c], ebx
jne 0x10024c6b
mov eax, ebx
mov dword [ebp - 0x30], eax
mov ecx, 0xffff
dec dword [ebp - 0x14]
jns 0x10024c08
dec dword [ebp - 0x1c]
jns 0x10024bf2
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x30], eax
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x19
jg 0x10024ba3
mov dword [ebp - 4], 4
cmp dword [ebp - 0x20], 0x481f
jge 0x10024cb3
mov edx, str.qlixxzj_diak_jsvdlqu_hgozxvidc_dzfeub_kpaacclg_vxsl_kdxnbarau_xsifnkmgi_tqctt
mov ecx, 0x1006a318
call fcn.10003644
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x60]
xor dl, dl
push eax
lea eax, [ebp - 0x64]
mov ecx, 0x3f65
push eax
call fcn.10023d1c
pop ecx
pop ecx
mov edi, ebx
mov dword [ebp - 0x30], ebx
cmp edi, 4
jae 0x100251c3
mov dword [ebp - 0x1c], 0x3ff7
cmp dword [ebp - 0x1c], 0x42f9
jle 0x10024d33
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], 0x21d6
mov edi, dword [ebp - 0x24]
mov esi, ebx
mov ecx, esi
mov eax, edi
sar eax, cl
mov ecx, 0x1006a318
cdq
push edx
push eax
call fcn.10001c75
inc esi
cmp esi, 0x2ef5
jl 0x10024cfd
mov edi, dword [ebp - 0x20]
add dword [ebp - 0x24], edi
dec dword [ebp - 0x28]
jne 0x10024cf8
inc edi
mov dword [ebp - 0x20], edi
cmp edi, 0x237c
jl 0x10024cee
xor esi, esi
inc esi
mov dword [ebp - 0x18], 0xe48d327c
mov dword [ebp - 4], 6
cmp dword [ebp - 0x1c], 0x3c26
jge 0x10024d59
mov edx, str.ebfdqn_qsnqykbjf_dvmuzell_qnpe
mov ecx, 0x1006a318
call fcn.10003644
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x24], 0xdb505206
mov dword [ebp - 0x14], 0xffffffff
mov dword [ebp - 0x18], ebx
jmp 0x10024dcb
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5c], 5
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10024dbd
mov dword [ebp - 0x1c], 0x6a41
cmp dword [ebp - 0x1c], 0x6c80
jle 0x10024e3a
mov dword [ebp - 0x24], ebx
mov esi, ebx
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x20], 0x1509
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
and eax, esi
mov ecx, 0x1006a318
or eax, ebx
cdq
push edx
push eax
call fcn.10001c75
mov eax, dword [ebp - 0x28]
add eax, edi
dec dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
jne 0x10024df6
inc edi
push 0
pop ebx
cmp edi, 0x65cc
jl 0x10024de7
inc esi
cmp esi, 0x2cd9
jl 0x10024de5
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp eax, 0x3527
jl 0x10024de3
xor esi, esi
inc esi
mov dword [ebp - 0x18], ebx
jmp 0x10024e4d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x70], 0x2e6e7f73
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10024e3f
mov dword [ebp - 4], 8
cmp dword [ebp - 0x1c], 0x6928
jge 0x10024e72
mov edx, str.deopzvwx_mkduh_esen_xzeakdz_wgntk_rgjxa_djqufqa_fokwqfiag_eehfruxp_pqads_lsb_zlctqckvf
mov ecx, 0x1006a318
call fcn.10003644
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], ebx
jmp 0x10024eb1
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x88], 0xdade
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10024ea0
inc dword [ebp - 0x14]
mov dword [ebp - 0x18], 0xfffffffd
cmp dword [ebp - 0x18], 0xffffffed
jl 0x100251a4
mov dword [ebp - 0x1c], 0xfd07
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], 0x15
jl 0x10025144
mov dword [ebp - 0x24], 3
cmp dword [ebp - 0x24], 0xffffffef
je 0x1002513c
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], 0xfffffff8
push eax
push ebx
mov dword [ebp - 0x34], ebx
mov edx, 0x671a
push ebx
mov ecx, 0x3627
call fcn.10024936
add esp, 0xc
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x38], 2
jg 0x10025134
mov dword [ebp - 0x2c], 0x1c9e
cmp dword [ebp - 0x2c], 0x574
jge 0x1002503c
lea eax, [ebp - 0x58]
mov dword [ebp - 0x54], ebx
push eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], ebx
push eax
lea eax, [ebp - 0x54]
mov dword [ebp - 0x58], ebx
push eax
push str._d__d__d
call fcn.1003a1b2
mov edi, dword [ebp - 0x58]
xor ecx, ecx
imul edi, dword [ebp - 0x50]
push 4
pop edx
imul edi, dword [ebp - 0x54]
mov dword [ebp - 0x2c], edi
lea eax, [edi + 1]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100355d7
mov edx, eax
add esp, 0x14
mov dword [ebp - 0x28], edx
mov dword [edx + 4], esi
cmp edi, 2
jl 0x10024f95
lea ecx, [edi - 1]
push 2
pop eax
lea edi, [edx + 8]
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0x2c]
mov eax, edi
mov dword [ebp - 0x2c], 2
cdq
sub eax, edx
mov edx, eax
sar edx, 1
cmp edx, 2
jl 0x10024fc5
mov eax, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x28]
lea ecx, [eax + eax]
jmp 0x10024fba
inc dword [ebx + ecx*4]
add ecx, eax
cmp ecx, edi
jle 0x10024fb5
inc eax
cmp eax, edx
jle 0x10024fb0
xor ebx, ebx
mov eax, ebx
mov ecx, esi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x54], esi
jl 0x1002502f
cmp dword [ebp - 0x50], esi
jl 0x10025026
mov edx, dword [ebp - 0x50]
mov eax, ecx
shl eax, 2
mov edi, eax
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x58], esi
jl 0x1002501e
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x58]
add eax, edi
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], edx
mov eax, dword [eax]
add eax, dword [ebp - 0x20]
cdq
mov dword [ebp - 0x2c], 0x61
idiv dword [ebp - 0x2c]
mov eax, dword [ebp - 0x48]
add eax, edi
mov dword [ebp - 0x20], edx
dec dword [ebp - 0x4c]
mov dword [ebp - 0x48], eax
jne 0x10024ff6
mov edx, dword [ebp - 0x34]
mov eax, ecx
shl eax, 2
add edi, eax
dec edx
mov dword [ebp - 0x34], edx
jne 0x10024fe3
inc ecx
cmp ecx, dword [ebp - 0x54]
jle 0x10024fd1
mov eax, dword [ebp - 0x20]
push eax
push str._ld_n
call fcn.1003a280
pop ecx
pop ecx
mov dword [ebp - 0x2c], 0x30aa
cmp dword [ebp - 0x2c], 0x3341
jle 0x100250cb
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x28], 0x2e78
mov dword [ebp - 0x20], eax
mov ecx, ebx
mov dword [ebp - 0x48], ebx
cdq
idiv ecx
mov dword [ebp - 0x4c], 0xba2
mov eax, edx
mov dword [ebp - 0x34], eax
cdq
lea ecx, [ebp - 0xb8]
push edx
push eax
call fcn.10003c04
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10025086
mov eax, dword [eax]
push eax
call fcn.1003a280
pop ecx
push ebx
push esi
lea ecx, [ebp - 0xb8]
call fcn.10002056
mov eax, dword [ebp - 0x34]
dec eax
dec dword [ebp - 0x4c]
mov dword [ebp - 0x34], eax
jne 0x1002506e
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x20]
inc ecx
mov dword [ebp - 0x48], ecx
cmp ecx, 0x7f98
jl 0x1002505f
add eax, edi
dec dword [ebp - 0x28]
mov dword [ebp - 0x20], eax
jne 0x1002505a
inc edi
cmp edi, 0x6b49
jl 0x1002504e
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp + eax*4 - 0x70]
cmp dword [ebp - 0x1c], ebx
jne 0x100250e9
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x38]
sub ecx, dword [ebp + eax*4 - 0x70]
mov eax, ebx
je 0x100250eb
mov eax, esi
mov dword [ebp - 0x5c], eax
add eax, 9
je 0x100250fe
mov eax, dword [ebp - 0x38]
mov edx, esi
cmp dword [ebp + eax*4 - 0x70], ebx
jne 0x10025100
mov edx, ebx
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x70]
cmp eax, edx
setl cl
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x2c], 0x2cf6
jge 0x10025125
push str.aqqnd_hxwnjclr_qweiy_pcgmy_yzpnnvz_gyplpbs_xxdru_omquh_ajb_zkne_oifdghhx_isqcapyxu_ucypraaq
call fcn.1003a280
pop ecx
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x1c]
inc dword [ebp - 0x38]
jmp 0x10024f15
dec dword [ebp - 0x24]
jmp 0x10024ee6
inc dword [ebp - 0x14]
jmp 0x10024ed5
mov dword [ebp - 0x1c], esi
jmp 0x10025196
mov dword [ebp - 0x2c], 0x3988
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x14], ebx
jmp 0x10025169
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x5c], 0x63832542
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jle 0x1002515b
mov eax, dword [ebp - 0x68]
cmp eax, dword [ebp - 0x2c]
jg 0x1002518e
mov eax, dword [ebp - 0x5c]
xor ecx, ecx
cmp eax, esi
mov eax, dword [ebp - 0x2c]
setle cl
add eax, ecx
cmp eax, 0xe5ff1fc5
mov eax, ebx
jae 0x10025190
mov eax, esi
mov dword [ebp - 0x34], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x1e
jg 0x10025149
dec dword [ebp - 0x18]
jmp 0x10024ec1
mov esi, dword [ebp - 0x60]
mov dl, 0x5c
mov edi, dword [ebp - 0x30]
mov cl, byte [edi + esi]
call fcn.10029853
mov byte [edi + esi], al
inc edi
xor esi, esi
mov dword [ebp - 0x30], edi
inc esi
jmp 0x10024cd2
mov dword [ebp - 0x30], 0xfffffff8
mov dword [ebp - 0x20], 0xa2b8ea2c
mov dword [ebp - 0x14], ebx
jmp 0x100251e4
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x44], 0xfffffffb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100251d6
mov dword [ebp - 0x14], ebx
jmp 0x100251fd
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x80], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100251ef
mov eax, dword [ebp - 0x44]
xor edx, edx
cmp eax, 0x1720348f
mov eax, dword [ebp - 0x44]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x30]
cmp eax, ecx
mov eax, dword [ebp - 0x40]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
cmp dword [ebp - 0x44], ecx
jne 0x1002523e
cmp dword [ebp - 0x40], ebx
je 0x10025240
mov ebx, esi
mov eax, dword [ebp - 0x40]
xor edx, edx
cmp ebx, 0x5d9b4e94
sete dl
sub edx, 0xffff
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x40]
setge cl
sub ecx, eax
mov eax, dword [ebp - 0x40]
sub eax, ecx
neg eax
sbb eax, eax
xor edx, edx
inc eax
cmp eax, 0x6038
mov eax, dword [ebp - 0x40]
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setle dl
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x74]
mov dword [eax], ecx
jmp 0x100252ab
mov eax, dword [ebp + 0x10]
dec dword [eax]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret