Function at 0x100219b2
Capabilities:
Encrypt data using speck
Get keyboard layout
Start service

Disassembly:
mov eax, 0x10064bd3
call fcn.10063a38
sub esp, 0x2e8
mov dword [ebp - 0x2c], 0x68ec0ae9
mov dword [ebp - 0x48], 6
push ebx
mov dword [ebp - 0x34], 0xfffffffd
xor ebx, ebx
push esi
mov dword [ebp - 0x3c], ebx
xor esi, esi
mov dword [ebp - 0x30], 0x222c7e12
inc esi
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x2c], 0xffffffe3
cmp dword [ebp - 0x2c], 0x16
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x1ac], ebx
jne 0x10021c07
push 4
pop edi
mov dword [ebp - 0x30], 0x6941fc9a
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x20], 0x6eea5306
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x38], 0xa50887c5
push 3
call fcn.10002861
mov dword [ebp - 0x20], ebx
jmp 0x10021a58
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x12c]
mov dword [eax + ecx*4], 0x4fd3
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10021a45
cmp dword [ebp - 0x30], ebx
je 0x10021a7a
mov eax, dword [ebp - 0x48]
xor ecx, ecx
cmp eax, 0x54bc
mov edx, esi
setle cl
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x34], ebx
jne 0x10021a7c
mov edx, ebx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x2c]
sub ecx, eax
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x48]
neg eax
mov dword [ebp - 0x20], edx
mov ecx, dword [ebp - 0x30]
sbb eax, eax
xor edx, edx
neg eax
imul ecx, eax
mov eax, dword [ebp - 0x20]
cmp eax, ecx
mov ecx, 0x2e633725
setg dl
xor eax, eax
add edx, dword [ebp - 0x24]
add edx, dword [ebp - 0x2c]
cmp edx, 0x37d7
setl al
neg eax
cmp edi, eax
sbb eax, eax
neg eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x2c]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
sub ecx, eax
mov dword [ebp - 0x3c], ecx
cmp dword [ebp - 0x3c], 0x848298bb
je 0x10021af3
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x20], ebx
je 0x10021b31
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], bl
je 0x10021b0d
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
mov dword [ebp - 0x38], 0x19
jmp 0x10021b26
mov dword [ebp - 0x30], 0x767dbf12
inc dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
dec dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0xfffffffa
je 0x10021b16
jmp 0x10021bef
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x28], 0x1b3d
mov dword [ebp - 0x24], ebx
jmp 0x10021be5
mov dword [ebp - 0x38], 0xa796fb6c
mov dword [ebp - 0x1c], 0xb3dad933
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x4c]
dec dword [ebp - 0x4c]
test eax, eax
je 0x10021b81
mov eax, dword [ebp - 0x38]
mov ecx, 0xffff0005
sub ecx, eax
mov eax, dword [ebp - 0x40]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
je 0x10021b7b
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
je 0x10021bb2
mov edx, esi
cmp dword [ebp - 0x3c], ebx
jne 0x10021bb4
mov edx, ebx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x12c]
sub edx, dword [eax + ecx*4]
jne 0x10021bc9
mov ecx, ebx
cmp dword [ebp - 0x4c], ebx
je 0x10021bcb
mov ecx, esi
mov eax, dword [ebp - 0x44]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x1c], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jle 0x10021b43
lea ecx, [ebp - 0x12c]
call fcn.100028c3
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x16
je 0x10021a18
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], bl
je 0x10021c1a
push 0x1306
call dword [sym.imp.USER32.dll_GetSysColorBrush]
mov dword [ebp - 0x20], 0x2971c1e
lea ecx, [ebp - 0x120]
push esi
call fcn.10002861
xor edx, edx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x24], ebx
inc edx
jmp 0x10021c4b
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x120]
mov dword [eax + ecx*4], 0xfffffff9
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10021c38
mov dword [ebp - 0x24], ebx
jmp 0x10021c66
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x2dc], 0x76038591
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x10021c55
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10021c7f
push ebx
call dword [sym.imp.KERNEL32.dll_HeapDestroy]
xor edx, edx
inc edx
cmp dword [ebp - 0x20], ebx
je 0x10021cb0
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10021c99
push ebx
push 0x2634
call dword [sym.imp.USER32.dll_ClientToScreen]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x120]
call fcn.100028c3
mov dword [ebp - 0x20], ebx
jmp 0x10021e05
mov dword [ebp - 0x28], 0x19f23e52
mov dword [ebp - 0x24], ebx
jmp 0x10021cc9
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x94], edx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10021cbc
mov dword [ebp - 0x24], ebx
jmp 0x10021ce0
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x8c], edx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10021cd3
mov ecx, dword [ebp - 0x94]
mov eax, dword [ebp - 0x120]
mov dword [eax], ecx
mov dword [ebp - 0x20], 0xffffffef
cmp dword [ebp - 0x20], 8
jne 0x10021c99
mov dword [ebp - 0x1c], 0x130c
cmp dword [ebp - 0x1c], 0x15f0
jle 0x10021d43
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
sar eax, cl
mov ecx, 0x10081ef8
cdq
push edx
push eax
call fcn.10003ea0
inc edi
cmp edi, 0x45bb
jl 0x10021d14
inc esi
cmp esi, 0x78f3
jl 0x10021d12
push ebx
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
xor edx, edx
inc edx
mov dword [ebp - 0x40], edx
mov byte [ebp - 4], dl
cmp dword [ebp - 0x1c], 0x10bc
jge 0x10021d7f
mov edx, str.vbescbrdp_ghpct_yzgx_daatlgzj_zxxwqe_lvvpmjprx_qwmqzktw_qdzyc_cwqctgk_hglwxur_gahrfecd_vnzfuodqv_toyjx
mov ecx, 0x10081ef8
call fcn.10005908
jmp 0x10021d7f
mov dword [ebp - 4], ebx
lea eax, [ebp - 0x1f4]
push dword [ebp - 0x8c]
movdqa xmm0, xmmword [0x10073820]
lea ecx, [ebp - 0xb0]
push eax
lea eax, [ebp - 0x204]
mov dword [ebp - 0xb0], ebx
push eax
push ebx
movdqu xmmword [ebp - 0x204], xmm0
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], ebx
call fcn.10002972
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10021dde
push 0x2131
push 0x255d
push ebx
call dword [sym.imp.USER32.dll_DeleteMenu]
dec dword [ebp - 0x28]
lea ecx, [ebp - 0xb0]
call fcn.100028c3
inc dword [ebp - 0x20]
xor edx, edx
inc edx
jmp 0x10021cfa
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x54], 0x9fdf99ff
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 1
jl 0x10021df7
mov esi, dword [sym.imp.USER32.dll_DrawMenuBar]
mov dword [ebp - 0x54], ebx
cmp dword [ebp - 0x54], 0xffffffe3
je 0x10021e2f
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10021e2a
push 0x1ba7
call esi
dec dword [ebp - 0x54]
jmp 0x10021e14
push 0x62
pop eax
mov dword [ebp - 0x74], 0x3e064103
mov dword [ebp - 0x70], 0xe023d04
mov dword [ebp - 0x6c], 0x28007c01
mov dword [ebp - 0x68], 0x12b05
mov word [ebp - 0xc6], ax
mov dword [ebp - 0x20], ebx
jmp 0x10021e68
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x5c], 0x9fdf99ff
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 1
jl 0x10021e5a
mov dword [ebp - 0x5c], ebx
jmp 0x10021e86
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10021e83
push 0x1ba7
call esi
dec dword [ebp - 0x5c]
cmp dword [ebp - 0x5c], 0xffffffe3
jne 0x10021e73
push 2
xor esi, esi
mov dword [ebp - 0x4c], ebx
pop edi
inc esi
mov dword [ebp - 0x28], edi
cmp edi, 0x10
jae 0x100221f4
mov dword [ebp - 0x1c], 0xeac8b13e
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10021ecc
push 0x157a
push 0x628
push 0x1569
push 0xf22
push ebx
call dword [sym.imp.USER32.dll_SetRect]
mov dword [ebp - 0x1c], 0x5aec
cmp dword [ebp - 0x1c], 0x5bad
jle 0x10021f37
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegSetKeySecurity]
mov ecx, ebx
mov dword [ebp - 0x34], ebx
mov edi, ebx
mov eax, edi
xor eax, ecx
lea ecx, [ebp - 0x2b8]
cdq
push edx
push eax
call fcn.10003a70
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10021f08
mov eax, dword [eax]
push eax
call fcn.1004bc39
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x2b8]
call fcn.10003049
mov ecx, dword [ebp - 0x34]
inc edi
cmp edi, 0xf4e
jl 0x10021eec
inc ecx
mov dword [ebp - 0x34], ecx
cmp ecx, 0x20ee
jl 0x10021eea
mov edi, dword [ebp - 0x28]
mov byte [ebp - 0x15], bl
cmp dword [ebp - 0x1c], 0x5adc
jge 0x10021f4e
push str.yst_fgmsxn_mnv_bpjcbv_zkuxtlo_idrd_jxzk_ulsxvupnk_rcjyzs
call fcn.1004bc39
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp - 0x15], 0
je 0x10021f69
push 0x1b40
push 0xfdc
push ebx
call dword [sym.imp.GDI32.dll_PtInRegion]
movzx eax, byte [ebp - 0x74]
lea eax, [eax*2 + 2]
cmp edi, eax
jne 0x10022055
push esi
lea ecx, [ebp - 0x1c4]
call fcn.10002861
mov dword [ebp - 0x20], ebx
jmp 0x10021fa0
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c4]
mov dword [eax + ecx*4], 0x198a8f93
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jl 0x10021f8d
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10021fbc
push ebx
push ebx
push ebx
push 0xc84
call dword [sym.imp.USER32.dll_SetWindowsHookExA]
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10021fd2
push esi
push ebx
push 0x1b11
call dword [sym.imp.USER32.dll_SetWindowRgn]
lea ecx, [ebp - 0x1c4]
call fcn.100028c3
movzx eax, byte [ebp + edi - 0x74]
lea ecx, [ebp - 0x158]
mov dword [ebp - 0x28], 0x6915
mov dword [ebp - 0x40], 0xffffffff
mov dword [ebp - 0x34], eax
inc eax
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x1c], 0x47a6deec
push 2
mov dword [ebp - 0x4c], eax
call fcn.10002861
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], ebx
jmp 0x10022030
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x158]
mov dword [eax + ecx*4], 0x8f6c74aa
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x1002201d
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x158]
mov dword [ebp - 0x40], eax
dec dword [ebp - 0x1c]
call fcn.100028c3
mov eax, dword [ebp - 0x34]
dec eax
add edi, eax
jmp 0x100221ec
mov dword [ebp - 0x1c], 0x959310c1
mov dword [ebp - 0x28], 0x66e9
mov dword [ebp - 0x44], 4
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x28], 0xe13f5e3d
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x34], 0xfffffff8
mov dword [ebp - 0x20], ebx
jmp 0x10022094
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x220], 9
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10022083
mov dword [ebp - 0x30], esi
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x48], ebx
jne 0x10022107
cmp dword [ebp - 0x44], ebx
jne 0x100220d3
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x44]
cmp eax, 0xffffffff
setg cl
mov dword [ebp - 0x34], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x34]
cmp eax, 3
mov eax, ebx
setle cl
imul ecx, dword [ebp - 0x48]
test ecx, ecx
je 0x100220d5
mov eax, esi
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], ebx
jne 0x100220e4
mov edx, ebx
cmp dword [ebp - 0x44], ebx
je 0x100220e6
mov edx, esi
mov eax, dword [ebp - 0x48]
xor ecx, ecx
cmp eax, edx
setge cl
xor eax, eax
cmp ecx, 0x15e4
setg al
mov dword [ebp - 0x220], eax
test eax, eax
mov eax, ebx
je 0x10022109
mov eax, esi
movzx edx, byte [ebp + edi - 0x73]
mov dword [ebp - 0x44], eax
mov eax, edi
sub eax, dword [ebp - 0x4c]
push 2
movzx eax, byte [ebp + eax - 0x76]
movzx eax, word [ebp + eax*2 - 0xcc]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + edi - 0x74]
mov word [ebp + eax*2 - 0xcc], cx
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x1c], 0x9b642c70
mov dword [ebp - 0x1c], 0x37bc7528
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], 0xfe1ca29
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], 0x5ca9869e
mov dword [ebp - 0x1c], 0x4185a1fa
mov dword [ebp - 0x1c], 0xbe39e3cf
pop eax
mov dword [ebp - 0x1c], 0xfd1f2e96
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1c], 0xe6e2bfbd
mov dword [ebp - 0x1c], 0x8cf5a8
push eax
call fcn.10002861
mov dword [ebp - 0x1c], 0xdf7e4414
mov dword [ebp - 0x1c], 0xa3c4
mov dword [ebp - 0x1c], 0xde37d660
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], 0xe094bf7d
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], ebx
jmp 0x100221d2
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x148]
or dword [eax + ecx*4], 0xffffffff
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x100221c2
inc dword [ebp - 0x1c]
lea ecx, [ebp - 0x148]
dec dword [ebp - 0x28]
call fcn.100028c3
mov dword [ebp - 0x4c], ebx
add edi, 2
jmp 0x10021e95
xor eax, eax
mov dword [ebp - 0x194], 7
mov word [ebp - 0xbe], ax
lea ecx, [ebp - 0x1a8]
mov word [ebp - 0x1a8], ax
lea eax, [ebp - 0xcc]
push eax
mov dword [ebp - 0x198], ebx
call fcn.1001e50f
mov dword [ebp - 4], 5
mov dword [ebp - 0x40], 0x36d4
cmp dword [ebp - 0x40], 0x3a0a
jle 0x100222af
mov ecx, ebx
mov dword [ebp - 0x48], ebx
mov edi, ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x34], ecx
mov eax, ebx
mov ecx, edi
mov dword [ebp - 0x1c], eax
mov edi, dword [ebp - 0x34]
shl edi, cl
mov dword [ebp - 0x34], edi
mov ecx, eax
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x44], ebx
sar edi, cl
mov eax, ebx
mov ecx, 0x10081ef8
xor eax, edi
cdq
push edx
push eax
call fcn.10003ea0
inc ebx
cmp ebx, 0x48c3
jl 0x10022263
mov eax, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x1c], eax
push 0
pop ebx
cmp eax, 0x7625
jl 0x10022259
mov edi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x48]
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x60a4
jl 0x10022247
inc ecx
mov dword [ebp - 0x48], ecx
cmp ecx, 0x72e3
jl 0x10022242
xor eax, eax
mov byte [ebp - 4], 6
cmp dword [ebp - 0x40], 0x350e
lea edi, [ebp - 0xcc]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
jge 0x100222f8
mov edx, str.bixybf_vtpcry_iedqdc_awc_trxiqqlm_cebjdi_myqoe_nvgvhef_witdlujue_qibwkkwft_wjrtovef_gpxczkrwk_jhn_mmyc
mov ecx, 0x10081ef8
call fcn.10005908
jmp 0x100222f8
push 4
pop eax
push eax
lea ecx, [ebp - 0x114]
mov dword [ebp - 4], 5
call fcn.10002861
push 3
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 8
call fcn.10002861
mov byte [ebp - 4], 9
mov dword [ebp - 0x2c], ebx
jmp 0x10022339
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x228], 0x62fd41e5
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 2
jl 0x10022328
push 4
mov dword [ebp - 0x2c], ebx
pop edx
jmp 0x10022356
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x114]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], edx
jl 0x10022347
mov dword [ebp - 0x2c], ebx
jmp 0x10022373
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0xf0]
mov dword [eax + ecx*4], 0x4b66
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 3
jl 0x10022360
mov dword [ebp - 0x2c], ebx
jmp 0x10022388
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x50], esi
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jl 0x1002237e
mov dword [ebp - 0x40], 0x31f6
cmp dword [ebp - 0x40], 0x34a0
jle 0x10022418
mov edi, ebx
mov dword [ebp - 0x30], ebx
mov eax, ebx
mov dword [ebp - 0x34], ebx
mov ecx, ebx
mov dword [ebp - 0x28], ebx
cdq
idiv ecx
mov dword [ebp - 0x1c], 0x34a1
sub edi, edx
mov eax, edi
lea ecx, [ebp - 0x288]
cdq
push edx
push eax
call fcn.10003a70
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100223d2
mov eax, dword [eax]
push eax
call fcn.1004bc39
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x288]
call fcn.10003049
inc edi
dec dword [ebp - 0x1c]
jne 0x100223b8
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x34]
inc ecx
mov edi, dword [ebp - 0x30]
mov dword [ebp - 0x28], ecx
cmp ecx, 0x4a76
jl 0x100223ac
inc eax
mov dword [ebp - 0x34], eax
cmp eax, 0x11e5
jl 0x100223a7
inc edi
mov dword [ebp - 0x30], edi
cmp edi, 0x2b7
jl 0x100223a2
mov eax, dword [ebp - 0xf0]
inc dword [eax + 4]
cmp dword [ebp - 0x40], 0x2f08
jge 0x10022435
push str.mhpzow_vja_slxm_oruohxkgv_brlh_fcfbnl_caxy_wjh_rjzld
call fcn.1004bc39
pop ecx
push 4
mov dword [ebp - 4], 9
mov dword [ebp - 0x50], ebx
pop edx
jmp 0x10022457
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x114]
mov dword [eax + ecx*4], 0x11151c3c
inc dword [ebp - 0x50]
cmp dword [ebp - 0x50], edx
jl 0x10022444
lea ecx, [ebp - 0xf0]
call fcn.100028c3
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 5
call fcn.100028c3
push dword [ebp - 0x98]
lea ecx, [ebp - 0x1f4]
call fcn.10003fb5
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x38], 0x9ac7
mov dword [ebp - 0x28], 0x83
cmp dword [ebp - 0x28], 0x1d9
jle 0x1002250f
push 0x1134
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov ecx, ebx
mov dword [ebp - 0x30], ebx
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x1c], ebx
add eax, edi
add eax, ecx
lea ecx, [ebp - 0x240]
cdq
push edx
push eax
call fcn.10003a70
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100224d5
mov eax, dword [eax]
push eax
call fcn.1004bc39
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.10003049
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x823
jl 0x100224b9
inc edi
cmp edi, 0x2eeb
jl 0x100224b4
inc ecx
mov dword [ebp - 0x30], ecx
cmp ecx, 0x757d
jl 0x100224b2
mov dword [ebp - 0x3c], 0xffffffff
cmp dword [ebp - 0x28], 0xfffffce1
jge 0x1002252a
push str.pppb_tifqxqcpg_azjx_qipmndnbp_fkdcijnf_gyotqm_tkk_dgspidk_kvxahdjqz_kpbykq_awvu
call fcn.1004bc39
pop ecx
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x168]
mov dword [ebp - 0x1c], 0x14ba09a1
push esi
call fcn.10002861
mov byte [ebp - 4], 0xf
xor edx, edx
mov dword [ebp - 0x34], 0x6c14
inc edx
mov dword [ebp - 0x20], ebx
jmp 0x1002256a
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x168]
mov dword [eax + ecx*4], 0x989265
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edx
jl 0x10022557
cmp dword [ebp - 0x38], ebx
je 0x10022681
push edx
lea ecx, [ebp - 0xbc]
call fcn.10002861
mov dword [ebp - 0x1c], 0x312b9482
mov dword [ebp - 0x20], ebx
jmp 0x100225a3
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xbc]
mov dword [eax + ecx*4], 8
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 1
jl 0x10022590
mov dword [ebp - 0x38], ebx
jmp 0x10022667
mov dword [ebp - 0x24], 5
mov dword [ebp - 0x24], 0xffffffee
jmp 0x1002260f
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x3c], ebx
jmp 0x10022606
mov dword [ebp - 0x20], 0x76881957
mov dword [ebp - 0x20], ebx
jmp 0x100225fe
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x100225fb
push 0x1423
push 0x1a5f
push 0x2404
call dword [sym.imp.GDI32.dll_LineTo]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jle 0x100225dd
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xfffffffe
je 0x100225d1
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffeb
jge 0x100225c1
cmp dword [ebp - 0x38], 0x272b
jg 0x1002264f
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0xbc]
mov esi, dword [eax]
mov eax, dword [ebp - 0x24]
cmp eax, 1
setle cl
xor edx, edx
cmp ecx, esi
setle dl
xor eax, eax
add edx, esi
cmp edx, 0xfffffff8
setge al
cmp eax, dword [ebp - 0x24]
jg 0x1002264f
xor eax, eax
inc eax
jmp 0x10022651
mov eax, ebx
mov dword [ebp - 0x24], eax
xor ecx, ecx
mov eax, dword [ebp - 0x24]
cmp eax, 0x3ae5d5ec
setne cl
mov dword [ebp - 0x1c], ecx
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0x13
jl 0x100225b1
lea ecx, [ebp - 0xbc]
call fcn.100028c3
jmp 0x1002275f
mov dword [ebp - 0x1c], 0x127420ea
mov dword [ebp - 0x1c], 0x56a42623
mov dword [ebp - 0x178], edx
mov dword [ebp - 0x174], edx
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x16c], edx
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x1002275c
mov dword [ebp - 0x40], 0x1c76
cmp dword [ebp - 0x40], 0x1ec3
jle 0x10022736
mov edi, ebx
mov dword [ebp - 0x28], ebx
mov esi, ebx
mov dword [ebp - 0x1c], ebx
mov ecx, esi
mov dword [ebp - 0x48], edi
mov esi, edi
mov dword [ebp - 0x30], ebx
sar esi, cl
mov edi, ebx
mov ecx, edi
mov eax, esi
sar eax, cl
lea ecx, [ebp - 0x258]
cdq
push edx
push eax
call fcn.10003a70
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100226fa
mov eax, dword [eax]
push eax
call fcn.1004bc39
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x258]
call fcn.10003049
inc edi
cmp edi, 0x477b
jl 0x100226dc
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x28]
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x10e0
jl 0x100226ce
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x13d3
jl 0x100226c9
push 0x102e
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
cmp dword [ebp - 0x40], 0x19b4
jge 0x10022755
push str.erqb_atboqt_bhcw_jxdsw_kupwz_ogb_qwlvls_tpdrnqhj_wpy
call fcn.1004bc39
pop ecx
mov dword [ebp - 4], 0xf
inc dword [ebp - 0x34]
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0xc
call fcn.100028c3
push dword [ebp - 0x8c]
movdqa xmm0, xmmword [0x100737e0]
lea eax, [ebp - 0x204]
push eax
lea eax, [ebp - 0x214]
mov dword [ebp - 0x88], ebx
push eax
push ebx
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x84], ebx
movdqu xmmword [ebp - 0x214], xmm0
mov dword [ebp - 0x80], ebx
call fcn.10002972
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x40], 0x1f4d
cmp dword [ebp - 0x40], 0x21a5
jle 0x10022838
mov edi, ebx
mov dword [ebp - 0x28], ebx
mov esi, ebx
mov dword [ebp - 0x1c], ebx
mov eax, edi
mov dword [ebp - 0x34], ebx
cdq
mov edi, ebx
idiv esi
mov esi, edx
mov ecx, edi
mov eax, esi
shl eax, cl
lea ecx, [ebp - 0x270]
cdq
push edx
push eax
call fcn.10003a70
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100227fc
mov eax, dword [eax]
push eax
call fcn.1004bc39
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x270]
call fcn.10003049
inc edi
cmp edi, 0x7036
jl 0x100227de
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x28]
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x639c
jl 0x100227d2
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x7e11
jl 0x100227cd
mov dword [ebp - 0x3c], 0xfff9
cmp dword [ebp - 0x40], 0x1d0b
jge 0x10022853
push str.jayfp_vzqcy_sjkdi_xdat
call fcn.1004bc39
pop ecx
push 4
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x20], ebx
pop ecx
jmp 0x10022873
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x13c], 5
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x10022862
mov dword [ebp - 0x1c], 0x6f1b
cmp dword [ebp - 0x1c], 0x6f36
jle 0x100228bb
mov esi, ebx
mov edi, ebx
mov eax, esi
mov ecx, 0x10081ef8
cdq
idiv edi
mov eax, edx
cdq
push edx
push eax
call fcn.10003ea0
inc edi
cmp edi, 0x74c4
jl 0x1002288c
inc esi
cmp esi, 0x7757
jl 0x1002288a
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_StartServiceW]
mov dword [ebp - 0x2c], 3
cmp dword [ebp - 0x2c], ebx
jl 0x10022adc
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x38], 6
mov dword [ebp - 0x24], 3
cmp dword [ebp - 0x24], ebx
jl 0x10022ad3
mov edi, dword [ebp - 0x88]
mov dword [ebp - 0x40], edi
push 3
lea ecx, [ebp - 0xa4]
call fcn.10002861
mov dword [ebp - 0x20], 0xfffffffe
mov dword [ebp - 0x20], ebx
jmp 0x1002291e
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xa4]
mov dword [eax + ecx*4], 0x514f
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x1002290b
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov esi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setge dl
add eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x88]
setge cl
add ecx, dword [eax + esi*4]
xor eax, eax
cmp ecx, 0xffffffff
setg al
imul eax, dword [edi + 0xc]
test eax, eax
jne 0x10022a46
cmp dword [ebp - 0x2c], ebx
jne 0x10022a46
mov dword [ebp - 0x30], 0xfffffffc
cmp dword [ebp - 0x130], ebx
jne 0x10022994
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x20], 8
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x38]
cmp eax, 0x58ef
jle 0x10022994
mov eax, ebx
jmp 0x10022997
xor eax, eax
inc eax
mov ecx, dword [ebp - 0x24]
xor edx, edx
mov edi, dword [ebp - 0xa4]
imul ecx, eax
mov eax, dword [ebp - 0x30]
mov esi, dword [edi + 4]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x30]
setg dl
sub edx, 0x65c9
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x28], edx
xor edx, edx
cmp dword [ebp - 0x28], eax
lea eax, [esi + 1]
mov dword [edi + 4], eax
setge dl
imul ecx, esi
cmp ecx, edx
jl 0x10022a07
cmp dword [ebp - 0x30], ebx
je 0x10022a07
push 3
mov dword [ebp - 0x3c], ebx
pop eax
jmp 0x10022a00
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jl 0x100229fd
mov dword [ebp - 0x130], 0xfffffffd
dec dword [ebp - 0x20]
jns 0x100229ee
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], eax
jle 0x100229e6
jmp 0x10022a25
mov dword [ebp - 0x38], ebx
jmp 0x10022a1f
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0xa4]
mov dword [eax + ecx*4], 0x709b
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 3
jl 0x10022a0c
mov edx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x38]
mov edi, dword [ebp - 0x40]
imul ecx, dword [eax + edx*4]
mov eax, dword [ebp - 0x88]
mov dword [eax + esi*4], ecx
jmp 0x10022a9f
mov dword [ebp - 0x34], 0xbf0bb9a6
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
dec eax
je 0x10022a62
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x24], 1
jne 0x10022a75
mov eax, dword [ebp - 0x88]
cmp dword [eax], ebx
jne 0x10022a75
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x130], eax
mov ecx, dword [ebp - 0x2c]
imul ecx, eax
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x3c]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x24]
xor edx, edx
mov dword [ebp - 0x13c], ecx
mov eax, dword [ebp - 0x38]
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setge dl
xor ecx, ecx
cmp eax, edx
setge cl
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0xa4]
call fcn.100028c3
dec dword [ebp - 0x24]
jns 0x100228f2
dec dword [ebp - 0x2c]
jns 0x100228cb
mov byte [ebp - 4], 0x15
cmp dword [ebp - 0x1c], 0x6e38
jge 0x10022b16
mov edx, str.ruyjas_clkpjup_taoxchoc_gqpuae_nmnmiqux_opqok_ucpuxeo_vqvrnx_fhtwg
mov ecx, 0x10081ef8
call fcn.10005908
jmp 0x10022b16
push 7
mov dword [ebp - 4], 0x12
lea ecx, [ebp - 0x88]
pop edi
mov byte [ebp - 4], 0xc
call fcn.100028c3
push 0x5c
pop eax
mov word [ebp - 0x78], ax
lea ecx, [ebp - 0xe4]
xor eax, eax
mov byte [ebp - 0x7c], bl
mov word [ebp - 0x76], ax
mov word [ebp - 0xe4], ax
lea eax, [ebp - 0x78]
push eax
mov byte [ebp - 0x7b], 0x7a
mov dword [ebp - 0xd0], edi
mov dword [ebp - 0xd4], ebx
call fcn.1001e50f
mov byte [ebp - 4], 0x17
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x40], 0x2b18
cmp dword [ebp - 0x40], 0x2cb4
jle 0x10022be7
mov edi, ebx
mov dword [ebp - 0x28], ebx
mov esi, ebx
mov dword [ebp - 0x1c], ebx
lea eax, [esi + edi]
mov esi, 0x75c2
mov dword [ebp - 0x34], eax
mov edi, eax
mov eax, edi
lea ecx, [ebp - 0x2a0]
cdq
push edx
push eax
call fcn.10003a70
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10022bad
mov eax, dword [eax]
push eax
call fcn.1004bc39
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x2a0]
call fcn.10003049
dec edi
dec esi
jne 0x10022b93
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x28]
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x5e3b
jl 0x10022b86
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x65f9
jl 0x10022b81
push 7
pop edi
push 3
lea ecx, [ebp - 0xfc]
call fcn.10002861
mov byte [ebp - 4], 0x18
xor edx, edx
mov dword [ebp - 0x20], 0xfffffff8
inc edx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x1c], 0xddd9cd44
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x1c], 0x80eec299
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], 0xd6273d59
mov dword [ebp - 0x1c], 0xc629c4dd
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x1c], 0x28217c71
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], 2
mov dword [ebp - 0x24], ebx
jmp 0x10022c60
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xfc]
mov dword [eax + ecx*4], 0x256915a1
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x10022c4d
mov dword [ebp - 0x24], ebx
jmp 0x10022c78
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x14c], edx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10022c6b
mov eax, dword [ebp - 0xfc]
mov eax, dword [eax + 8]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x20], ebx
jmp 0x10022cef
mov dword [ebp - 0x28], 6
lea ecx, [ebp - 0x1b8]
mov dword [ebp - 0x28], 8
mov dword [ebp - 0x28], 0xd72276b
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x28], 0xc9a57b5b
mov dword [ebp - 0x28], edx
push 3
call fcn.10002861
mov dword [ebp - 0x3c], ebx
jmp 0x10022cd5
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1b8]
mov dword [eax + ecx*4], 0xbcd76ce4
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 3
jl 0x10022cc2
inc dword [ebp - 0x1c]
lea ecx, [ebp - 0x1b8]
call fcn.100028c3
dec dword [ebp - 0x20]
push 1
pop edx
cmp dword [ebp - 0x20], 0xfffffff5
jle 0x10022c8e
lea ecx, [ebp - 0xfc]
call fcn.100028c3
cmp dword [ebp - 0x40], 0x291f
jge 0x10022d14
push str.ucdfsj_bkbimade_swzz_lwhm_jhvpe_izudzhn_roetnrp_lqwnwnofn_tproweb_azrksxv_nlx_qahpx_biozlh_frpilvm
call fcn.1004bc39
pop ecx
mov dword [ebp - 4], 0x17
mov dword [ebp - 0x40], 0x142f
cmp dword [ebp - 0x40], 0x1630
jle 0x10022d75
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x1c], 0x250f
mov esi, dword [ebp - 0x34]
mov edi, ebx
mov eax, edi
mov ecx, 0x10081ef8
or eax, esi
cdq
push edx
push eax
call fcn.10003ea0
inc edi
cmp edi, 0x4089
jl 0x10022d3d
mov esi, dword [ebp - 0x28]
add dword [ebp - 0x34], esi
dec dword [ebp - 0x1c]
jne 0x10022d38
inc esi
mov dword [ebp - 0x28], esi
cmp esi, 0x2380
jl 0x10022d2e
push ebx
call dword [sym.imp.USER32.dll_DestroyMenu]
mov byte [ebp - 4], 0x1b
cmp dword [ebp - 0x40], 0x1179
jge 0x10022daf
mov edx, str.yfunjv_nqmiwh_soear_dfasvgf_ejvuddnci_hwga_xssvywv_ylyjjx_crzgxpy_rhtms_uomlfhgk_qfbh_uaiyldgg
mov ecx, 0x10081ef8
call fcn.10005908
jmp 0x10022daf
mov dword [ebp - 4], 0x17
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x44], 0xf5540d7f
push 2
call fcn.10002861
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x20], ebx
jmp 0x10022de2
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x184]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x10022dd3
mov dword [ebp - 0x44], 0xfffffffc
cmp dword [ebp - 0x44], 0x1b
jne 0x10022eaa
mov byte [ebp - 0x15], bl
mov dword [ebp - 0x1c], 0x4615
cmp dword [ebp - 0x1c], 0x46ea
jle 0x10022e7a
push ebx
push 0x2239
push ebx
push 0xee5
call dword [sym.imp.GDI32.dll_SetWinMetaFileBits]
mov ecx, ebx
mov dword [ebp - 0x30], ebx
mov edi, ebx
mov esi, ebx
lea eax, [esi + edi]
xor eax, ecx
lea ecx, [ebp - 0x2d0]
cdq
push edx
push eax
call fcn.10003a70
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10022e44
mov eax, dword [eax]
push eax
call fcn.1004bc39
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x2d0]
call fcn.10003049
mov ecx, dword [ebp - 0x30]
inc esi
cmp esi, 0x3782
jl 0x10022e27
inc edi
cmp edi, 0x3ad5
jl 0x10022e25
inc ecx
mov dword [ebp - 0x30], ecx
cmp ecx, 0x17d8
jl 0x10022e23
cmp byte [ebp - 0x15], 0
je 0x10022e87
push ebx
call dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
cmp dword [ebp - 0x1c], 0x43f1
jge 0x10022e9b
push str.vnuflq_upzdam_isdiq
call fcn.1004bc39
pop ecx
mov dword [ebp - 4], 0x1d
inc dword [ebp - 0x44]
jmp 0x10022def
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 0x17
call fcn.100028c3
push 0x5f
pop eax
push 2
pop esi
push 7
mov byte [ebp - 0x64], bl
mov ecx, ebx
mov dword [ebp - 0x63], 0x1f4d04e6
mov word [ebp - 0x5f], 0x6b3
mov word [ebp - 0x58], ax
pop edi
cmp esi, 2
jne 0x10022f7a
push 5
pop ecx
push ecx
mov dword [ebp - 0x1c], 0x384
cmp dword [ebp - 0x1c], 0x5cc
pop esi
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x44], esi
jle 0x10022fa1
mov esi, ebx
mov dword [ebp - 0x40], ebx
mov edi, ebx
mov dword [ebp - 0x28], ebx
mov eax, esi
mov ecx, ebx
cdq
idiv edi
mov dword [ebp - 0x1c], ecx
mov eax, edx
mov dword [ebp - 0x30], eax
cdq
mov esi, 0x75c3
idiv ecx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x48], edx
mov edi, edx
mov eax, ebx
mov ecx, 0x10081ef8
cdq
push edx
push eax
call fcn.10003ea0
add ebx, edi
dec esi
jne 0x10022f29
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
inc ecx
mov dword [ebp - 0x1c], ecx
push esi
pop ebx
cmp ecx, 0xd48
jl 0x10022f19
mov edi, dword [ebp - 0x28]
mov esi, dword [ebp - 0x40]
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x7aa2
jl 0x10022f0a
inc esi
mov dword [ebp - 0x40], esi
cmp esi, 0x414b
jl 0x10022f05
mov esi, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x4c]
push 7
pop edi
jmp 0x10022fa1
movzx edx, byte [ebp + esi - 0x63]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x66]
movzx eax, word [ebp + eax*2 - 0x58]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x64]
mov word [ebp + eax*2 - 0x58], cx
mov ecx, ebx
add esi, 2
cmp esi, edi
jb 0x10022ed8
mov dword [ebp - 0x48], 0x21b7
cmp dword [ebp - 0x48], 0x23a4
jle 0x10023044
mov dword [ebp - 0x34], ebx
mov edi, ebx
mov dword [ebp - 0x40], ebx
mov esi, ebx
mov dword [ebp - 0x28], ebx
mov eax, edi
mov dword [ebp - 0x1c], 0x37ba
cdq
idiv esi
mov edi, dword [ebp - 0x34]
mov esi, edx
mov eax, edi
lea ecx, [ebp - 0x2f4]
or eax, esi
cdq
push edx
push eax
call fcn.10003a70
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10022ffa
mov eax, dword [eax]
push eax
call fcn.1004bc39
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x2f4]
call fcn.10003049
dec esi
dec dword [ebp - 0x1c]
jne 0x10022fde
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x40]
inc esi
mov dword [ebp - 0x28], esi
cmp esi, 0x3499
jl 0x10022fcd
inc edi
mov dword [ebp - 0x40], edi
cmp edi, 0x606a
jl 0x10022fc8
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp eax, 0x3900
jl 0x10022fc3
push 7
pop edi
xor eax, eax
cmp dword [ebp - 0x48], 0x2026
mov word [ebp - 0x56], ax
jge 0x1002305e
push str.mqyghiej_iunzylcuc_fchackym_gzjkwlw_xqxs_wpi_agzgx_gmmmkpcgr
call fcn.1004bc39
pop ecx
mov dword [ebp - 4], 0x17
lea ecx, [ebp - 0x1dc]
xor eax, eax
mov dword [ebp - 0x1c8], edi
mov word [ebp - 0x1dc], ax
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 0x1cc], ebx
call fcn.1001e50f
push 3
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x24
call fcn.10002861
mov byte [ebp - 4], 0x25
xor edx, edx
mov dword [ebp - 0x20], 0xfffffff8
inc edx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x1c], 0xddd9cd44
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x1c], 0x80eec299
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x1c], 0xd6273d59
mov dword [ebp - 0x1c], 0xc629c4dd
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x1c], 0x28217c71
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], 2
mov dword [ebp - 0x24], ebx
jmp 0x10023106
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x108]
mov dword [eax + ecx*4], 0x256915a1
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x100230f3
mov dword [ebp - 0x24], ebx
jmp 0x1002311e
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x15c], edx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], edx
jl 0x10023111
mov eax, dword [ebp - 0x108]
mov eax, dword [eax + 8]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x20], ebx
jmp 0x10023195
mov dword [ebp - 0x28], 6
lea ecx, [ebp - 0x190]
mov dword [ebp - 0x28], 8
mov dword [ebp - 0x28], 0xd72276b
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x28], 0xc9a57b5b
mov dword [ebp - 0x28], edx
push 3
call fcn.10002861
mov dword [ebp - 0x3c], ebx
jmp 0x1002317b
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x190]
mov dword [eax + ecx*4], 0xbcd76ce4
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 3
jl 0x10023168
inc dword [ebp - 0x1c]
lea ecx, [ebp - 0x190]
call fcn.100028c3
dec dword [ebp - 0x20]
push 1
pop edx
cmp dword [ebp - 0x20], 0xfffffff5
jle 0x10023134
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x24
call fcn.100028c3
mov dword [ebp - 0x58], ebx
push dword [ebp - 0xd4]
cmp dword [ebp - 0xd0], 8
lea eax, [ebp - 0xe4]
push ebx
cmovae eax, dword [ebp - 0xe4]
lea ecx, [ebp - 0x1f4]
push eax
call fcn.10023434
cmp eax, 0xffffffff
je 0x100231f3
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x1dc]
push ecx
push 1
push eax
lea ecx, [ebp - 0x1f4]
call fcn.10005e85
jmp 0x100231ad
mov ecx, dword [ebp - 0x90]
lea eax, [ebp - 0x1f4]
push eax
lea edx, [ebp - 0x1a8]
call fcn.100234d7
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x1dc]
call fcn.1000430d
push ebx
push 1
lea ecx, [ebp - 0xe4]
call fcn.1000430d
push ebx
push 1
lea ecx, [ebp - 0x1f4]
call fcn.1000430d
push ebx
push 1
lea ecx, [ebp - 0x1a8]
call fcn.1000430d
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x90]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret