Function at 0x403e22
Capabilities:
Delete registry key
Delete registry value
Get graphical window text
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
lea ebp, [esp - 0x74]
sub esp, 0x90
mov eax, dword [0x449748]
push edi
xor edi, edi
cmp dword [0x44eef0], edi
mov dword [ebp + 0x70], eax
mov dword [ebp - 0x10], edi
je 0x404b02
push esi
xor esi, esi
cmp dword [0x44eeec], edi
mov dword [ebp - 0xc], esi
jbe 0x404adf
push ebx
cmp dword [ebp + 0x7c], edi
je 0x4048ec
mov eax, dword [0x44eef0]
imul esi, esi, 0x54
add eax, esi
cmp dword [eax + 0x10], edi
je 0x4048ec
cmp dword [eax + 0x14], edi
je 0x4048ec
cmp byte [eax + 0x4e], 0
je 0x4048ec
cmp byte [eax + 0x4d], 0
jne 0x4048ec
push dword [eax]
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x4048ec
mov eax, dword [0x44eef0]
push 1
push dword [esi + eax + 0x10]
push edi
call fcn.004248bf
mov ebx, eax
add esp, 0xc
cmp ebx, edi
mov dword [ebp + 0x20], ebx
je 0x4048e5
mov eax, dword [0x44eef0]
add eax, esi
mov ecx, dword [eax + 4]
sub ecx, 4
je 0x40470e
dec ecx
je 0x4045b1
dec ecx
je 0x404527
dec ecx
je 0x404054
sub ecx, 4
je 0x403fea
sub ecx, 5
je 0x403f42
sub ecx, 3
jne 0x404830
movzx ecx, byte [eax + 0x32]
push ecx
movzx ecx, byte [eax + 0x31]
mov eax, dword [eax + 0x30]
push ecx
and eax, 0xff
push eax
lea eax, [ebp + 0x28]
push str._d__d__d
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
push 3
lea eax, [ebp + 0x28]
push eax
mov eax, dword [0x44eef0]
push dword [esi + eax + 0x14]
push ebx
call fcn.004239e7
add esp, 0x24
jmp 0x404830
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
mov ebx, eax
inc ebx
push ebx
call fcn.0042629a
pop ecx
push ebx
push eax
mov dword [ebp + 0x24], eax
mov eax, dword [0x44eef0]
push dword [esi + eax]
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov eax, dword [0x44eef0]
add eax, esi
test byte [eax + 0xc], 4
je 0x403f98
push dword [eax + 0x18]
push dword [ebp + 0x24]
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x403f98
mov eax, dword [0x44eef0]
push dword [esi + eax + 0x14]
push dword [ebp + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x403fd3
mov eax, dword [0x44eef0]
add esi, eax
mov eax, dword [esi + 0xc]
test al, 0x10
je 0x403fba
push edi
push dword [ebp + 0x24]
push dword [esi + 0x14]
push dword [ebp + 0x20]
call fcn.004239e7
add esp, 0x10
jmp 0x403fd3
test al, 8
je 0x403fc2
push 1
jmp 0x403fa7
push dword [ebp + 0x24]
push dword [esi + 0x14]
push dword [ebp + 0x20]
call fcn.00423ec6
add esp, 0xc
cmp dword [ebp + 0x24], edi
je 0x404830
push dword [ebp + 0x24]
call fcn.004262e0
pop ecx
jmp 0x404830
push edi
push edi
push 0x147
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [0x44eef0]
add esi, ecx
test byte [esi + 0xc], 4
je 0x40401b
cmp dword [esi + 0x1c], eax
jne 0x40401b
push dword [esi + 0x14]
push ebx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x404830
mov ecx, dword [esi + 8]
cmp ecx, edi
jne 0x40403a
mov ecx, dword [esi + 0x18]
push edi
push dword [ecx + eax*4]
push dword [esi + 0x14]
push ebx
call fcn.004239e7
add esp, 0x10
jmp 0x404830
cmp ecx, 1
jne 0x404830
mov ecx, dword [esi + 0x18]
push dword [ecx + eax*4]
push dword [esi + 0x14]
push dword [ebp + 0x20]
jmp 0x4048d8
mov eax, dword [eax + 8]
cmp eax, edi
jne 0x4042c7
push edi
push edi
push edi
lea eax, [ebp - 8]
push eax
lea eax, [ebp]
push eax
push edi
push edi
push edi
push edi
push edi
push edi
push ebx
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyA]
mov eax, dword [ebp - 8]
lea eax, [eax + eax + 2]
mov dword [ebp - 8], eax
mov eax, dword [ebp]
shl eax, 2
push eax
call fcn.0042629a
cmp eax, edi
pop ecx
mov dword [ebp + 0x1c], eax
je 0x4041de
push dword [ebp - 8]
call fcn.0042629a
cmp eax, edi
pop ecx
mov dword [ebp + 0x24], eax
je 0x4041bb
cmp dword [ebp], edi
mov dword [ebp + 0x10], edi
mov dword [ebp + 0x18], edi
jbe 0x404178
jmp 0x4040c1
mov ebx, dword [ebp + 0x20]
mov eax, dword [ebp - 8]
push edi
push edi
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x14]
push eax
push edi
lea eax, [ebp - 0x1c]
push eax
push dword [ebp + 0x24]
push dword [ebp + 0x18]
push ebx
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
cmp dword [ebp - 0x14], 1
je 0x4040eb
cmp dword [ebp - 0x14], 2
jne 0x404169
mov eax, dword [0x44eef0]
push edi
push edi
push 0x1004
push dword [esi + eax]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, edi
mov dword [ebp + 4], eax
mov dword [ebp + 0xc], edi
jle 0x40414c
mov eax, dword [0x44eef0]
push edi
push dword [ebp + 0xc]
push dword [esi + eax]
call fcn.0042597e
mov ebx, eax
add esp, 0xc
cmp ebx, edi
je 0x404139
push dword [ebp + 0x24]
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
push ebx
je 0x404146
call fcn.004262e0
pop ecx
inc dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
cmp eax, dword [ebp + 4]
jl 0x40410a
jmp 0x40414c
call fcn.004262e0
pop ecx
mov eax, dword [ebp + 4]
cmp dword [ebp + 0xc], eax
jne 0x404169
push dword [ebp + 0x24]
call fcn.0042f33d
mov edx, dword [ebp + 0x10]
inc dword [ebp + 0x10]
pop ecx
mov ecx, dword [ebp + 0x1c]
mov dword [ecx + edx*4], eax
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp]
jb 0x4040be
xor ebx, ebx
cmp dword [ebp + 0x10], edi
jbe 0x4041b0
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + ebx*4]
cmp eax, edi
je 0x4041aa
push eax
push dword [ebp + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + ebx*4]
cmp eax, edi
je 0x4041aa
push eax
call fcn.004262e0
mov eax, dword [ebp + 0x1c]
pop ecx
mov dword [eax + ebx*4], edi
inc ebx
cmp ebx, dword [ebp + 0x10]
jb 0x40417f
push dword [ebp + 0x24]
call fcn.004262e0
pop ecx
jmp 0x4041d3
call fcn.0041d387
push 0x10
push 0x43cf4c
push 0x43ccec
push edi
call dword [sym.imp.USER32.dll_MessageBoxA]
push dword [ebp + 0x1c]
call fcn.004262e0
pop ecx
jmp 0x4041f6
call fcn.0041d387
push 0x10
push 0x43cf4c
push 0x43ccec
push edi
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [0x44eef0]
push edi
push edi
push 0x1004
push dword [esi + eax]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, edi
mov dword [ebp], eax
mov dword [ebp + 0x18], edi
jbe 0x404830
mov eax, dword [0x44eef0]
push edi
push dword [ebp + 0x18]
push dword [esi + eax]
call fcn.0042597e
add esp, 0xc
cmp eax, edi
mov dword [ebp + 0x24], eax
je 0x40429b
mov eax, dword [0x44eef0]
push 1
push dword [ebp + 0x18]
push dword [esi + eax]
call fcn.0042597e
mov ebx, eax
add esp, 0xc
cmp ebx, edi
je 0x404278
mov eax, dword [0x44eef0]
mov eax, dword [esi + eax + 0xc]
shr eax, 3
and eax, 0xffffff01
push eax
push ebx
push dword [ebp + 0x24]
push dword [ebp + 0x20]
call fcn.004239e7
push ebx
call fcn.004262e0
add esp, 0x14
jmp 0x404290
call fcn.0041d387
push 0x10
push 0x43cf4c
push 0x43ccb8
push edi
call dword [sym.imp.USER32.dll_MessageBoxA]
push dword [ebp + 0x24]
call fcn.004262e0
pop ecx
jmp 0x4042b3
call fcn.0041d387
push 0x10
push 0x43cf4c
push 0x43ccb8
push edi
call dword [sym.imp.USER32.dll_MessageBoxA]
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp]
jb 0x404219
jmp 0x404830
cmp eax, 1
jne 0x404830
push edi
push edi
push edi
push edi
push edi
push edi
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 4]
push eax
push edi
push edi
push edi
push dword [ebp + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyA]
mov eax, dword [ebp + 0x14]
lea eax, [eax + eax + 2]
mov dword [ebp + 0x14], eax
mov eax, dword [ebp - 4]
shl eax, 2
push eax
call fcn.0042629a
mov ebx, eax
cmp ebx, edi
pop ecx
je 0x40441b
mov eax, dword [ebp + 0x14]
inc eax
push eax
mov dword [ebp + 0xc], eax
call fcn.0042629a
cmp eax, edi
pop ecx
mov dword [ebp + 0x24], eax
je 0x404414
cmp dword [ebp - 4], edi
mov dword [ebp + 0x10], edi
mov dword [ebp + 0x14], edi
jbe 0x4043d2
push dword [ebp + 0xc]
push dword [ebp + 0x24]
push dword [ebp + 0x14]
push dword [ebp + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyA]
mov eax, dword [0x44eef0]
push edi
push edi
push 0x1004
push dword [esi + eax]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, edi
mov dword [ebp + 4], eax
mov dword [ebp + 0x1c], edi
jbe 0x4043a9
mov eax, dword [0x44eef0]
push edi
push dword [ebp + 0x1c]
push dword [esi + eax]
call fcn.0042597e
add esp, 0xc
cmp eax, edi
mov dword [ebp + 0x18], eax
je 0x404396
push dword [ebp + 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
push dword [ebp + 0x18]
je 0x4043a3
call fcn.004262e0
pop ecx
inc dword [ebp + 0x1c]
mov eax, dword [ebp + 0x1c]
cmp eax, dword [ebp + 4]
jb 0x404364
jmp 0x4043a9
call fcn.004262e0
pop ecx
mov eax, dword [ebp + 4]
cmp dword [ebp + 0x1c], eax
jne 0x4043c3
push dword [ebp + 0x24]
call fcn.0042f33d
pop ecx
mov ecx, dword [ebp + 0x10]
inc dword [ebp + 0x10]
mov dword [ebx + ecx*4], eax
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jb 0x404333
cmp dword [ebp + 0x10], edi
mov dword [ebp + 0x14], edi
jbe 0x40440b
mov eax, dword [ebp + 0x14]
push dword [ebx + eax*4]
push dword [ebp + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov eax, dword [ebp + 0x14]
mov eax, dword [ebx + eax*4]
cmp eax, edi
je 0x404400
push eax
call fcn.004262e0
mov eax, dword [ebp + 0x14]
pop ecx
mov dword [ebx + eax*4], edi
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp + 0x10]
jb 0x4043da
push dword [ebp + 0x24]
call fcn.004262e0
pop ecx
push ebx
call fcn.004262e0
pop ecx
mov eax, dword [0x44eef0]
push edi
push edi
add eax, esi
mov ecx, dword [eax + 0x18]
push 0x1004
push dword [eax]
mov dword [ebp + 0x10], ecx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, edi
mov dword [ebp - 4], eax
mov dword [ebp + 0x14], edi
jbe 0x404830
mov eax, dword [0x44eef0]
push edi
push dword [ebp + 0x14]
push dword [esi + eax]
call fcn.0042597e
add esp, 0xc
cmp eax, edi
mov dword [ebp + 0x24], eax
je 0x404513
xor ebx, ebx
inc ebx
push ebx
push eax
push dword [ebp + 0x20]
call fcn.004248bf
add esp, 0xc
cmp eax, edi
mov dword [ebp + 0x1c], eax
je 0x404505
mov eax, dword [ebp + 0x10]
add eax, 4
cmp dword [eax], edi
mov dword [ebp + 0xc], ebx
je 0x4044fc
mov ebx, eax
mov dword [ebp + 4], eax
cmp dword [ebp + 0x24], edi
je 0x40449f
push dword [ebp + 0x24]
call fcn.004262e0
pop ecx
push dword [ebp + 0xc]
mov eax, dword [0x44eef0]
push dword [ebp + 0x14]
push dword [esi + eax]
call fcn.0042597e
add esp, 0xc
cmp eax, edi
mov dword [ebp + 0x24], eax
je 0x4044ec
cmp byte [eax], 0
jne 0x4044da
mov eax, dword [0x44eef0]
test byte [esi + eax + 0xc], 4
je 0x4044da
push dword [ebx]
push dword [ebp + 0x1c]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x4044ec
push 2
push dword [ebp + 0x24]
push dword [ebx]
push dword [ebp + 0x1c]
call fcn.004239e7
add esp, 0x10
mov ebx, dword [ebp + 4]
inc dword [ebp + 0xc]
add ebx, 4
cmp dword [ebx], edi
mov dword [ebp + 4], ebx
jne 0x404491
push dword [ebp + 0x1c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp + 0x24], edi
je 0x404513
push dword [ebp + 0x24]
call fcn.004262e0
pop ecx
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp - 4]
jb 0x404445
jmp 0x404830
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
lea ebx, [eax + 1]
push ebx
call fcn.0042629a
cmp eax, edi
pop ecx
mov dword [ebp + 0x1c], eax
je 0x404830
push ebx
push eax
mov eax, dword [0x44eef0]
push dword [esi + eax]
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov eax, dword [0x44eef0]
add eax, esi
test byte [eax + 0xc], 4
je 0x404585
push dword [eax + 0x18]
push dword [ebp + 0x1c]
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x404585
mov eax, dword [0x44eef0]
push dword [esi + eax + 0x14]
push dword [ebp + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x4045a9
mov eax, dword [0x44eef0]
add esi, eax
mov eax, dword [esi + 0xc]
shr eax, 3
and eax, 0xffffff01
push eax
push dword [ebp + 0x1c]
push dword [esi + 0x14]
push dword [ebp + 0x20]
call fcn.004239e7
add esp, 0x10
push dword [ebp + 0x1c]
jmp 0x403fdf
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
lea ebx, [eax + 1]
push ebx
call fcn.0042629a
cmp eax, edi
pop ecx
mov dword [ebp + 0x18], eax
je 0x404830
push ebx
push eax
mov eax, dword [0x44eef0]
push dword [esi + eax]
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov eax, dword [0x44eef0]
lea ebx, [esi + eax]
cmp dword [ebx + 8], edi
jne 0x404639
test byte [ebx + 0xc], 4
je 0x404618
push dword [ebp + 0x18]
push dword [ebx + 0x18]
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x404618
mov eax, dword [0x44eef0]
push dword [esi + eax + 0x14]
push dword [ebp + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x404706
mov eax, dword [0x44eef0]
add eax, esi
mov ecx, dword [eax + 0xc]
shr ecx, 2
not cl
and ecx, 0xffffff02
or ecx, 1
push ecx
push dword [ebp + 0x18]
push dword [eax + 0x14]
jmp 0x4046a0
test byte [ebx + 0xc], 4
je 0x404655
push dword [ebp + 0x18]
lea ebx, [esi + eax]
call fcn.00425819
cmp dword [ebx + 0x1c], eax
pop ecx
jne 0x404655
push dword [ebx + 0x14]
jmp 0x40460a
mov eax, dword [ebx + 0xc]
test al, 0x10
mov ebx, dword [ebx + 0x20]
je 0x4046aa
cmp ebx, edi
je 0x40467f
call fcn.0041e6f2
push dword [ebp + 0x18]
mov edi, eax
call fcn.00425819
imul edi, eax
push edi
call fcn.00424df2
pop ecx
pop ecx
jmp 0x404682
mov eax, dword [ebp + 0x18]
mov ecx, dword [0x44eef0]
add ecx, esi
mov edx, dword [ecx + 0xc]
shr edx, 2
not dl
and edx, 0xffffff02
or edx, 1
push edx
push eax
push dword [ecx + 0x14]
push dword [ebp + 0x20]
call fcn.004239e7
jmp 0x404703
test al, 0x20
je 0x4046df
call fcn.0041e6f2
push dword [ebp + 0x18]
mov edi, eax
call fcn.00425819
imul edi, eax
push 4
lea eax, [ebp - 0x18]
push eax
mov eax, dword [0x44eef0]
mov dword [ebp - 0x18], edi
push dword [esi + eax + 0x14]
push dword [ebp + 0x20]
call fcn.00423b6f
add esp, 0x14
jmp 0x404706
call fcn.0041e6f2
push dword [ebp + 0x18]
mov edi, eax
call fcn.00425819
imul edi, eax
mov eax, dword [0x44eef0]
push edi
push dword [esi + eax + 0x14]
push dword [ebp + 0x20]
call fcn.00423b1d
add esp, 0x10
push dword [ebp + 0x18]
jmp 0x404828
push edi
push edi
push 0xf0
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageA]
sub eax, edi
je 0x404739
dec eax
je 0x404730
dec eax
jne 0x40473c
mov dword [ebp + 8], 2
jmp 0x40473c
mov dword [ebp + 8], 1
jmp 0x40473c
mov dword [ebp + 8], edi
mov eax, dword [0x44eef0]
lea ecx, [esi + eax]
mov eax, dword [ecx + 8]
sub eax, edi
je 0x404844
dec eax
je 0x40483e
dec eax
je 0x404798
dec eax
jne 0x404830
push edi
push dword [ecx + 0x14]
push ebx
call fcn.004238c1
mov ecx, dword [0x44eef0]
add esi, ecx
mov ecx, dword [ebp + 8]
xor edx, edx
add esp, 0xc
inc edx
cmp ecx, dword [esi + 0x34]
mov ecx, dword [esi + 0x2c]
je 0x404789
shl edx, cl
or eax, edx
jmp 0x40478f
shl edx, cl
not edx
and eax, edx
push eax
push dword [esi + 0x14]
jmp 0x4048d7
push dword [ecx + 0x14]
push dword [ebp + 0x20]
call fcn.00423776
mov ebx, eax
cmp ebx, edi
mov eax, dword [0x44eef0]
pop ecx
pop ecx
jge 0x4047c3
mov ebx, dword [esi + eax + 0x28]
inc ebx
push ebx
push 1
call fcn.004268a0
pop ecx
pop ecx
mov edi, eax
jmp 0x4047ee
mov eax, dword [esi + eax + 0x28]
cmp eax, ebx
jl 0x4047ce
lea ebx, [eax + 1]
push ebx
push 1
call fcn.004268a0
mov edi, eax
mov eax, dword [0x44eef0]
push ebx
push edi
push dword [esi + eax + 0x14]
push dword [ebp + 0x20]
call fcn.0042386a
add esp, 0x18
mov eax, dword [0x44eef0]
add esi, eax
mov eax, dword [ebp + 8]
mov ecx, dword [esi + 0x2c]
mov dl, 1
shl dl, cl
cmp eax, dword [esi + 0x34]
mov eax, dword [esi + 0x28]
je 0x40480d
add eax, edi
or byte [eax], dl
jmp 0x404813
add eax, edi
not dl
and byte [eax], dl
push ebx
push edi
push dword [esi + 0x14]
push dword [ebp + 0x20]
call fcn.00423b6f
add esp, 0x10
test edi, edi
je 0x40482e
push edi
call fcn.004262e0
pop ecx
xor edi, edi
push dword [ebp + 0x20]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x4048ec
cmp dword [ebp + 8], 2
je 0x404853
mov eax, dword [ecx + 0xc]
test al, 4
je 0x40485b
mov edx, dword [ebp + 8]
cmp dword [ecx + 0x1c], edx
jne 0x40485b
push dword [ecx + 0x14]
jmp 0x40400f
mov esi, dword [ecx + 0x38]
cmp esi, edi
je 0x404872
mov edx, dword [ecx + 0x3c]
cmp edx, edi
je 0x404872
cmp dword [ebp + 8], edi
je 0x4048af
mov edx, esi
jmp 0x4048af
test al, 0x10
je 0x404887
cmp dword [ebp + 8], edi
mov edx, 0x43cd44
jne 0x4048af
mov edx, 0x43d080
jmp 0x4048af
test al, 0x20
je 0x40489c
cmp dword [ebp + 8], edi
mov edx, 0x43cd40
jne 0x4048af
mov edx, 0x43cd3c
jmp 0x4048af
test al, 0x40
je 0x4048c6
cmp dword [ebp + 8], edi
mov edx, str.true
jne 0x4048af
mov edx, str.false
shr eax, 2
not al
and eax, 0xffffff02
or eax, 1
push eax
push edx
push dword [ecx + 0x14]
jmp 0x40402c
cmp dword [ebp + 8], edi
je 0x4048d0
mov eax, dword [ecx + 0x28]
jmp 0x4048d3
mov eax, dword [ecx + 0x2c]
push eax
push dword [ecx + 0x14]
push ebx
call fcn.00423b1d
add esp, 0xc
jmp 0x404830
mov dword [ebp - 0x10], 1
mov esi, dword [ebp - 0xc]
mov eax, dword [0x44eef0]
imul esi, esi, 0x54
add eax, esi
cmp dword [ebp + 0x7c], 2
mov byte [eax + 0x4d], 0
mov byte [eax + 0x4e], 0
je 0x404acb
mov ecx, dword [eax + 0x10]
cmp ecx, edi
je 0x404923
push ecx
call fcn.004262e0
mov eax, dword [0x44eef0]
add eax, esi
pop ecx
mov dword [eax + 0x10], edi
mov ecx, dword [eax + 0x14]
cmp ecx, edi
je 0x40493b
push ecx
call fcn.004262e0
mov eax, dword [0x44eef0]
add eax, esi
pop ecx
mov dword [eax + 0x14], edi
mov ecx, dword [eax + 0x18]
cmp ecx, edi
je 0x404953
push ecx
call fcn.004262e0
mov eax, dword [0x44eef0]
add eax, esi
pop ecx
mov dword [eax + 0x18], edi
mov ebx, dword [eax + 0x20]
cmp ebx, edi
je 0x40499d
cmp dword [eax + 4], 7
jne 0x40497e
cmp dword [eax + 8], 1
jne 0x40497e
jmp 0x40497a
mov eax, dword [ebx]
cmp eax, edi
je 0x404977
push eax
call fcn.004262e0
pop ecx
mov dword [ebx], edi
add ebx, 4
cmp dword [ebx], edi
jne 0x404968
mov eax, dword [0x44eef0]
add eax, esi
mov ecx, dword [eax + 0x20]
cmp ecx, edi
je 0x40499d
push ecx
call fcn.004262e0
mov eax, dword [0x44eef0]
add eax, esi
pop ecx
mov dword [eax + 0x20], edi
mov ecx, dword [eax + 0x24]
cmp ecx, edi
je 0x4049b5
push ecx
call fcn.004262e0
mov eax, dword [0x44eef0]
add eax, esi
pop ecx
mov dword [eax + 0x24], edi
mov ecx, dword [eax + 0x38]
cmp ecx, edi
je 0x4049d3
cmp dword [eax + 4], 4
jne 0x4049c9
push ecx
call fcn.004262e0
pop ecx
mov eax, dword [0x44eef0]
add eax, esi
mov dword [eax + 0x38], edi
mov ecx, dword [eax + 0x3c]
cmp ecx, edi
je 0x4049f4
cmp dword [eax + 4], 4
jne 0x4049f1
push ecx
call fcn.004262e0
mov eax, dword [0x44eef0]
add eax, esi
pop ecx
mov dword [eax + 0x3c], edi
mov dword [eax + 0x3c], edi
cmp dword [eax + 4], 6
jne 0x404a23
cmp dword [eax + 0x44], edi
je 0x404a23
push dword [eax]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov eax, dword [0x44eef0]
add eax, esi
push dword [eax + 0x44]
mov dword [eax], edi
call dword [sym.imp.USER32.dll_DestroyIcon]
mov eax, dword [0x44eef0]
add eax, esi
mov dword [eax + 0x44], edi
mov ebx, dword [eax + 0x48]
cmp ebx, edi
je 0x404abe
mov eax, dword [eax + 4]
cmp eax, 5
je 0x404aa4
cmp eax, 0x10
je 0x404aa4
cmp eax, 6
je 0x404aa4
cmp eax, 3
je 0x404aa4
cmp eax, 0xf
je 0x404aa4
cmp eax, 7
jne 0x404ab4
cmp dword [ebx + 4], edi
mov dword [ebp + 0x10], edi
jbe 0x404a9c
mov eax, dword [ebx]
cmp eax, edi
mov dword [ebp + 0x1c], edi
jbe 0x404a91
imul eax, dword [ebp + 0x10]
add eax, dword [ebp + 0x1c]
mov ecx, dword [ebx + 8]
mov eax, dword [ecx + eax*4]
cmp eax, edi
je 0x404a87
push eax
call fcn.004262e0
mov eax, dword [ebx]
imul eax, dword [ebp + 0x10]
add eax, dword [ebp + 0x1c]
pop ecx
mov ecx, dword [ebx + 8]
mov dword [ecx + eax*4], edi
inc dword [ebp + 0x1c]
mov eax, dword [ebx]
cmp dword [ebp + 0x1c], eax
jb 0x404a60
inc dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
cmp eax, dword [ebx + 4]
jb 0x404a57
push ebx
call fcn.004262e0
jmp 0x404ab3
push ebx
call fcn.004262e0
mov eax, dword [0x44eef0]
mov dword [esi + eax + 0x48], edi
pop ecx
mov eax, dword [0x44eef0]
add eax, esi
mov dword [eax + 0x48], edi
push dword [eax + 0x50]
push 0xfffffffffffffffc
push dword [eax]
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov esi, dword [ebp - 0xc]
inc esi
cmp esi, dword [0x44eeec]
mov dword [ebp - 0xc], esi
jb 0x403e5a
pop ebx
cmp dword [ebp + 0x7c], 2
pop esi
je 0x404b02
mov eax, dword [0x44eef0]
cmp eax, edi
je 0x404afc
push eax
call fcn.004262e0
pop ecx
mov dword [0x44eef0], edi
mov dword [0x44eeec], edi
mov ecx, dword [ebp + 0x70]
mov eax, dword [ebp - 0x10]
pop edi
call fcn.00428306
add ebp, 0x74
leave
ret