Function at 0x10025df5
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x1005d5b1
call fcn.1005c588
sub esp, 0x110
push ebx
push esi
xor ebx, ebx
mov dword [ebp - 0x20], edx
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x30], ecx
cmp byte [ebp + 8], bl
je 0x10026574
mov dword [ebp - 0x18], 0x7ec3
cmp dword [ebp - 0x18], 0x8237
jle 0x10025e73
mov esi, ebx
mov edi, ebx
mov eax, edi
lea ecx, [ebp - 0xec]
or eax, esi
cdq
push edx
push eax
call fcn.10001abf
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10025e4c
mov eax, dword [eax]
push eax
call fcn.10044453
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xec]
call fcn.1000e569
inc edi
cmp edi, 0x1601
jl 0x10025e30
inc esi
cmp esi, 0x516
jl 0x10025e2e
cmp dword [ebp - 0x18], 0x7d32
jge 0x10025e87
push str.lngdvn_zkqekfoom_qhohhcx
call fcn.10044453
pop ecx
or dword [ebp - 4], 0xffffffff
push 3
mov dword [ebp - 0x18], 0x30f94f37
mov dword [ebp - 0x14], ebx
pop ecx
jmp 0x10025eab
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x84], 0xec2e0cf5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10025e9a
push 2
pop ecx
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x18], ebx
jl 0x10025f07
mov dword [ebp - 0x14], 0xccbad86e
mov dword [ebp - 0x14], ebx
jmp 0x10025ed6
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x84], ebx
jne 0x10025edb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jle 0x10025ec7
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], ebx
jl 0x10025f02
push ecx
push 0xe2c
mov edx, 0x68b2
mov ecx, 0x5cdc
call fcn.100268f5
dec dword [ebp - 0x14]
pop ecx
pop ecx
jns 0x10025ee3
push 2
pop ecx
dec dword [ebp - 0x18]
jns 0x10025ebb
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 4], ecx
mov dword [ebp - 0x28], 0xc8b1
mov dword [ebp - 0x14], 0x4bc7
cmp dword [ebp - 0x14], 0x4de5
jle 0x10025f8d
mov edi, ebx
mov esi, ebx
mov eax, ebx
mov dword [ebp - 0x18], ebx
and eax, esi
lea ecx, [ebp - 0x104]
and eax, edi
cdq
push edx
push eax
call fcn.10001abf
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10025f58
mov eax, dword [eax]
push eax
call fcn.10044453
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x104]
call fcn.1000e569
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x5e72
jl 0x10025f3c
inc esi
cmp esi, 0x453e
jl 0x10025f37
inc edi
cmp edi, 0x5234
jl 0x10025f35
mov byte [ebp - 0x21], bl
cmp dword [ebp - 0x14], 0x4872
jge 0x10025fa4
push str.mmndgr_kegh_swnxp_ybzib_sby_rbcepj
call fcn.10044453
pop ecx
push 0x9c
push 0x18e8
lea ecx, [ebp - 0x21]
mov dword [ebp - 4], 2
call fcn.10028fec
lea eax, [ebp - 0x23]
mov byte [ebp - 0x23], bl
push eax
push 0x60d4
push ebx
push 0x4ed5
mov edx, 0x6a14
mov ecx, 0x7e4d
call fcn.100284b9
mov esi, dword [ebp - 0x30]
add esp, 0x18
mov edi, dword [ebp - 0x20]
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x28], eax
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x18], 0x66aa
cmp dword [ebp - 0x18], 0x67df
mov dword [ebp - 0x4c], eax
jle 0x10026052
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
shl eax, cl
lea ecx, [ebp - 0x11c]
cdq
push edx
push eax
call fcn.10001abf
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10026025
mov eax, dword [eax]
push eax
call fcn.10044453
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x11c]
call fcn.1000e569
inc edi
cmp edi, 0x2e7b
jl 0x10026007
inc esi
cmp esi, 0x1a74
jl 0x10026005
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x14], 0xffffffff
cmp dword [ebp - 0x18], 0x6684
jge 0x1002606d
push str.xyhvfwe_qovrrsnye_qddfwg
call fcn.10044453
pop ecx
push 2
pop ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 0x14], ebx
jmp 0x10026086
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x48], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10026078
push 3
mov dword [ebp - 0x14], ebx
pop ecx
jmp 0x100260a4
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xb0], 0x7d37
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10026093
mov eax, dword [ebp - 0x48]
xor ecx, ecx
cmp eax, 0xffffffff
mov eax, dword [ebp - 0x44]
setle cl
imul eax, ecx
test eax, eax
je 0x100260cd
cmp dword [ebp - 0x44], ebx
je 0x100260cd
cmp dword [ebp - 0x48], ebx
je 0x100260cd
xor edx, edx
inc edx
jmp 0x100260cf
mov edx, ebx
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x44]
push 3
setge cl
add eax, ecx
pop ecx
cmp ecx, eax
mov eax, dword [ebp - 0xac]
sbb ecx, ecx
xor edx, edx
inc ecx
sub ecx, eax
mov eax, dword [ebp - 0xac]
cmp ecx, eax
mov eax, dword [ebp - 0x44]
setl dl
xor ecx, ecx
cmp eax, 0x72d4
setge cl
imul ecx, edx
test ecx, ecx
je 0x10026119
cmp dword [ebp - 0x44], ebx
je 0x10026119
xor eax, eax
inc eax
jmp 0x1002611b
mov eax, ebx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x14], ebx
jmp 0x10026131
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x48], 0x38367457
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10026123
cmp dword [esi + 0x14], 8
jb 0x10026141
mov eax, dword [esi]
jmp 0x10026143
mov eax, esi
push dword [esi + 0x10]
mov ecx, edi
push ebx
push eax
call fcn.1002a37b
mov esi, eax
mov edi, ebx
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x40], edi
cmp edi, dword [ebp - 0x4c]
jae 0x1002642c
push dword [ebp - 0x28]
movdqa xmm0, xmmword [0x1006bec0]
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0xcc]
mov dword [ebp - 0x58], ebx
push eax
push ebx
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x54], ebx
movdqu xmmword [ebp - 0xcc], xmm0
mov dword [ebp - 0x50], ebx
call fcn.100111f2
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x68], ebx
mov dword [eax], 0xffffffea
mov eax, dword [ebp - 0x58]
cmp dword [eax], 9
jg 0x100262aa
push 2
lea ecx, [ebp - 0x78]
call fcn.1000ddb2
push 0x6f56
push 0x74d9
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 8
push eax
push ebx
push 1
push 0x3b9c
push 0x6a
lea eax, [ebp - 0x78]
mov edx, 0x5225
push eax
push 1
mov ecx, 0x13d3
call fcn.100289d2
add esp, 0x24
mov dword [ebp - 0x2c], ebx
jmp 0x10026205
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x94], 0xd86e52d8
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 4
jl 0x100261f4
xor eax, eax
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], ebx
jl 0x1002628a
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], ebx
jl 0x10026282
mov dword [ebp - 0x38], 0xaf8b5131
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
jl 0x10026270
push 0x6b4c
push eax
lea eax, [ebp - 0x58]
mov dword [ebp - 0x6c], 0xa92bd42c
push eax
lea eax, [ebp - 0x78]
push eax
push 0x3bdd
push ecx
lea eax, [ebp - 0x34]
push eax
push ecx
lea eax, [ebp - 0x6c]
push eax
lea edx, [ebp - 0x68]
lea ecx, [ebp - 0x38]
call fcn.1002596d
add esp, 0x24
dec dword [ebp - 0x38]
push 1
pop eax
jns 0x10026236
mov eax, dword [ebp - 0x78]
cmp dword [eax], ebx
jne 0x1002627f
dec dword [ebp - 0x34]
push 1
pop eax
jns 0x10026227
xor eax, eax
inc eax
dec dword [ebp - 0x8c]
jns 0x1002621c
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 7
call fcn.1000de35
mov eax, dword [ebp - 0x58]
inc dword [eax]
mov eax, dword [ebp - 0x58]
cmp dword [eax], 9
jle 0x100261b1
mov esi, dword [ebp - 0x3c]
push ecx
call fcn.100281a4
pop ecx
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 2
call fcn.1000de35
cmp esi, 0xffffffff
je 0x1002640a
cmp esi, dword [ebp - 0x40]
je 0x100263d6
push 3
pop eax
push eax
lea ecx, [ebp - 0xbc]
call fcn.1000ddb2
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x18], 0xfffffff6
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x18], 0xfffffff8
push 2
call fcn.1000ddb2
push ecx
push ecx
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0xbc]
mov dword [ebp - 0x18], 0x9d73df2e
push eax
call fcn.1002860f
add esp, 0x10
mov dword [ebp - 0x1c], ebx
jmp 0x1002633a
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xd4], 0xffffffff
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10026329
mov dword [ebp - 0x1c], ebx
jmp 0x10026356
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa4], 0xecc2443a
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jl 0x10026345
lea eax, [ebp - 0x1c]
mov edx, 0xb9
push eax
push ebx
push 0x1819
push 0x1aed
lea eax, [ebp - 0xa0]
push eax
push ecx
push 0x493e
push ecx
push 0x3d91
mov ecx, 0x655b
call fcn.1002596d
add esp, 0x24
lea ecx, [ebp - 0xa0]
inc dword [ebp - 0x18]
call fcn.1000de35
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 2
call fcn.1000de35
mov edx, dword [ebp - 0x20]
lea eax, [ebp - 0x40]
push eax
push 0x85
push 0x1f85
lea eax, [ebp - 0x64]
mov cl, 1
push eax
push ebx
lea eax, [ebp - 0x3c]
push eax
push 1
call fcn.100281d1
mov esi, dword [ebp - 0x3c]
add esp, 0x1c
mov ecx, dword [ebp - 0x30]
mov edi, dword [ebp - 0x28]
add edi, esi
mov dword [ebp - 0x40], edi
cmp dword [ecx + 0x14], 8
jb 0x100263eb
mov eax, dword [ecx]
jmp 0x100263ed
mov eax, ecx
push dword [ecx + 0x10]
mov ecx, dword [ebp - 0x20]
push edi
push eax
call fcn.1002a37b
mov esi, eax
mov dword [ebp - 0x3c], esi
cmp edi, 0xffffffff
jne 0x10026159
jmp 0x1002642c
lea eax, [ebp - 0x40]
mov edx, 0x5e42
push eax
push ebx
push 1
push 0x7854
push dword [ebp - 0x20]
lea eax, [ebp - 0x64]
mov cl, 1
push eax
call fcn.10026a91
add esp, 0x18
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x28], 0xe60f951f
mov dword [ebp - 0x18], 0x7b3f
cmp dword [ebp - 0x18], 0x7e16
jle 0x100264a7
push 0x78
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_Polygon]
mov edi, ebx
mov dword [ebp - 0x30], ebx
mov esi, ebx
mov ecx, esi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x4c], ebx
sar edi, cl
mov eax, ebx
mov ecx, 0x10079cf8
xor eax, edi
cdq
push edx
push eax
call fcn.1000dad0
inc ebx
cmp ebx, 0x276e
jl 0x10026472
mov edi, dword [ebp - 0x30]
inc esi
push 0
pop ebx
cmp esi, 0x38ab
jl 0x10026468
inc edi
mov dword [ebp - 0x30], edi
cmp edi, 0x14ca
jl 0x10026466
mov dword [ebp - 0x20], ebx
jmp 0x100264bc
push ecx
push 1
push ecx
push ecx
call fcn.10028479
add esp, 0x10
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffffc
jl 0x100264ac
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x18], 0x780a
jge 0x100264fc
mov edx, str.wacfcjx_gcrbx_dzky_uswwo_icimacxq_jngowwnb
mov ecx, 0x10079cf8
call fcn.1001081c
jmp 0x100264fc
push 0xda6
push 0x5e01
push 0x1239
push 1
push 0x6f09
push 0x4a1b
lea eax, [ebp - 0x22]
mov dword [ebp - 4], 2
push eax
push 0x74f1
push 0x2abe
push 0x305f
push 0x64a4
push 0x1d51
push 0x2f69
push 0x5a2
push 1
push 0x3c7e
mov dl, 1
mov byte [ebp - 0x22], bl
mov ecx, 0x69d4
call fcn.10025bce
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x64]
add esp, 0x40
push eax
call fcn.10029fd8
lea ecx, [ebp - 0x64]
call fcn.1002a506
jmp 0x10026582
push 0x14fc
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_VirtualQueryEx]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret