Function at 0x10001b65
Capabilities:
Authenticate hmac
Query or enumerate registry value

Disassembly:
mov eax, 0x100649ef
call fcn.10064328
sub esp, 0x348
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
xor ebx, ebx
mov dword [ebp - 0x74], ecx
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x20], 0xfffffffd
push 3
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x228], ebx
call fcn.100038f5
xor esi, esi
inc esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x1c], ebx
jmp 0x10001bba
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x150]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10001bab
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], 0xffffffff
jg 0x10001c8d
mov dword [ebp - 0x18], 6
mov dword [ebp - 0x28], 0x8593f9be
mov dword [ebp - 0x1c], ebx
jmp 0x10001bf7
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x324], 0xca3eaa3e
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10001be6
mov dword [ebp - 0x18], 0x10
jmp 0x10001c23
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], bl
je 0x10001c20
push ebx
push ebx
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SelectPalette]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x18
jl 0x10001c06
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 2
jg 0x10001c85
mov edx, dword [ebp - 0x150]
mov dword [ebp - 0x1c], 0xc96c7979
mov dword [ebp - 0x30], 7
inc dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x2c], 0xfffffff7
sbb eax, eax
neg eax
imul eax, dword [ebp - 0x1c]
cmp eax, 0x35b6
jg 0x10001c6f
mov ecx, esi
cmp dword [ebp - 0x1c], ebx
jne 0x10001c71
mov ecx, ebx
mov eax, dword [edx + 8]
add eax, ecx
mov dword [ebp - 0x324], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10001c38
dec dword [ebp - 0x20]
jmp 0x10001bc9
lea ecx, [ebp - 0x150]
call fcn.10003978
mov dword [ebp - 0x20], 0xfff9
xor edx, edx
mov dword [ebp - 0x28], 0x2aa6
inc edx
mov dword [ebp - 0x18], 0xfffffff6
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x34], 0xd53d2ae4
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x3c], 0x493a
mov dword [ebp - 0x1c], ebx
jmp 0x10001ceb
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x114], 0x4e5477a
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10001cda
mov eax, dword [ebp - 0x20]
dec eax
neg eax
sbb eax, eax
inc eax
neg eax
jne 0x10001d0b
mov eax, dword [ebp - 0x18]
mov ecx, ebx
imul eax, dword [ebp - 0x28]
test eax, eax
je 0x10001d0d
mov ecx, edx
mov eax, dword [ebp - 0x30]
sub ecx, eax
xor eax, eax
cmp ecx, 0xffffffff
setle al
xor ecx, ecx
cmp eax, 0xe6b6cd3
setg cl
add ecx, 0xffff
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x38]
cmp edx, eax
sbb eax, eax
inc eax
imul eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
mov byte [ebp - 0x21], bl
je 0x10001d6c
cmp byte [ebp - 0x21], bl
je 0x10001db5
push 0x8fa
push 0x1e2f
push ebx
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.USER32.dll_DrawEdge]
jmp 0x10001db2
cmp byte [ebp - 0x21], bl
je 0x10001db5
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
push 0xe15
push 0xfeb
push 0x15cc
call edi
mov esi, dword [sym.imp.USER32.dll_GetDC]
push eax
call esi
push eax
push 0x228a
push 0x168
push 0x170f
push 0x3f2
call edi
push eax
call esi
push eax
call dword [sym.imp.GDI32.dll_BitBlt]
xor edx, edx
inc edx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x38], 0x8e6b
sub eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x20]
jle 0x10001e6e
cmp dword [ebp - 0x18], ebx
je 0x10001e6e
mov dword [ebp - 0x114], edx
lea ecx, [ebp - 0x240]
push edx
call fcn.100038f5
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x234]
mov dword [ebp - 0x34], ebx
push 2
call fcn.100038f5
xor esi, esi
mov dword [ebp - 0x34], 0x5ab171c2
mov dword [ebp - 0x18], ebx
inc esi
jmp 0x10001e29
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x240]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10001e1a
mov dword [ebp - 0x18], ebx
jmp 0x10001e46
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x234]
mov dword [eax + ecx*4], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10001e33
dec dword [ebp - 0x3c]
lea ecx, [ebp - 0x234]
call fcn.10003978
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x240]
call fcn.10003978
xor edx, edx
inc edx
jmp 0x10001e93
mov dword [ebp - 0x114], ebx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x20], 0xb
jmp 0x10001e8d
mov dword [ebp - 0x34], 2
dec dword [ebp - 0x3c]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x36
jle 0x10001e80
mov byte [ebp - 0x70], dl
mov dword [ebp - 0x6f], 0x303024d
mov dword [ebp - 0x6b], 0x6dfc70f
mov dword [ebp - 0x67], 0x3300533
mov dword [ebp - 0x63], 0x3040e
mov byte [ebp - 0x5f], 0x26
mov dword [ebp - 0x28], 0x399841b3
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x28], 0x10
jl 0x10002150
mov dword [ebp - 0x38], 0x57102d14
lea ecx, [ebp - 0x21c]
push 3
call fcn.100038f5
xor esi, esi
inc esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x34], 0xfffffffb
mov dword [ebp - 0x20], 0x37a4
cmp dword [ebp - 0x20], 0x3a5a
jle 0x10001f5e
mov eax, ebx
mov dword [ebp - 0x1c], ebx
mov edi, ebx
mov dword [ebp - 0x38], ebx
mov esi, ebx
mov dword [ebp - 0x3c], ebx
add eax, edi
mov dword [ebp - 0x34], ebx
and eax, esi
mov edi, ebx
mov dword [ebp - 0x30], eax
mov esi, eax
mov eax, esi
mov ecx, 0x10081bf8
xor eax, edi
cdq
push edx
push eax
call fcn.1000377e
inc edi
cmp edi, 0xa53
jl 0x10001f18
mov esi, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x38]
inc esi
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x3c], esi
cmp esi, 0x644d
jl 0x10001f0a
inc edi
mov dword [ebp - 0x38], edi
cmp edi, 0x70fb
jl 0x10001f05
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x2611
jl 0x10001f00
mov byte [ebp - 4], 2
cmp dword [ebp - 0x20], 0x371e
jge 0x10001f7a
mov edx, str.lnivozgpg_dfhsxfx_gmyux_bknfqp_cveorzki_dhmtp_oprupom_asusctq
mov ecx, 0x10081bf8
call fcn.100059cc
xor edx, edx
inc edx
mov dword [ebp - 4], edx
mov dword [ebp - 0x1c], ebx
jmp 0x10001fb9
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x21c]
mov dword [eax + ecx*4], 0x3843046b
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10001fa6
mov dword [ebp - 0x38], 0xffffffe9
cmp dword [ebp - 0x38], 0xfffffff4
jg 0x10002139
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x34], 0x7383cc4
mov dword [ebp - 0x1c], ebx
jmp 0x10001ff1
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x4c], 0xfc520ea
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10001fe3
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 2
jg 0x10002131
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], 2
jg 0x10002129
push edx
lea ecx, [ebp - 0xd0]
call fcn.100038f5
mov byte [ebp - 4], 4
mov dword [ebp - 0x34], 6
mov dword [ebp - 0x2c], 0x3f50
cmp dword [ebp - 0x2c], 0x424c
jle 0x1000206b
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x3c], 0x483a
mov eax, edi
mov ecx, 0x10081bf8
cdq
push edx
push eax
call fcn.1000377e
add edi, esi
dec dword [ebp - 0x3c]
jne 0x1000204c
inc esi
cmp esi, 0x553
jl 0x10002043
xor edx, edx
mov dword [ebp - 0x1c], ebx
inc edx
jmp 0x10002086
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xd0]
mov dword [eax + ecx*4], 0xc865b49d
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x10002073
mov byte [ebp - 4], 5
cmp dword [ebp - 0x2c], 0x3ede
jge 0x100020c8
mov edx, str.atctc_rdligjuw_tqxyrbnri_kcctwt_pge_yoeybnt_yczgdvom_hoayhasx_dxueqh_laahnyb
mov ecx, 0x10081bf8
call fcn.100059cc
jmp 0x100020c5
xor edx, edx
inc edx
mov dword [ebp - 4], 4
mov eax, dword [ebp - 0xd0]
mov dword [eax], 2
mov dword [ebp - 0x34], 0x9b2e4145
mov dword [ebp - 0x2c], 0xc7e43439
dec dword [ebp - 0x2c]
mov eax, dword [ebp - 0xd0]
dec dword [eax]
jns 0x100020db
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10002110
push edx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetSystemMenu]
xor edx, edx
inc edx
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], dl
call fcn.10003978
inc dword [ebp - 0x20]
xor edx, edx
inc edx
jmp 0x10002010
inc dword [ebp - 0x18]
jmp 0x10001ff9
inc dword [ebp - 0x38]
jmp 0x10001fc6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x21c]
call fcn.10003978
inc dword [ebp - 0x28]
jmp 0x10001ec0
mov dl, byte [ebp - 0x6f]
movzx esi, byte [ebp - 0x70]
mov al, dl
or al, 0x21
mov dword [ebp - 0x28], ebx
and dl, 0x21
movzx ecx, al
add esi, esi
movzx eax, dl
sub cx, ax
push 2
pop edi
mov word [ebp + esi - 0x124], cx
add esi, edi
push 2
lea ecx, [ebp - 0x1a4]
call fcn.100038f5
mov dword [ebp - 0x18], ebx
jmp 0x1000219e
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1a4]
mov dword [eax + ecx*4], 0xe0a8eac8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1000218b
mov dword [ebp - 0x18], ebx
jmp 0x100021ba
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x10c], 0xb6f65e79
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x100021a9
mov edx, dword [ebp - 0x1a4]
xor eax, eax
mov dword [edx], 0xfffffffa
cmp dword [edx + 4], 0x29729cf3
setne al
xor ecx, ecx
cmp eax, dword [edx + 4]
mov eax, dword [ebp - 0x10c]
setl cl
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x108]
sub edx, eax
mov eax, dword [ebp - 0x108]
imul edx, ecx
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x108], ecx
lea ecx, [ebp - 0x1a4]
call fcn.10003978
cmp edi, esi
jne 0x10002226
movzx eax, byte [ebp + edi - 0x70]
dec edi
add edi, eax
lea ecx, [eax + 1]
mov dword [ebp - 0x28], ecx
jmp 0x10002255
movzx edx, byte [ebp + edi - 0x6f]
mov eax, edi
sub eax, dword [ebp - 0x28]
mov dword [ebp - 0x28], ebx
movzx eax, byte [ebp + eax - 0x72]
movzx eax, word [ebp + eax*2 - 0x124]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + edi - 0x70]
mov word [ebp + eax*2 - 0x124], cx
add edi, 2
cmp edi, 0x12
jb 0x10002179
mov dword [ebp - 0x18], 0x7647f1a9
xor esi, esi
inc esi
xor edx, edx
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x2c], 0x7d2a
mov dword [ebp - 0x34], 0xfff7
mov dword [ebp - 0x2c], 6
mov dword [ebp - 0x2c], 0xfffffff9
mov dword [ebp - 0x30], 0xffffffff
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
setle dl
xor ecx, ecx
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
cmp edx, eax
setle cl
add ecx, dword [ebp - 0x18]
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
je 0x100022ca
cmp dword [ebp - 0x20], ebx
jne 0x100022cc
mov esi, ebx
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp esi, eax
mov eax, dword [ebp - 0x20]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setne dl
xor ecx, ecx
cmp edx, eax
setle cl
add ecx, 0xcd50
mov dword [ebp - 0x34], ecx
xor ecx, ecx
cmp dword [ebp - 0x34], 0x9ab83eb6
setne cl
xor eax, eax
cmp ecx, 0xfffffffd
setne al
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x30], eax
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x1000233c
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xor eax, eax
xor edx, edx
mov word [ebp - 0x116], ax
inc edx
mov dword [ebp - 0x18], 0xce125d16
mov dword [ebp - 0x20], 0xfffffffc
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], 3
jge 0x10002375
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1e0], edx
inc dword [ebp - 0x1c]
jmp 0x10002360
mov dword [ebp - 0x18], 2
cmp dword [ebp - 0x18], ebx
jl 0x100023a1
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x1e0], ebx
je 0x10002397
mov eax, edx
cmp dword [ebp - 0x1d8], ebx
jne 0x10002399
mov eax, ebx
mov dword [ebp - 0x20], eax
dec dword [ebp - 0x18]
jns 0x10002381
mov dword [ebp - 0x20], 0xfffffff7
jmp 0x10002465
mov dword [ebp - 0x2c], 0xfffffff8
mov dword [ebp - 0x38], 0x860bc23c
mov dword [ebp - 0x3c], 0xd2ae4566
mov dword [ebp - 0x18], 0xffffffe5
jmp 0x10002458
mov dword [ebp - 0x28], 0xda8afc1d
mov eax, dword [ebp - 0x28]
neg eax
jne 0x10002440
cmp dword [ebp - 0x20], ebx
jne 0x10002409
mov eax, dword [ebp - 0x2c]
mov edx, 0xd9d749f6
imul eax, dword [ebp - 0x18]
xor ecx, ecx
mov esi, ebx
imul eax, eax, 0x56e3
sub edx, eax
mov eax, dword [ebp - 0x2c]
cmp edx, eax
setl cl
xor edx, edx
inc edx
cmp ecx, dword [ebp - 0x38]
jg 0x1000240b
mov esi, edx
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp esi, eax
setle cl
cmp ecx, dword [ebp - 0x20]
jle 0x10002421
mov esi, edx
cmp dword [ebp - 0x28], ebx
jne 0x10002423
mov esi, ebx
mov eax, dword [ebp - 0x1e0]
xor ecx, ecx
cmp esi, eax
setg cl
mov dword [ebp - 0x3c], ecx
mov ecx, ebx
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x3c]
test eax, eax
je 0x10002442
mov ecx, edx
xor eax, eax
cmp ecx, edx
push 0
setne al
sub eax, dword [ebp - 0x38]
pop eax
sets al
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x18
je 0x100023ce
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x1c
jne 0x100023ad
xor eax, eax
mov dword [ebp - 0x26c], ebx
push 7
pop esi
mov word [ebp - 0x27c], ax
lea ecx, [ebp - 0x27c]
lea eax, [ebp - 0x124]
mov dword [ebp - 0x268], esi
push eax
call fcn.10003d6e
mov dword [ebp - 4], esi
lea edi, [ebp - 0x124]
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x18], 0xce125d16
xor edi, edi
mov dword [ebp - 0x20], 0xfffffffc
inc edi
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], 3
jge 0x100024d8
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x174], edi
inc dword [ebp - 0x1c]
jmp 0x100024c3
mov dword [ebp - 0x18], 2
cmp dword [ebp - 0x18], ebx
jl 0x10002504
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x174], ebx
je 0x100024fa
mov eax, edi
cmp dword [ebp - 0x16c], ebx
jne 0x100024fc
mov eax, ebx
mov dword [ebp - 0x20], eax
dec dword [ebp - 0x18]
jns 0x100024e4
mov dword [ebp - 0x20], 0xfffffff7
cmp dword [ebp - 0x20], 0x1c
je 0x1000268a
mov dword [ebp - 0x1c], 0xfffffff8
mov dword [ebp - 0x38], 0x860bc23c
mov dword [ebp - 0x2c], 0xd2ae4566
mov dword [ebp - 0x30], 0x2f11
cmp dword [ebp - 0x30], 0x2fd8
jle 0x100025a2
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], 0x542f
mov esi, ebx
mov edi, ebx
mov ebx, dword [ebp - 0x28]
mov ecx, edi
mov eax, esi
sar eax, cl
mov ecx, 0x10081bf8
xor eax, ebx
cdq
push edx
push eax
call fcn.1000377e
inc edi
cmp edi, 0x5c04
jl 0x1000254e
inc esi
push 0
pop ebx
cmp esi, 0x6c0c
jl 0x10002549
mov eax, dword [ebp - 0x3c]
add dword [ebp - 0x28], eax
dec dword [ebp - 0x2c]
jne 0x10002547
inc eax
mov dword [ebp - 0x3c], eax
cmp eax, 0x3883
jl 0x1000253d
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EndDialog]
xor edi, edi
push 7
inc edi
pop esi
mov dword [ebp - 0x18], 0xffffffe5
jmp 0x10002635
mov dword [ebp - 0x28], 0xda8afc1d
mov eax, dword [ebp - 0x28]
neg eax
jne 0x1000261d
cmp dword [ebp - 0x20], ebx
jne 0x100025e6
mov eax, dword [ebp - 0x1c]
mov edx, 0xd9d749f6
imul eax, dword [ebp - 0x18]
xor ecx, ecx
imul eax, eax, 0x56e3
sub edx, eax
mov eax, dword [ebp - 0x1c]
cmp edx, eax
mov edx, ebx
setl cl
cmp ecx, dword [ebp - 0x38]
jg 0x100025e8
mov edx, edi
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
setle cl
cmp ecx, dword [ebp - 0x20]
jle 0x100025fe
mov edx, edi
cmp dword [ebp - 0x28], ebx
jne 0x10002600
mov edx, ebx
mov eax, dword [ebp - 0x174]
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x2c], ecx
mov ecx, ebx
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x2c]
test eax, eax
je 0x1000261f
mov ecx, edi
xor eax, eax
cmp ecx, edi
push 0
setne al
sub eax, dword [ebp - 0x38]
pop eax
sets al
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x18
je 0x100025ae
mov byte [ebp - 4], 8
cmp dword [ebp - 0x30], 0x2d1a
jge 0x1000267f
mov edx, str.cvchih_ofxwz_spc_ocijxd_xzg_nzexb_pnrag_xzwmhu_jeuigyzy_kizcefgmn_rhhiyoqv_zwjwke_ztvy
mov ecx, 0x10081bf8
call fcn.100059cc
jmp 0x1000267f
mov dword [ebp - 4], esi
inc dword [ebp - 0x20]
jmp 0x1000250b
push dword [ebp - 0x9c]
lea ecx, [ebp - 0x294]
call fcn.10003893
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x30], 0x3999
cmp dword [ebp - 0x30], 0x3c1d
jle 0x100026db
mov esi, ebx
mov edi, ebx
mov ecx, edi
mov eax, esi
shl eax, cl
mov ecx, 0x10081bf8
cdq
push edx
push eax
call fcn.1000377e
inc edi
cmp edi, 0x304c
jl 0x100026b3
inc esi
cmp esi, 0x352c
jl 0x100026b1
xor edi, edi
inc edi
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x30], 0x380c
jge 0x10002718
mov edx, str.wrcj_ozw_hkc_apkfkbka_rgfbtaej_vpo_jisekgty_zta_pvbnpmiy_clotqaxsj_elch_ypo_xekz_hpfe
mov ecx, 0x10081bf8
call fcn.100059cc
jmp 0x10002718
mov dword [ebp - 4], 0xa
lea ecx, [ebp - 0xb4]
mov dword [ebp - 0x18], 0x60477862
push 2
call fcn.100038f5
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x1c], 0x2053
push 4
call fcn.100038f5
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x20], 0xfffffff8
mov dword [ebp - 0x18], ebx
jmp 0x1000276e
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xb4]
mov dword [eax + ecx*4], 0x1eb64d0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1000275b
mov dword [ebp - 0x18], ebx
jmp 0x1000278c
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xa8]
mov dword [eax + ecx*4], 0xd97867a7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10002779
mov dword [ebp - 0x18], 0x17
cmp dword [ebp - 0x18], 0xe
jg 0x10002900
mov esi, dword [ebp - 0xb4]
push dword [ebp - 0x4c]
movdqa xmm0, xmmword [0x100743a0]
lea eax, [ebp - 0x2d4]
push eax
lea eax, [ebp - 0x2e4]
mov dword [ebp - 0x28], 0xac3d
push eax
push ebx
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x98], ebx
movdqu xmmword [ebp - 0x2e4], xmm0
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x90], ebx
call fcn.10006116
push 3
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0xf
call fcn.100038f5
mov dword [ebp - 0x20], ebx
jmp 0x10002818
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xe8]
mov dword [eax + ecx*4], 0x2c298c24
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10002805
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov edx, dword [esi + 4]
dec eax
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, edx
setge cl
xor eax, eax
cmp ecx, edx
setle al
cmp dword [ebp - 0x28], eax
jl 0x10002847
mov eax, edi
cmp dword [esi + 4], ebx
jne 0x10002849
mov eax, ebx
xor ecx, ecx
cmp eax, 0xffffffff
setle cl
xor edx, edx
imul ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0xa8]
setg dl
cmp edi, edx
mov dword [eax], edx
mov eax, dword [ebp - 0x28]
sbb ecx, ecx
neg ecx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setg dl
xor ecx, ecx
cmp eax, edx
setne cl
sub ecx, dword [ebp - 0x1c]
jne 0x1000289c
mov eax, dword [ebp - 0xb4]
cmp dword [eax], ebx
jne 0x1000289c
mov eax, dword [ebp - 0xa8]
mov edx, ebx
cmp dword [eax], ebx
je 0x1000289e
mov edx, edi
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x98]
mov dword [eax + 8], ecx
lea ecx, [ebp - 0xe8]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0xe8]
mov dword [eax], edi
cmp dword [ebp - 0x1c], ebx
jne 0x100028f0
call fcn.10003978
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0xe
call fcn.10003978
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xe
jle 0x100027a9
jmp 0x10002900
call fcn.10003978
lea ecx, [ebp - 0x98]
call fcn.10003978
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x20]
cmp eax, 0xffff
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp - 0xb4]
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, dword [esi]
setl cl
sub edx, ecx
je 0x1000292a
mov edx, edi
cmp dword [esi + 4], ebx
jne 0x1000292c
mov edx, ebx
mov eax, dword [ebp - 0xa8]
xor ecx, ecx
cmp dword [eax + 0xc], edx
setne cl
mov dword [eax], ecx
xor eax, eax
cmp ecx, 0xb4499c77
sete al
xor edx, edx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
lea ecx, [ebp - 0xa8]
setl dl
mov dword [ebp - 0x18], edx
call fcn.10003978
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 0xa
call fcn.10003978
mov dword [ebp - 0x30], 0xfffffff9
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x1c], ebx
jmp 0x10002995
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x40], 7
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x10002987
mov dword [ebp - 0x40], ebx
jmp 0x10002a28
mov dword [ebp - 0x1c], ebx
jmp 0x100029b8
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1d4], 0xfffffffa
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x100029a7
mov eax, dword [ebp - 0x1cc]
cmp eax, dword [ebp - 0x30]
jle 0x100029d0
mov ecx, edi
cmp dword [ebp - 0x40], ebx
jne 0x100029d2
mov ecx, ebx
mov eax, dword [ebp - 0x30]
imul eax, ecx
imul edx, eax, 0xffff
mov eax, dword [ebp - 0x40]
add edx, 2
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
mov eax, dword [ebp - 0x1d4]
setg cl
add eax, ecx
neg eax
cmp edi, eax
mov eax, dword [ebp - 0x40]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x1d0]
setge dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x40]
setge cl
neg eax
sbb eax, eax
inc eax
imul eax, ecx
mov dword [ebp - 0x34], eax
dec dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xffffffec
jne 0x100029a2
push dword [ebp - 0x4c]
movdqa xmm0, xmmword [0x10074370]
lea eax, [ebp - 0x2e4]
push eax
lea eax, [ebp - 0x2f4]
mov dword [ebp - 0x8c], ebx
push eax
push ebx
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x88], ebx
movdqu xmmword [ebp - 0x2f4], xmm0
mov dword [ebp - 0x84], ebx
call fcn.10006116
mov dword [ebp - 0x20], 0xfffffff9
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x1c], ebx
jmp 0x10002a95
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xb8], 0x59b504db
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x10002a84
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10002b2d
mov dword [ebp - 0x1c], ebx
jmp 0x10002ac0
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x2b4], 0xfffffffc
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10002aaf
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ecx + eax*4]
add edx, dword [ecx + esi*4]
xor ecx, ecx
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x20]
mov esi, dword [ebp - 0x8c]
cmp dword [esi + eax*4], edx
sete cl
xor eax, eax
cmp ecx, dword [esi]
setge al
xor ecx, ecx
cmp eax, 0x351a938
setge cl
xor edx, edx
cmp ecx, 0xffff
setne dl
xor eax, eax
cmp dword [esi + edi*4], edx
sete al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x2b0]
mov dword [ebp - 0xb8], eax
dec dword [ebp - 0x20]
jns 0x10002aaa
xor edi, edi
inc edi
lea ecx, [ebp - 0x8c]
call fcn.10003978
push 0x5c
pop eax
push 2
mov byte [ebp - 0x5c], bl
mov ecx, ebx
mov dword [ebp - 0x5b], 0xb07a0491
mov word [ebp - 0x57], 0xa3f
mov word [ebp - 0x50], ax
pop esi
cmp esi, 2
jne 0x10002b60
push 5
pop ecx
push ecx
pop esi
jmp 0x10002b89
movzx edx, byte [ebp + esi - 0x5b]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x5e]
movzx ecx, word [ebp + eax*2 - 0x50]
mov eax, ecx
and eax, edx
add eax, eax
sub ecx, eax
movzx eax, byte [ebp + esi - 0x5c]
add ecx, edx
mov word [ebp + eax*2 - 0x50], cx
mov ecx, ebx
add esi, 2
cmp esi, 7
jb 0x10002b54
xor eax, eax
lea ecx, [ebp - 0x180]
mov word [ebp - 0x4e], ax
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], 0xd3e9
push 2
call fcn.100038f5
push 2
mov byte [ebp - 4], 0x10
pop edx
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x18], ebx
jmp 0x10002bcd
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xf4], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10002bc0
mov dword [ebp - 0x18], ebx
jmp 0x10002be9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2c4], 0xbc9fa8bc
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10002bd8
mov dword [ebp - 0x18], ebx
jmp 0x10002c03
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x180]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10002bf4
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10002c22
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 2
pop edx
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], ebx
jl 0x10002f2d
push edi
lea ecx, [ebp - 0x168]
call fcn.100038f5
push 2
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x11
call fcn.100038f5
push edi
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x12
call fcn.100038f5
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x18c]
mov dword [ebp - 0x3c], 0xfffffff8
push 3
call fcn.100038f5
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x2c], 0x28e8
cmp dword [ebp - 0x2c], 0x2b5a
jle 0x10002d10
mov eax, ebx
mov dword [ebp - 0x38], ebx
mov esi, ebx
mov dword [ebp - 0x30], ebx
mov ecx, esi
mov edx, ebx
shl eax, cl
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x34], eax
mov esi, ebx
mov eax, edx
cdq
idiv esi
mov eax, dword [ebp - 0x34]
mov ecx, edx
shl eax, cl
lea ecx, [ebp - 0x33c]
cdq
push edx
push eax
call fcn.10001b14
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10002cc7
mov eax, dword [eax]
push eax
call fcn.1004c11f
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x33c]
call fcn.10003c82
mov edx, dword [ebp - 0x28]
inc esi
cmp esi, 0xe34
jl 0x10002ca3
inc edx
mov dword [ebp - 0x28], edx
cmp edx, 0x784f
jl 0x10002ca1
mov esi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
inc esi
mov dword [ebp - 0x30], esi
cmp esi, 0xf68
jl 0x10002c95
inc eax
mov dword [ebp - 0x38], eax
cmp eax, 0x26c1
jl 0x10002c90
mov dword [ebp - 0x34], 0xd385e13c
cmp dword [ebp - 0x2c], 0x259f
jge 0x10002d2b
push str.ogqxn_otluxrh_rvzr_ehlau_cbvjvgcr_tcxan_szlcmqcb_zjyouye
call fcn.1004c11f
pop ecx
mov dword [ebp - 4], 0x14
xor edx, edx
mov dword [ebp - 0x28], 6
inc edx
mov dword [ebp - 0x200], 0x5427e557
mov dword [ebp - 0x1fc], 0x5427e557
mov dword [ebp - 0x1f8], 0x5427e557
mov dword [ebp - 0x1f4], 0x5427e557
mov dword [ebp - 0x18], ebx
jmp 0x10002d7c
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x168]
mov dword [eax + ecx*4], 0x7207182
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10002d69
mov dword [ebp - 0x18], ebx
jmp 0x10002d99
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x15c]
mov dword [eax + ecx*4], 0x1615e82a
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10002d86
mov dword [ebp - 0x18], ebx
jmp 0x10002db3
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1bc]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x10002da4
mov dword [ebp - 0x18], ebx
jmp 0x10002dd0
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18c]
mov dword [eax + ecx*4], 0x8f8f
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10002dbd
mov dword [ebp - 0x18], ebx
jmp 0x10002de8
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x144], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10002ddb
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10002dfe
push ebx
call dword [sym.imp.GDI32.dll_GetObjectType]
cmp dword [ebp - 0x1c], ebx
je 0x10002e26
mov dword [ebp - 0x30], 0x3978
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xf4]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c4]
mov eax, dword [ebp - 0xf4]
mov eax, dword [ebp - 0x3c]
xor edx, edx
xor edi, edi
inc edi
cmp eax, edi
mov eax, dword [ebp - 0x1bc]
setl dl
xor ecx, ecx
cmp dword [eax], ebx
sete cl
xor eax, eax
cmp ecx, edx
setge al
xor edx, edx
cmp eax, 0xe313559
mov eax, dword [ebp - 0x140]
setg dl
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x140], ecx
mov ecx, edi
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0xf4]
sub ecx, eax
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x1f8], ecx
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x28]
dec dword [ebp - 0x28]
cmp eax, ecx
mov esi, dword [ebp - 0x20]
mov ecx, edi
mov eax, dword [ebp - 0x168]
cmovl ecx, ebx
xor edx, edx
mov dword [eax], esi
mov eax, dword [ebp - 0x18c]
cmp ecx, dword [eax]
mov eax, dword [ebp - 0x180]
sete dl
xor ecx, ecx
neg esi
cmp esi, edx
setg cl
xor edx, edx
cmp ecx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x3c]
setg cl
xor edx, edx
cmp ecx, 0x350b8378
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0xf0]
setne cl
xor edx, edx
imul ecx, ecx, 0x72c6
cmp eax, ecx
lea ecx, [ebp - 0x18c]
setge dl
mov dword [ebp - 0x2bc], edx
call fcn.10003978
lea ecx, [ebp - 0x1bc]
call fcn.10003978
lea ecx, [ebp - 0x15c]
call fcn.10003978
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x10
call fcn.10003978
dec dword [ebp - 0x20]
jmp 0x10002c25
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 0xa
call fcn.10003978
xor eax, eax
mov dword [ebp - 0x128], 7
mov word [ebp - 0x13c], ax
lea ecx, [ebp - 0x13c]
lea eax, [ebp - 0x50]
mov dword [ebp - 0x12c], ebx
push eax
call fcn.10003d6e
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x294]
push dword [ebp - 0x4c]
movdqa xmm0, xmmword [0x10074340]
lea ecx, [ebp - 0x80]
push eax
lea eax, [ebp - 0x2a4]
mov dword [ebp - 0x80], ebx
push eax
push ebx
movdqu xmmword [ebp - 0x2a4], xmm0
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
call fcn.10006116
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x198]
mov dword [ebp - 0x1c], 2
mov eax, 0xaf12a83a
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x34], 0xffff
mov dword [ebp - 0x30], 0xeca6c849
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x1ec], eax
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 0x30], 0xc86992f1
push edi
call fcn.100038f5
mov dword [ebp - 0x1c], ebx
jmp 0x10003003
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x198]
mov dword [eax + ecx*4], 0xa9a9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edi
jl 0x10002ff0
mov edx, dword [ebp - 0x80]
mov eax, 0x7013dce9
mov dword [edx + 8], eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
je 0x10003067
mov edx, dword [edx + 8]
xor ecx, ecx
mov eax, dword [ebp - 0x28]
cmp eax, edx
setge cl
cmp ecx, 3
sbb eax, eax
neg eax
cmp eax, edx
jg 0x1000303a
mov esi, edi
cmp dword [ebp - 0x34], ebx
jne 0x1000303c
mov esi, ebx
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
setge dl
xor ecx, ecx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x28]
cmp esi, eax
setle cl
add ecx, dword [ebp - 0x1c]
jne 0x10003063
mov eax, dword [ebp - 0x80]
cmp dword [eax + 4], ebx
je 0x10003067
mov eax, edi
jmp 0x10003069
mov eax, ebx
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0x198]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x198]
dec dword [eax]
call fcn.10003978
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x17
call fcn.10003978
push dword [ebp - 0x4c]
movdqa xmm0, xmmword [0x100743a0]
lea eax, [ebp - 0x2f4]
push eax
lea eax, [ebp - 0x304]
mov dword [ebp - 0x50], ebx
push eax
mov dword [ebp - 0x34], 4
lea ecx, [ebp - 0x100]
mov dword [ebp - 0x28], 0x5ce9
push ebx
movdqu xmmword [ebp - 0x304], xmm0
mov dword [ebp - 0x100], ebx
mov dword [ebp - 0xfc], ebx
mov dword [ebp - 0xf8], ebx
call fcn.10006116
push edi
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 0x19
call fcn.100038f5
push 7
pop eax
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x208], eax
push 3
mov dword [ebp - 0x204], eax
mov dword [ebp - 0x18], ebx
pop edx
jmp 0x1000312f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xdc], 0x1d21f1eb
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edx
jl 0x1000311e
mov dword [ebp - 0x18], ebx
jmp 0x10003148
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24c]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10003139
mov dword [ebp - 0x18], ebx
jmp 0x10003163
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x224], 6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10003152
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
dec dword [ebp - 0x28]
mov eax, dword [ebp - 0xd4]
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x3c], 0x76b0
cmp dword [ebp - 0x3c], 0x78f7
jle 0x10003239
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_SelectObject]
mov ecx, ebx
mov dword [ebp - 0x28], ebx
mov esi, ebx
mov dword [ebp - 0x2c], ebx
mov edx, ecx
mov eax, ebx
mov ecx, esi
mov dword [ebp - 0x30], eax
sar edx, cl
mov dword [ebp - 0x38], edx
mov ecx, eax
mov esi, ebx
shl edx, cl
mov dword [ebp - 0x34], edx
mov eax, edx
mov ecx, esi
sar eax, cl
lea ecx, [ebp - 0x354]
cdq
push edx
push eax
call fcn.10001b14
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100031e6
mov eax, dword [eax]
push eax
call fcn.1004c11f
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x354]
call fcn.10003c82
mov edx, dword [ebp - 0x34]
inc esi
cmp esi, 0x2d3d
jl 0x100031c8
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x30], eax
cmp eax, 0xd8c
jl 0x100031bf
mov esi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
inc esi
mov dword [ebp - 0x2c], esi
cmp esi, 0x1282
jl 0x100031b1
inc ecx
mov dword [ebp - 0x28], ecx
cmp ecx, 0x7efa
jl 0x100031ac
cmp dword [ebp - 0x3c], 0x739d
jge 0x1000324d
push str.tjdmsg_mqc_detong_zsl
call fcn.1004c11f
pop ecx
mov dword [ebp - 4], 0x1a
mov dword [ebp - 0x1c], ebx
jmp 0x10003266
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x314], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10003259
mov eax, dword [ebp - 0x30c]
xor ecx, ecx
imul eax, dword [ebp - 0x30c]
cmp eax, 0x4a6b
mov eax, 0xe7fb108f
setl cl
mov dword [ebp - 0xd4], ecx
lea ecx, [ebp - 0x24c]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0xd8], eax
call fcn.10003978
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0x17
call fcn.10003978
push 0x5f
pop eax
push 2
mov byte [ebp - 0x48], bl
mov ecx, ebx
mov dword [ebp - 0x47], 0x639302c5
mov word [ebp - 0x54], ax
pop esi
cmp esi, 2
jne 0x100032d6
push 3
pop ecx
push ecx
pop esi
jmp 0x100032fd
movzx edx, byte [ebp + esi - 0x47]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x4a]
movzx eax, word [ebp + eax*2 - 0x54]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x48]
mov word [ebp + eax*2 - 0x54], cx
mov ecx, ebx
add esi, 2
cmp esi, 5
jb 0x100032ca
xor eax, eax
lea ecx, [ebp - 0x1c8]
push 4
mov word [ebp - 0x52], ax
call fcn.100038f5
push 2
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x1d
call fcn.100038f5
mov dword [ebp - 0x18], ebx
jmp 0x1000333d
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c8]
mov dword [eax + ecx*4], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x1000332e
mov dword [ebp - 0x18], ebx
jmp 0x1000335b
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1b0]
mov dword [eax + ecx*4], 0x25d16df2
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10003348
mov byte [ebp - 0x21], bl
cmp byte [ebp - 0x21], 0
je 0x10003371
push ebx
call dword [sym.imp.KERNEL32.dll_ClearCommBreak]
mov edx, dword [ebp - 0x1b0]
push 3
pop esi
mov dword [edx + 4], esi
mov dword [ebp - 0x1c], 0x6ccb0362
mov dword [ebp - 0x1c], ebx
jmp 0x100033a4
mov dword [ebp - 0x30], 0xffffffff
inc dword [ebp - 0x30]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c8]
cmp dword [eax + ecx*4], ebx
jne 0x100033a9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x10003389
dec dword [edx + 4]
jns 0x1000337d
lea ecx, [ebp - 0x1b0]
call fcn.10003978
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x17
call fcn.10003978
xor eax, eax
mov dword [ebp - 0x250], 7
mov word [ebp - 0x264], ax
lea ecx, [ebp - 0x264]
lea eax, [ebp - 0x54]
mov dword [ebp - 0x254], ebx
push eax
call fcn.10003d6e
mov byte [ebp - 4], 0x1e
mov dword [ebp - 0x54], ebx
push dword [ebp - 0x12c]
cmp dword [ebp - 0x128], 8
lea eax, [ebp - 0x13c]
push ebx
cmovae eax, dword [ebp - 0x13c]
lea ecx, [ebp - 0x294]
push eax
call fcn.100040ea
cmp eax, 0xffffffff
je 0x1000343c
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x264]
push ecx
push edi
push eax
lea ecx, [ebp - 0x294]
call fcn.10003df6
jmp 0x100033f7
mov dword [ebp - 0x20], 2
mov dword [ebp - 0x20], 0x16
jmp 0x100034ba
push dword [ebp - 0x4c]
movdqa xmm0, xmmword [0x10074390]
lea eax, [ebp - 0x2c4]
push eax
lea eax, [ebp - 0x2d4]
mov dword [ebp - 0xc4], ebx
push eax
push ebx
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0xc0], ebx
movdqu xmmword [ebp - 0x2d4], xmm0
mov dword [ebp - 0xbc], ebx
call fcn.10006116
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x1c], ebx
jmp 0x100034a6
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc4]
mov dword [eax + ecx*4], 0x3250e6da
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x10003493
lea ecx, [ebp - 0xc4]
call fcn.10003978
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff8
je 0x1000344c
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x27c]
sub eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x294]
push eax
call fcn.10005ba3
pop ecx
push ebx
push edi
lea ecx, [ebp - 0x264]
call fcn.1000418d
push ebx
push edi
lea ecx, [ebp - 0x13c]
call fcn.1000418d
push ebx
push edi
lea ecx, [ebp - 0x294]
call fcn.1000418d
push ebx
push edi
lea ecx, [ebp - 0x27c]
call fcn.1000418d
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x74]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret