Function at 0x10022c38
Capabilities:
Terminate process

Disassembly:
mov eax, 0x10065e01
call fcn.10064c08
sub esp, 0xe0
mov byte [ebp - 0x40], cl
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
test dl, dl
je 0x10023111
xor ebx, ebx
test cl, cl
je 0x10023106
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x18], 0x61f5
cmp dword [ebp - 0x18], 0x6217
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x58], eax
jle 0x10022cbc
mov esi, ebx
mov dword [ebp - 0x24], ebx
mov edi, ebx
mov ebx, esi
mov esi, 0x5fe8
mov eax, ebx
mov ecx, 0x10081dd8
cdq
push edx
push eax
call fcn.1000c947
add ebx, edi
dec esi
jne 0x10022c8d
mov esi, dword [ebp - 0x24]
dec edi
cmp edi, 0xffffe499
jg 0x10022c86
inc esi
mov dword [ebp - 0x24], esi
push 0
pop ebx
cmp esi, 0x278b
jl 0x10022c84
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 4], ebx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x18], 0x60bd
jge 0x10022d02
mov edx, str.lbg_lgfzhgj_mxnctefk_qzklhmh
mov ecx, 0x10081dd8
call fcn.1000fdbf
jmp 0x10022d02
mov edi, dword [ebp + 0x14]
mov dword [ebp - 4], ebx
cmp dword [edi + 0x10], ebx
je 0x100230f0
mov dword [ebp - 0x18], 0x7775
cmp dword [ebp - 0x18], 0x7963
jle 0x10022d79
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
shl eax, cl
lea ecx, [ebp - 0xd4]
cdq
push edx
push eax
call fcn.10001301
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10022d43
mov eax, dword [eax]
push eax
call fcn.1004c2d0
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xd4]
call fcn.1000168f
inc edi
cmp edi, 0x4fbf
jl 0x10022d25
inc esi
cmp esi, 0x2c6a
jl 0x10022d23
push 0x214f
push ebx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov edi, dword [ebp + 0x14]
push 0x2e
pop eax
push 2
mov ecx, ebx
mov byte [ebp - 0x30], bl
mov dword [ebp - 0x2f], 0xf9660311
mov byte [ebp - 0x2b], 0xb2
mov word [ebp - 0x28], ax
pop esi
mov dword [ebp - 0x3c], ecx
cmp esi, 2
jne 0x10022da5
push 4
pop ecx
push ecx
mov dword [ebp - 0x3c], ecx
pop esi
jmp 0x10022de2
movzx edx, byte [ebp + esi - 0x2f]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x32]
movzx ecx, word [ebp + eax*2 - 0x28]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [ebp + esi - 0x30]
add ecx, edx
mov edx, 0x116a
push ecx
mov word [ebp + eax*2 - 0x28], cx
lea eax, [ebp - 0x3c]
push eax
mov cl, 1
call fcn.10022b91
pop ecx
pop ecx
mov ecx, dword [ebp - 0x3c]
add esi, 2
cmp esi, 6
jb 0x10022d96
xor eax, eax
cmp dword [ebp - 0x18], 0x7478
mov word [ebp - 0x26], ax
jge 0x10022e04
push str.fnfks_kkqod_eyuxp_cquoskmt
call fcn.1004c2d0
pop ecx
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x80]
xor eax, eax
mov dword [ebp - 0x6c], 7
mov word [ebp - 0x80], ax
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x70], ebx
call fcn.1000ce6c
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 5
push eax
mov edx, edi
lea ecx, [ebp - 0x50]
call fcn.100217a3
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 7
call fcn.10001f60
mov esi, ebx
mov dword [ebp - 0x34], ebx
cmp esi, 2
jae 0x10022f03
mov dword [ebp - 0x54], 0x5fdc
cmp dword [ebp - 0x54], 0x6283
jle 0x10022ed8
mov edi, ebx
mov esi, ebx
mov ecx, ebx
mov dword [ebp - 0x24], 0x300e
mov dword [ebp - 0x18], ecx
mov eax, edi
sar eax, cl
lea ecx, [ebp - 0xec]
cdq
push edx
push eax
call fcn.10001301
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10022e8f
mov eax, dword [eax]
push eax
call fcn.1004c2d0
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xec]
call fcn.1000168f
mov ecx, dword [ebp - 0x18]
add ecx, esi
dec dword [ebp - 0x24]
mov dword [ebp - 0x18], ecx
jne 0x10022e73
inc esi
cmp esi, 0x3049
jl 0x10022e67
inc edi
cmp edi, 0xc2e
jl 0x10022e65
push 0xfd8
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, dword [ebp - 0x34]
xor eax, eax
cmp dword [ebp - 0x54], 0x5cb6
mov word [ebp + esi*2 - 0x28], ax
jge 0x10022ef3
push str.payrhjor_dvviultsq_cvoxvj_hfjowvjww_htztktzvd_njvexjhcv_ifepsnsl_yrrqb_psis_mphxh_pslrsd_okrysr_akmp_uxjbp
call fcn.1004c2d0
pop ecx
inc esi
mov dword [ebp - 4], 7
mov dword [ebp - 0x34], esi
jmp 0x10022e4a
mov edi, dword [ebp - 0x4c]
mov eax, edi
mov esi, dword [ebp - 0x50]
sub eax, esi
push 0x18
cdq
pop ecx
idiv ecx
test eax, eax
jne 0x100230e1
push 0x2d
pop eax
mov byte [ebp - 0x20], bl
mov word [ebp - 0x1f], 0x3a6
mov byte [ebp - 0x1d], al
mov word [ebp - 0x1c], 0xab7a
mov dword [ebp - 0x34], 0x6d16
cmp dword [ebp - 0x34], 0x70d8
jle 0x10022f6a
mov esi, ebx
mov edi, ebx
mov eax, edi
mov ecx, 0x10081dd8
xor eax, esi
cdq
push edx
push eax
call fcn.1000c947
inc edi
cmp edi, 0xdc7
jl 0x10022f44
inc esi
cmp esi, 0x5b95
jl 0x10022f42
push 0x2d
pop eax
mov byte [ebp - 4], 0xa
cmp dword [ebp - 0x34], 0x6b89
mov word [ebp - 0x38], ax
jge 0x10022fa8
mov edx, str.zcxg_kyw_ipgzx_sfxz_wap_bikqskicr_wownvfrh_jivx_rsh_cktauk_azw_sgmkovgfe_kugtuuz
mov ecx, 0x10081dd8
call fcn.1000fdbf
jmp 0x10022fa8
mov ecx, ebx
mov dword [ebp - 4], 7
mov bl, byte [ebp - 0x1e]
push 2
pop esi
mov dword [ebp - 0x44], ecx
cmp esi, 2
jne 0x10022fcd
movzx eax, bl
lea ecx, [eax + 1]
mov dword [ebp - 0x44], ecx
lea esi, [eax + 1]
jmp 0x10023001
movzx edx, byte [ebp + esi - 0x1f]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x22]
movzx eax, word [ebp + eax*2 - 0x38]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x20]
push ecx
push ecx
mov word [ebp + eax*2 - 0x38], cx
lea ecx, [ebp - 0x44]
call fcn.1002380c
pop ecx
pop ecx
mov ecx, dword [ebp - 0x44]
add esi, 2
cmp esi, 6
jb 0x10022fba
xor eax, eax
mov dword [ebp - 0x84], 7
mov word [ebp - 0x36], ax
lea ecx, [ebp - 0x98]
mov word [ebp - 0x98], ax
xor ebx, ebx
lea eax, [ebp - 0x38]
mov dword [ebp - 0x88], ebx
push eax
call fcn.1000ce6c
mov edx, dword [ebp - 0x5c]
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0xc
call fcn.100217a3
pop ecx
mov esi, eax
lea eax, [ebp - 0x50]
cmp eax, esi
je 0x1002307a
mov ecx, eax
call fcn.10026bc5
mov ecx, dword [esi]
mov dword [ebp - 0x50], ecx
mov eax, dword [esi + 4]
mov dword [ebp - 0x4c], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x48], eax
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
lea ecx, [ebp - 0xa4]
call fcn.10026bc5
push ebx
push 1
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 7
call fcn.10001f60
mov edi, dword [ebp - 0x4c]
mov esi, dword [ebp - 0x50]
jmp 0x100230e1
push esi
lea ecx, [ebp - 0xbc]
call fcn.10001dc3
push ecx
push ecx
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0xe
push eax
push ecx
lea eax, [ebp - 0xbc]
mov dl, 1
push eax
mov ecx, 0x5de6
call fcn.10022bce
add esp, 0x14
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xbc]
push ebx
push 1
call fcn.10001f60
add esi, 0x18
cmp esi, edi
jne 0x1002309f
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], bl
call fcn.10026bc5
mov ecx, dword [ebp - 0x58]
lea eax, [ebp - 0x68]
push eax
call fcn.10026847
lea ecx, [ebp - 0x68]
call fcn.10026c9e
jmp 0x10023145
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueW]
jmp 0x10023145
cmp byte [ebp + 0x10], 0
je 0x10023122
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
jmp 0x10023145
mov edx, dword [ebp + 0x1c]
mov dword [edx], 0
cmp dword [edx], 2
jge 0x10023145
mov esi, dword [ebp + 8]
mov ecx, dword [edx]
mov eax, dword [esi]
mov dword [eax + ecx*4], 0x2fdad5a5
inc dword [edx]
cmp dword [edx], 2
jl 0x10023133
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret