Function at 0x423dc0
Capabilities:
Check for time delay via gettickcount
Empty the recycle bin
Find taskbar
Move file
Print debug messages
Set environment variable

Disassembly:
push ebp
lea ebp, [esp - 0x6c]
sub esp, 0x6c
push 0xffffffffffffffff
push 0x4a5d08
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x884
mov eax, dword [ebp + 0x7c]
mov edx, ecx
test eax, eax
mov dword [ebp - 0x10], edx
push ebx
mov ebx, dword [0x4ce8c8]
lea ecx, [ebp - 0x14]
cmovne ecx, eax
mov dword [ebp + 0x54], ebx
mov dword [ebp + 0x48], ecx
mov dword [ebp + 0x64], edx
push esi
mov dword [ecx], 0
push edi
mov edi, 1
test edx, edx
je 0x42413c
nop dword [eax + eax]
cmp dword [0x4d3e9c], 0
je 0x423e62
cmp dword [0x4d3e8c], 0
je 0x423e48
push dword [0x4d3e84]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [0x4d3e8c], 0
call dword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x4d3e9c], 0
mov dword [0x4d3e84], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov eax, dword [0x4ce8c8]
mov ecx, esi
sub ecx, dword [0x4d49c4]
cmp ecx, dword [eax + 0xd8]
jbe 0x423eb0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x90]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x423ea2
mov edx, edi
or ecx, 0xffffffff
call fcn.00401e60
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov dword [0x4d49c4], esi
cmp byte [ebx + 0xec], 0
jne 0x423ee2
cmp byte [ebx + 0xee], 0
jne 0x423ee2
mov eax, dword [0x4d49b8]
cmp eax, 0xffffffff
jle 0x423ee2
mov ecx, dword [ebx + 0x28]
cmp ecx, eax
jle 0x423edc
mov byte [ebx + 0xec], 1
jmp 0x423ee2
lea eax, [ecx + 1]
mov dword [ebx + 0x28], eax
mov eax, dword [ebx + 4]
mov edi, dword [ebx]
mov ecx, dword [0x4d49b0]
mov edx, dword [0x4d49b4]
cmp eax, 0xffffffff
jl 0x423f09
jg 0x423eff
cmp edi, 0xffffffff
jbe 0x423f09
cmp edx, eax
jg 0x423f1b
jl 0x423f09
cmp ecx, edi
jae 0x423f1b
mov eax, dword [ebx + 0x24]
cmp eax, 0xffffffff
jle 0x423f38
sub esi, dword [0x4d49c0]
cmp esi, eax
jb 0x423f38
mov edi, 1
mov edx, edi
lea ecx, [edi + 9]
call fcn.00401e60
mov edx, dword [0x4d49b4]
mov ecx, dword [0x4d49b0]
jmp 0x423f3d
mov edi, 1
cmp byte [ebx + 0xf8], 0
je 0x423f71
nop word [eax + eax]
mov edx, edi
mov ecx, 0x8000012f
call fcn.00401e60
cmp byte [ebx + 0xf8], 0
jne 0x423f50
mov edx, dword [0x4d49b4]
mov ecx, dword [0x4d49b0]
mov esi, dword [ebp + 0x64]
mov dword [0x4d4510], esi
cmp byte [ebx + 0xf9], 0
je 0x423fc0
mov eax, dword [0x4d3110]
mov dword [eax*4 + 0x4d3758], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x4d3110]
mov edx, dword [0x4d49b4]
mov dword [ecx*4 + 0x4d3118], eax
inc ecx
xor eax, eax
cmp ecx, 0x190
cmovge ecx, eax
mov dword [0x4d3110], ecx
mov ecx, dword [0x4d49b0]
mov al, byte [esi]
cmp al, 1
je 0x423ff4
cmp al, 0x6b
je 0x423ff4
cmp al, 0x72
je 0x423ff4
push 0
push 0xffffffffffffffff
push dword [ebp + 0x78]
mov ecx, esi
call fcn.004596a0
mov dword [ebp + 0x60], eax
cmp eax, 1
jne 0x428345
mov edx, dword [0x4d49b4]
mov ecx, dword [0x4d49b0]
mov bl, byte [esi]
cmp bl, 9
jb 0x424152
cmp bl, 0x20
ja 0x424152
add ecx, 1
mov dword [0x4d49b0], ecx
mov ecx, esi
adc edx, 0
mov dword [0x4d49b4], edx
call fcn.00428cd0
cmp eax, 3
jne 0x4240b4
mov eax, dword [esi + 0x14]
cmp byte [eax], 0x73
jne 0x424054
lea ecx, [ebp + 0x5c]
push ecx
push dword [ebp + 0x78]
mov ecx, dword [eax + 0x14]
push 2
call fcn.00423dc0
mov ecx, dword [ebp + 0x5c]
mov edx, eax
mov dword [ebp + 0x60], edx
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x424032
jmp 0x42406c
lea ecx, [ebp + 0x5c]
push ecx
push dword [ebp + 0x78]
mov ecx, eax
push 3
call fcn.00423dc0
mov ecx, dword [ebp + 0x5c]
mov edx, eax
mov dword [ebp + 0x60], edx
cmp ecx, esi
je 0x42409c
cmp dword [ebp + 0x74], 3
je 0x42826e
cmp edx, 1
jne 0x42826e
test ecx, ecx
jne 0x42411c
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x64], esi
cmp byte [esi], 0x21
jne 0x42409c
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x64], esi
mov ebx, dword [ebp + 0x64]
mov edi, 1
test ebx, ebx
je 0x42413c
mov ebx, dword [ebp + 0x54]
jmp 0x423e20
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x64], esi
cmp byte [esi], 0x21
jne 0x424132
mov eax, dword [esi + 0x14]
cmp byte [eax], 0x73
jne 0x4240e9
lea ecx, [ebp + 0x5c]
push ecx
push dword [ebp + 0x78]
mov ecx, dword [eax + 0x14]
push 2
call fcn.00423dc0
mov ecx, dword [ebp + 0x5c]
mov edx, eax
mov dword [ebp + 0x60], edx
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x4240c7
jmp 0x424101
lea ecx, [ebp + 0x5c]
push ecx
push dword [ebp + 0x78]
mov ecx, eax
push 3
call fcn.00423dc0
mov ecx, dword [ebp + 0x5c]
mov edx, eax
mov dword [ebp + 0x60], edx
cmp dword [ebp + 0x74], 3
je 0x42826e
cmp edx, 1
jne 0x42826e
test ecx, ecx
je 0x424096
mov eax, dword [ecx + 0x1c]
cmp eax, dword [esi + 0x1c]
jne 0x428264
mov ebx, ecx
mov dword [ebp + 0x64], ebx
jmp 0x42409f
cmp dword [ebp + 0x74], 3
jne 0x42409c
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
movzx eax, bl
add eax, 0xffffffa0
cmp eax, 0x7e
ja case.0x424168.98
movzx eax, byte [eax + 0x428788]
jmp dword [eax*4 + 0x42874c]
add ecx, 1
mov dword [0x4d49b0], ecx
adc edx, 0
mov dword [0x4d49b4], edx
mov esi, dword [esi + 0x18]
test esi, esi
je 0x4241a5
mov edx, dword [ebp + 0x64]
xor ebx, ebx
mov edi, dword [ebp + 0x54]
mov dword [ebp + 0x10], esi
cmp dword [edx + 0xc], 1
sete bl
jne 0x424281
jmp 0x424267
mov edi, dword [0x4d3df0]
test edi, edi
je 0x4241d7
cmp word [edi], 0
je 0x4241d7
mov esi, dword [0x4d3ef0]
test esi, esi
je 0x4241d7
nop
push edi
push dword [esi + 4]
call fcn.0048f253
add esp, 8
test eax, eax
je 0x4241fd
mov esi, dword [esi + 0x10]
test esi, esi
jne 0x4241c0
mov ecx, dword [ebp + 0x64]
push edi
push 0
push 0x4bf998
call fcn.0042d1e0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov eax, dword [esi + 8]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x424231
mov edx, dword [ebp + 0x64]
mov eax, dword [edx + 0x1c]
test eax, eax
je 0x42421c
cmp ecx, eax
je 0x424231
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x424211
push 0x4ac22c
push 0
push str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
mov ecx, edx
call fcn.0042d1e0
xor esi, esi
mov dword [ebp + 0x10], esi
test esi, esi
je 0x4241e7
mov edi, dword [ebp + 0x54]
cmp dword [edi + 0xb4], 0
je 0x42427f
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x424262
nop
cmp dword [eax + 0xc], 1
jne 0x42425b
cmp byte [eax], 0x73
je 0x42427f
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x424250
mov ebx, 1
mov eax, dword [edi + 0xb4]
mov dword [edi + 0xb8], eax
mov dword [edi + 0xb4], 0
jmp 0x424281
xor ebx, ebx
mov ecx, esi
call fcn.00401cd0
mov ecx, eax
mov dword [ebp + 0x60], ecx
test ebx, ebx
je 0x4242a7
mov eax, dword [edi + 0xb8]
mov dword [edi + 0xb4], eax
mov dword [edi + 0xb8], 0
test ecx, ecx
je 0x428294
cmp ecx, 8
je 0x428294
cmp dword [ebp + 0x74], 3
je 0x428289
mov ebx, dword [ebp + 0x64]
mov ebx, dword [ebx + 0x14]
mov dword [ebp + 0x64], ebx
jmp 0x42409f
add ecx, 1
mov dword [0x4d49b0], ecx
adc edx, 0
mov dword [0x4d49b4], edx
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x10], esi
test esi, esi
jne 0x424370
mov edi, dword [0x4d3df0]
test edi, edi
je 0x4241d7
cmp word [edi], si
je 0x4241d7
mov esi, dword [0x4d3ef0]
test esi, esi
je 0x4241d7
push edi
push dword [esi + 4]
call fcn.0048f253
add esp, 8
test eax, eax
je 0x424331
mov esi, dword [esi + 0x10]
test esi, esi
jne 0x424315
jmp 0x4241d7
mov eax, dword [esi + 8]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x424365
mov edx, dword [ebp + 0x64]
mov eax, dword [edx + 0x1c]
test eax, eax
je 0x424350
cmp ecx, eax
je 0x424365
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x424345
push 0x4ac22c
push 0
push str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
mov ecx, edx
call fcn.0042d1e0
xor esi, esi
mov dword [ebp + 0x10], esi
test esi, esi
je 0x4241e7
cmp dword [ebp + 0x74], 3
mov ecx, dword [ebp + 0x54]
mov dword [ecx + 0xbc], esi
je 0x4282aa
mov ebx, dword [ebp + 0x64]
mov ecx, dword [esi + 8]
mov eax, dword [ebx + 0x1c]
cmp eax, dword [ecx + 0x1c]
jne 0x4282aa
mov ebx, ecx
mov dword [ebp + 0x64], ebx
jmp 0x42409f
mov esi, dword [ebp - 0x10]
add ecx, 1
mov dword [0x4d49b0], ecx
adc edx, 0
mov dword [0x4d49b4], edx
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x4243f9
mov edi, dword [0x4d3df0]
cmp word [edi], si
jne 0x4243d4
mov dword [ebp + 0x60], 1
xor ebx, ebx
jmp 0x4244d6
mov esi, dword [0x4d3f18]
test esi, esi
je 0x4243f7
nop
push edi
push dword [esi + 4]
call fcn.0048f253
add esp, 8
test eax, eax
je 0x4243f9
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x4243e0
xor esi, esi
xor ebx, ebx
mov dword [ebp + 0x60], 1
test esi, esi
je 0x4244d6
mov eax, dword [0x4d3df4]
cmp word [eax], bx
je 0x42442a
push 0x4bfe90
push eax
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x42442a
mov al, 1
jmp 0x42442c
xor al, al
lea ecx, [ebp + 0x10]
push ecx
push 0
push eax
mov ecx, esi
call fcn.004787c0
mov edi, dword [ebp + 0x10]
mov ebx, eax
test edi, edi
je 0x4244d6
mov ecx, dword [ebp + 0x64]
push 0
push edi
call fcn.00442470
test eax, eax
je 0x4241e7
mov edx, dword [ebp + 0x54]
mov ecx, dword [edx + 0xb4]
test ecx, ecx
je 0x42449a
mov eax, dword [edi + 8]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x424483
cmp dword [eax + 0xc], 1
jne 0x42447c
cmp byte [eax], 0x73
je 0x42449a
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x424471
mov esi, 1
mov dword [edx + 0xb8], ecx
mov dword [edx + 0xb4], 0
jmp 0x42449c
xor esi, esi
mov ecx, edi
call fcn.00401cd0
mov ecx, eax
mov dword [ebp + 0x60], ecx
test esi, esi
je 0x4244c5
mov edx, dword [ebp + 0x54]
mov eax, dword [edx + 0xb8]
mov dword [edx + 0xb4], eax
mov dword [edx + 0xb8], 0
test ecx, ecx
je 0x428294
cmp ecx, 8
je 0x428294
mov ecx, dword [ebp - 0x10]
test ebx, ebx
sete al
movzx eax, al
push eax
call fcn.0042cfe0
cmp dword [ebp + 0x74], 3
je 0x4282cb
mov ebx, dword [ebp + 0x64]
mov ebx, dword [ebx + 0x14]
mov dword [ebp + 0x64], ebx
jmp 0x42409f
mov edx, dword [esi + 0xc]
mov eax, edx
mov dword [ebp + 0x68], edx
sub eax, 1
je 0x424556
sub eax, 3
je 0x424537
sub eax, 5
jne 0x4245c5
mov ecx, dword [0x4d3df4]
mov edx, edi
push eax
push eax
call fcn.00413f00
mov edx, dword [ebp + 0x68]
add esp, 8
mov dword [ebp + 0x28], eax
jmp 0x4245c5
mov ecx, dword [0x4d3df0]
xor edx, edx
push 0
push 0
call fcn.00413f00
mov edx, dword [ebp + 0x68]
add esp, 8
mov dword [ebp + 0x28], eax
jmp 0x4245c5
movzx eax, byte [esi + 1]
sub eax, 0
je 0x4245bd
sub eax, 1
je 0x424580
push str.Read
push dword [0x4d3df0]
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x42459a
lea edx, [eax + 5]
jmp 0x4245c2
mov ecx, dword [0x4d3df0]
mov edx, edi
push 0
push 1
push 1
call fcn.00472b30
add esp, 0xc
test eax, eax
jne 0x4245bd
mov ecx, dword [0x4d3df0]
xor edx, edx
push 0
push 0
call fcn.00413f00
xor edx, edx
mov dword [ebp + 0x28], eax
add esp, 8
cmp eax, edx
setne dl
add edx, 3
jmp 0x4245c2
mov edx, 2
mov dword [ebp + 0x68], edx
lea eax, [edx - 3]
cmp eax, 7
ja case.0x4245d8.5
movzx eax, byte [eax + 0x428814]
jmp dword [eax*4 + 0x428808]
mov ecx, dword [0x4d3df4]
call fcn.00414970
mov dword [ebp + 0x2c], eax
test eax, eax
je 0x4282ed
mov ecx, dword [0x4d3df8]
cmp word [ecx], 0x31
jne 0x424614
cmp word [ecx + 2], 0
jne 0x424614
mov edx, dword [ebp + 0x68]
mov byte [ebp + 0x24], 1
jmp 0x4246dc
mov edx, dword [ebp + 0x68]
mov byte [ebp + 0x24], 0
jmp 0x4246dc
cmp edx, 4
jne 0x424659
mov ecx, dword [0x4d3df8]
call fcn.00414970
mov ecx, eax
mov eax, dword [0x4d3dfc]
mov dword [ebp + 0x2c], ecx
cmp word [eax], 0x31
jne 0x424650
cmp word [eax + 2], 0
jne 0x424650
mov byte [ebp + 0x24], 1
jmp 0x4246cb
mov byte [ebp + 0x24], 0
jmp 0x4246cb
mov ebx, dword [0x4d3df8]
xor edi, edi
movzx esi, word [ebx]
test esi, 0xffffff80
jne 0x42467e
push 2
push esi
call fcn.00491ac4
add esp, 8
test eax, eax
je 0x42467e
and esi, 0xffffffdf
add ebx, 2
cmp esi, 0x56
ja case.0x42468d.1
movzx eax, byte [esi + 0x428834]
jmp dword [eax*4 + 0x42881c]
or edi, 1
jmp case.0x42468d.9
or edi, 2
jmp case.0x42468d.9
or edi, 4
jmp case.0x42468d.9
mov ecx, edi
mov eax, edi
or ecx, 1
and al, 3
cmovne ecx, edi
jmp 0x4246b3
xor ecx, ecx
mov esi, dword [ebp + 0x64]
mov eax, ecx
shr eax, 2
and al, 1
mov dword [ebp + 0x2c], ecx
mov byte [ebp + 0x24], al
je 0x4246cb
and ecx, 0xfffffffb
mov dword [ebp + 0x2c], ecx
test ecx, ecx
je 0x428315
mov edx, dword [ebp + 0x68]
mov ecx, dword [0x4d3df8]
mov byte [ebp + 0x7f], 0
mov dword [ebp + 0x5c], 0
mov edi, dword [esi + 0x18]
mov ebx, edi
mov al, byte [ebx]
cmp al, 0x6c
jne 0x4246f5
mov ebx, dword [ebx + 0x14]
cmp al, 0x6c
mov dword [ebp + 0x3c], 0
mov eax, dword [ebp + 0x54]
cmovne edi, dword [ebp + 0x3c]
mov eax, dword [eax + 8]
mov dword [ebp + 0x3c], eax
mov eax, dword [ebp + 0x54]
mov eax, dword [eax + 0xc]
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x54]
mov eax, dword [eax + 0x10]
mov dword [ebp + 0x20], eax
mov eax, dword [ebp + 0x54]
mov eax, dword [eax + 0x14]
mov dword [ebp + 0x44], eax
mov eax, dword [ebp + 0x54]
mov eax, dword [eax + 0x18]
mov dword [ebp + 0x68], eax
mov eax, dword [ebp + 0x54]
mov eax, dword [eax + 0x1c]
mov dword [ebp + 0x50], eax
cmp edx, 8
je 0x42474e
mov eax, dword [ebp + 0x54]
mov dword [eax + 8], 1
mov dword [eax + 0xc], 0
lea eax, [edx - 2]
cmp eax, 8
ja case.default.0x42475a
jmp dword [eax*4 + 0x42888c]
cmp byte [esi + 1], 0
jbe 0x424776
push 0
mov ecx, esi
call fcn.00420900
mov byte [ebp - 0x18], 0
jmp 0x424788
xorps xmm0, xmm0
mov byte [ebp - 0x18], 1
movlpd qword [ebp + 0x18], xmm0
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
push dword [ebp - 0x18]
mov ecx, esi
push edx
push eax
push edi
lea eax, [ebp + 0x5c]
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.0042a710
mov dword [ebp + 0x60], eax
jmp case.default.0x42475a
lea eax, [ebp + 0x5c]
mov ecx, esi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.0042a860
mov dword [ebp + 0x60], eax
jmp case.default.0x42475a
push edi
lea eax, [ebp + 0x5c]
mov ecx, esi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.0042aa00
mov dword [ebp + 0x60], eax
jmp case.default.0x42475a
push 0x4c40bc
push ecx
call fcn.0048f253
add esp, 8
mov ecx, esi
test eax, eax
lea eax, [ebp + 0x5c]
push edi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
je 0x42480a
call fcn.0042b8c0
mov dword [ebp + 0x60], eax
jmp case.default.0x42475a
call fcn.0042bc20
mov dword [ebp + 0x60], eax
jmp case.default.0x42475a
lea ecx, [ebp - 0x74]
call fcn.00414c70
mov dword [ebp - 0x74], vtable.TextFile.0
mov dword [ebp - 0x40], 0xffffffff
mov dword [ebp - 4], 0
mov ecx, dword [0x4d3df4]
cmp word [ecx], 0
je 0x42489d
mov eax, dword [ebp + 0x54]
mov eax, dword [eax + 0xfc]
and eax, 0x7fffffff
push eax
push 0x30c
push ecx
lea ecx, [ebp - 0x74]
call fcn.00470830
test al, al
je 0x42489d
push dword [0x4d3df8]
lea eax, [ebp - 0x74]
mov ecx, esi
push eax
push edi
lea eax, [ebp + 0x5c]
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.0042bf60
lea ecx, [ebp - 0x74]
mov dword [ebp + 0x60], eax
call fcn.00414cd0
lea ecx, [ebp - 0x74]
mov dword [ebp - 4], 0xffffffff
call fcn.00414d70
jmp case.default.0x42475a
lea ecx, [ebp - 0x74]
mov dword [ebp + 0x60], 1
mov dword [ebp - 4], 0xffffffff
call fcn.00414d70
jmp case.default.0x42475a
mov eax, dword [0x4d3df4]
cmp edx, 3
mov ecx, esi
cmove eax, dword [0x4d3df0]
push eax
push dword [ebp + 0x24]
lea eax, [ebp + 0x5c]
push dword [ebp + 0x2c]
push edi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.0042afd0
mov dword [ebp + 0x60], eax
jmp case.default.0x42475a
lea eax, [ebp + 0x43]
push eax
cmp edx, 4
jne 0x42490d
mov ecx, dword [0x4d3df0]
xor edx, edx
push 0
call fcn.00413f00
mov esi, eax
mov eax, dword [0x4d3df4]
mov dword [ebp], eax
jmp 0x424926
mov ecx, dword [0x4d3df4]
lea eax, [ebp]
push eax
mov edx, 1
call fcn.00413f00
mov esi, eax
mov eax, dword [ebp]
add esp, 8
test esi, esi
je 0x42495e
mov ecx, dword [ebp + 0x64]
push eax
push esi
push dword [ebp + 0x28]
lea eax, [ebp + 0x5c]
push dword [ebp + 0x24]
push dword [ebp + 0x2c]
push edi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.0042b3e0
cmp byte [ebp + 0x43], 0
mov dword [ebp + 0x60], eax
je 0x424965
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x424965
mov dword [ebp + 0x60], 1
mov esi, dword [ebp + 0x64]
mov ecx, dword [ebp + 0x54]
mov eax, dword [ebp + 0x3c]
mov dword [ecx + 8], eax
mov eax, dword [ebp + 0x14]
mov dword [ecx + 0xc], eax
mov eax, dword [ebp + 0x20]
mov dword [ecx + 0x10], eax
mov eax, dword [ebp + 0x44]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp + 0x68]
mov dword [ecx + 0x18], eax
mov eax, dword [ebp + 0x50]
mov dword [ecx + 0x1c], eax
mov eax, dword [ebp + 0x60]
test eax, eax
je 0x428345
cmp eax, 7
je 0x428345
cmp eax, 8
je 0x428345
cmp byte [ebp + 0x7f], 0
jne 0x42409c
mov ecx, dword [ebp + 0x5c]
test ecx, ecx
je 0x4249d3
mov eax, dword [ecx + 0x1c]
cmp eax, dword [esi + 0x1c]
jne 0x42833d
mov ebx, ecx
mov dword [ebp + 0x64], ebx
jmp 0x42409f
cmp dword [ebp + 0x74], 3
je 0x4282b2
mov dword [ebp + 0x64], ebx
jmp 0x42409f
mov edi, dword [ebp + 0x54]
mov al, byte [edi + 0x108]
mov byte [ebp + 0x33], al
cmp bl, 0x70
jne 0x424a21
mov ecx, dword [0x4d3d98]
lea esi, [edi + 0x100]
test ecx, ecx
je 0x424a15
push dword [esi]
call fcn.00475220
test eax, eax
je 0x42835c
mov ecx, esi
call fcn.0042d9b0
mov esi, dword [ebp + 0x64]
jmp 0x424a28
mov byte [edi + 0x108], 1
mov dword [ebp + 0x5c], 0
mov eax, dword [esi + 0x14]
cmp byte [eax], 0x73
jne 0x424a63
mov edi, dword [ebp + 0x78]
nop word [eax + eax]
lea ecx, [ebp + 0x5c]
push ecx
mov ecx, dword [eax + 0x14]
push edi
push 2
call fcn.00423dc0
mov ecx, dword [ebp + 0x5c]
mov edx, eax
mov dword [ebp + 0x60], edx
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x424a40
mov edi, dword [ebp + 0x54]
jmp 0x424a7b
lea ecx, [ebp + 0x5c]
push ecx
push dword [ebp + 0x78]
mov ecx, eax
push 3
call fcn.00423dc0
mov ecx, dword [ebp + 0x5c]
mov edx, eax
mov dword [ebp + 0x60], edx
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x64], esi
cmp bl, 0x6f
jne 0x424ade
mov al, byte [ebp + 0x33]
xor bl, bl
mov byte [edi + 0x108], al
mov al, byte [esi]
cmp al, 0x70
jne 0x424ab0
cmp dword [edi + 0x100], 0
mov bl, 1
jne 0x42409c
mov eax, dword [esi + 0x18]
mov esi, eax
mov dword [ebp + 0x64], esi
mov al, byte [eax]
cmp al, 0x71
je 0x424ae8
test bl, bl
jne 0x424b3b
cmp dword [edi + 0x100], 0
je 0x424b3b
lea ecx, [edi + 0x100]
call fcn.0042d9b0
mov edx, 1
mov dword [ebp + 0x60], edx
jmp 0x424b38
cmp bl, 0x70
jne 0x424b3b
cmp byte [esi], 0x71
jne 0x424b3b
cmp edx, 1
jne 0x424af5
test ecx, ecx
je 0x42409c
mov ebx, dword [ebp + 0x54]
lea eax, [ebp - 0x1c]
mov edi, dword [edi + 0x100]
mov ecx, esi
push eax
push 0
push 3
mov dword [ebp + 0x50], edi
mov dword [ebx + 0x100], 0
call fcn.00423dc0
mov esi, eax
cmp esi, 1
jne 0x428386
cmp dword [ebp - 0x1c], 0
jne 0x428386
mov edx, dword [ebp + 0x60]
mov dword [ebx + 0x100], edi
mov ecx, dword [ebp + 0x5c]
cmp dword [ebp + 0x74], 3
je 0x42826e
cmp edx, 1
jne 0x42826e
mov ebx, dword [ebp + 0x64]
test ecx, ecx
je 0x42409f
mov eax, dword [ecx + 0x1c]
cmp eax, dword [ebx + 0x1c]
jne 0x4283dc
mov ebx, ecx
mov dword [ebp + 0x64], ebx
jmp 0x42409f
mov esi, dword [esi + 0x14]
jmp 0x424099
cmp dword [esi + 0xc], 1
je 0x424096
mov ecx, dword [esi + 0x14]
lea eax, [ebp + 0x5c]
push eax
push dword [ebp + 0x78]
push 2
call fcn.00423dc0
mov ecx, dword [ebp + 0x5c]
mov dword [ebp + 0x60], eax
cmp ecx, esi
je 0x42409c
cmp dword [ebp + 0x74], 3
je 0x4283fa
cmp eax, 1
jne 0x4283fa
test ecx, ecx
je 0x424096
mov eax, dword [esi + 0x1c]
cmp eax, dword [ecx + 0x1c]
jmp 0x424122
mov ebx, dword [0x4d3d98]
add ecx, 1
mov edi, dword [0x4ce8c8]
adc edx, 0
mov dword [0x4d49b0], ecx
mov dword [0x4d49b4], edx
mov cl, byte [esi]
movzx eax, cl
dec eax
mov dword [ebp + 0x68], ebx
mov dword [ebp + 0x44], edi
cmp eax, 0xdf
ja case.0x424c02.8
movzx eax, byte [eax + 0x428b34]
jmp dword [eax*4 + 0x4288b0]
mov ecx, esi
call fcn.0043b6c0
mov ecx, eax
jmp 0x42823e
cmp byte [esi + 1], 1
mov edx, dword [0x4d3df4]
jbe 0x424ca4
mov eax, dword [esi + 8]
cmp byte [eax + 0x11], 0
je 0x424c43
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x424c5d
push dword [eax + 4]
mov ecx, ebx
push dword [eax]
call fcn.00413560
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3d9c]
test ecx, ecx
je 0x424ca4
cmp word [edx], 0
jne 0x424ca4
mov al, byte [ecx + 0x17]
test al, al
jne 0x424c7a
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
movzx eax, al
sub eax, 1
je 0x424c95
sub eax, 2
jne 0x424ca4
mov ecx, ebx
call fcn.00475330
mov ecx, eax
jmp 0x42823e
push ecx
mov ecx, ebx
call fcn.004750d0
mov ecx, eax
jmp 0x42823e
push 1
push 0
push 0xffffffffffffffff
push edx
mov ecx, ebx
call fcn.00475930
mov ecx, eax
jmp 0x42823e
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x424cd8
cmp byte [eax + 0x11], 0
jne 0x424cd8
mov dword [ebp + 0x44], 1
mov edi, 1
xor esi, esi
jmp 0x424d2c
mov esi, dword [0x4d3d9c]
mov ecx, dword [0x4d3df4]
mov dword [ebp + 0x44], 0
test esi, esi
je 0x424d15
cmp word [ecx], 0
jne 0x424d15
mov al, byte [esi + 0x17]
test al, al
jne 0x424d02
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x424d15
test esi, esi
je 0x424d17
push 1
mov ecx, esi
call fcn.004135b0
jmp 0x424d2a
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.00472b30
add esp, 0xc
mov edi, eax
push 1
mov ecx, ebx
call fcn.004135b0
mov ecx, dword [0x4d3df8]
mov ebx, eax
movzx ecx, word [ecx]
test cx, cx
je 0x424ec7
call fcn.0040ab40
movzx ecx, ax
push ecx
push str.SMHD
call fcn.0048c759
add esp, 8
test eax, eax
je 0x424ec7
test edi, edi
jne 0x424d7e
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
cmp dword [ebp + 0x44], 0
je 0x424d99
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x1c]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
call fcn.004a50d0
jmp 0x424db3
test esi, esi
je 0x424da8
push 0
mov ecx, esi
call fcn.00413790
jmp 0x424db3
mov ecx, dword [0x4d3df4]
call fcn.00413520
mov ebx, dword [ebp + 0x68]
mov ecx, ebx
push 0
push 1
movsd qword [ebp + 0x4c], xmm0
call fcn.00401c20
cmp word [eax], 0
je 0x424e10
push 0
push 1
mov ecx, ebx
call fcn.00401c20
push 0
lea edx, [ebp - 0x3c]
mov ecx, eax
call fcn.00472780
add esp, 4
lea eax, [ebp + 4]
push eax
lea eax, [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
test eax, eax
jne 0x424e28
push 1
push eax
push 0xffffffffffffffff
push 0x4ac22c
mov ecx, ebx
call fcn.00475930
mov ecx, eax
jmp 0x42823e
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea eax, [ebp + 4]
push eax
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov eax, dword [0x4d3df8]
mov cx, word [eax]
call fcn.0040ab40
movzx eax, ax
add eax, 0xffffffbc
cmp eax, 0xf
ja case.0x424e47.69
movzx eax, byte [eax + 0x428c28]
jmp dword [eax*4 + 0x428c14]
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4c95f0]
jmp 0x424e8f
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4c9600]
jmp 0x424e8f
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4c9610]
jmp 0x424e8f
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4c9618]
jmp 0x424e8f
movsd xmm0, qword [ebp + 0x4c]
mov edi, dword [ebp + 8]
call fcn.004a4f7f
add dword [ebp + 4], eax
lea ecx, [ebp - 0x890]
push 0
adc edi, edx
lea edx, [ebp + 4]
mov dword [ebp + 8], edi
call fcn.00472980
add esp, 4
mov ecx, ebx
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.00475930
mov ecx, eax
jmp 0x42823e
cmp edi, 2
je 0x424f24
cmp ebx, 2
je 0x424f24
cmp dword [ebp + 0x44], 0
je 0x424ee7
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x1c]
mov esi, dword [eax]
mov edi, dword [eax + 4]
jmp 0x424f05
test esi, esi
je 0x424ef6
push 0
mov ecx, esi
call fcn.00413690
jmp 0x424f01
mov ecx, dword [0x4d3df4]
call fcn.004134f0
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00413690
mov ecx, dword [ebp + 0x68]
add eax, esi
adc edx, edi
push edx
push eax
call fcn.00413560
mov ecx, eax
jmp 0x42823e
cmp dword [ebp + 0x44], 0
je 0x424f3f
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x1c]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
call fcn.004a50d0
jmp 0x424f59
test esi, esi
je 0x424f4e
push 0
mov ecx, esi
call fcn.00413790
jmp 0x424f59
mov ecx, dword [0x4d3df4]
call fcn.00413520
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.00413790
addsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.00413580
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df8]
movzx ecx, word [eax]
test cx, cx
je 0x425072
call fcn.0040ab40
movzx eax, ax
push eax
push str.SMHD
call fcn.0048c759
add esp, 8
test eax, eax
je 0x425072
mov ecx, dword [0x4d3d9c]
mov esi, dword [0x4d3df4]
test ecx, ecx
je 0x424fe4
cmp word [esi], 0
jne 0x424fe4
mov al, byte [ecx + 0x17]
test al, al
jne 0x424fd1
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x424fe4
test ecx, ecx
je 0x424fe4
push 0
push 1
call fcn.00401c20
mov esi, eax
lea eax, [ebp + 0x32]
mov ecx, ebx
push eax
push 0
push 1
call fcn.00401c20
mov edx, eax
mov ecx, esi
call fcn.00472a50
add esp, 4
mov esi, eax
cmp byte [ebp + 0x32], 0
mov edi, edx
je 0x425022
push 1
push 0
push 0xffffffffffffffff
push 0x4ac22c
mov ecx, ebx
call fcn.00475930
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df8]
mov cx, word [eax]
call fcn.0040ab40
movzx eax, ax
cmp eax, 0x44
je 0x425050
cmp eax, 0x48
je 0x425047
cmp eax, 0x4d
jne 0x425062
push 0
push 0x3c
jmp 0x425057
push 0
push 0xe10
jmp 0x425057
push 0
push 0x15180
push edi
push esi
call fcn.004a4730
mov esi, eax
mov edi, edx
push edi
push esi
mov ecx, ebx
call fcn.00413560
mov ecx, eax
jmp 0x42823e
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x42508c
cmp byte [eax + 0x11], 0
jne 0x42508c
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x4250da
mov esi, dword [0x4d3d9c]
xor ebx, ebx
mov ecx, dword [0x4d3df4]
test esi, esi
je 0x4250c3
cmp word [ecx], bx
jne 0x4250c3
mov al, byte [esi + 0x17]
test al, al
jne 0x4250b0
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x4250c3
test esi, esi
je 0x4250c5
push 1
mov ecx, esi
call fcn.004135b0
jmp 0x4250d8
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.00472b30
add esp, 0xc
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.004135b0
cmp edi, 2
je 0x42513f
cmp eax, 2
je 0x42513f
test ebx, ebx
je 0x425102
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x1c]
mov esi, dword [eax]
mov edi, dword [eax + 4]
jmp 0x425120
test esi, esi
je 0x425111
push 0
mov ecx, esi
call fcn.00413690
jmp 0x42511c
mov ecx, dword [0x4d3df4]
call fcn.004134f0
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00413690
mov ecx, dword [ebp + 0x68]
sub eax, esi
sbb edx, edi
push edx
push eax
call fcn.00413560
mov ecx, eax
jmp 0x42823e
test ebx, ebx
je 0x425158
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x1c]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
call fcn.004a50d0
jmp 0x425172
test esi, esi
je 0x425167
push 0
mov ecx, esi
call fcn.00413790
jmp 0x425172
mov ecx, dword [0x4d3df4]
call fcn.00413520
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.00413790
subsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.00413580
mov ecx, eax
jmp 0x42823e
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x4251b2
cmp byte [eax + 0x11], 0
jne 0x4251b2
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x425200
mov esi, dword [0x4d3d9c]
xor ebx, ebx
mov ecx, dword [0x4d3df4]
test esi, esi
je 0x4251e9
cmp word [ecx], bx
jne 0x4251e9
mov al, byte [esi + 0x17]
test al, al
jne 0x4251d6
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x4251e9
test esi, esi
je 0x4251eb
push 1
mov ecx, esi
call fcn.004135b0
jmp 0x4251fe
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.00472b30
add esp, 0xc
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.004135b0
cmp edi, 2
je 0x42526a
cmp eax, 2
je 0x42526a
test ebx, ebx
je 0x425228
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax]
mov esi, dword [eax + 4]
jmp 0x425246
test esi, esi
je 0x425237
push 0
mov ecx, esi
call fcn.00413690
jmp 0x425242
mov ecx, dword [0x4d3df4]
call fcn.004134f0
mov esi, edx
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00413690
push esi
push edi
push edx
push eax
call fcn.004a4680
mov ecx, dword [ebp + 0x68]
push edx
push eax
call fcn.00413560
mov ecx, eax
jmp 0x42823e
test ebx, ebx
je 0x425283
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x1c]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
call fcn.004a50d0
jmp 0x42529d
test esi, esi
je 0x425292
push 0
mov ecx, esi
call fcn.00413790
jmp 0x42529d
mov ecx, dword [0x4d3df4]
call fcn.00413520
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.00413790
mulsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.00413580
mov ecx, eax
jmp 0x42823e
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x4252dd
cmp byte [eax + 0x11], 0
jne 0x4252dd
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x42532b
mov esi, dword [0x4d3d9c]
xor ebx, ebx
mov ecx, dword [0x4d3df4]
test esi, esi
je 0x425314
cmp word [ecx], bx
jne 0x425314
mov al, byte [esi + 0x17]
test al, al
jne 0x425301
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x425314
test esi, esi
je 0x425316
push 1
mov ecx, esi
call fcn.004135b0
jmp 0x425329
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.00472b30
add esp, 0xc
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.004135b0
cmp edi, 2
je 0x4253b7
cmp eax, 2
je 0x4253b7
test ebx, ebx
je 0x42535b
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0x1c]
mov esi, dword [eax]
mov edi, dword [eax + 4]
jmp 0x425379
test esi, esi
je 0x42536a
push 0
mov ecx, esi
call fcn.00413690
jmp 0x425375
mov ecx, dword [0x4d3df4]
call fcn.004134f0
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
mov eax, esi
or eax, edi
jne 0x425396
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.00475930
mov ecx, eax
jmp 0x42823e
push 0
call fcn.00413690
push edi
push esi
push edx
push eax
call fcn.004a4730
mov ecx, dword [ebp + 0x68]
push edx
push eax
call fcn.00413560
mov ecx, eax
jmp 0x42823e
test ebx, ebx
je 0x4253d0
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x1c]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
call fcn.004a50d0
jmp 0x4253ea
test esi, esi
je 0x4253df
push 0
mov ecx, esi
call fcn.00413790
jmp 0x4253ea
mov ecx, dword [0x4d3df4]
call fcn.00413520
mov ecx, dword [ebp + 0x68]
xorps xmm1, xmm1
ucomisd xmm0, xmm1
movsd qword [ebp + 0x4c], xmm0
lahf
test ah, 0x44
jp 0x425413
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.00475930
mov ecx, eax
jmp 0x42823e
push 0
call fcn.00413790
divsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.00413580
mov ecx, eax
jmp 0x42823e
push 2
mov ecx, esi
call fcn.00420900
mov esi, eax
test esi, esi
jns 0x425444
xor esi, esi
jmp 0x425453
mov ecx, dword [ebp + 0x64]
push 1
call fcn.00420860
cmp esi, eax
cmovg esi, eax
sub esp, 8
mov ecx, ebx
push esi
push dword [0x4d3df4]
call fcn.00401be0
mov ecx, eax
jmp 0x42823e
push 2
mov ecx, esi
call fcn.00420900
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.00420860
mov ecx, eax
mov eax, dword [0x4d3df4]
cmp esi, ecx
cmova esi, ecx
sub esp, 8
sub ecx, esi
push esi
lea eax, [eax + ecx*2]
mov ecx, ebx
push eax
call fcn.00401be0
mov ecx, eax
jmp 0x42823e
cmp byte [esi + 1], 4
jb 0x4254e1
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x34]
cmp word [eax], 0
je 0x4254e1
push 3
mov ecx, esi
call fcn.00420900
mov edi, eax
cmp edi, 1
jge 0x4254e6
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, ebx
call fcn.00475930
mov ecx, eax
jmp 0x42823e
mov edi, SysReAllocString
push 2
mov ecx, esi
call fcn.00420900
mov ecx, dword [0x4d3e00]
mov esi, eax
mov cx, word [ecx]
call fcn.0040ab40
cmp ax, 0x4c
jne 0x42551e
cmp esi, 1
jl 0x4254cb
mov edx, 1
mov eax, edx
sub eax, edi
add esi, eax
cmp esi, edx
jge 0x425529
dec edi
add edi, esi
jmp 0x425523
mov edx, 1
cmp esi, 1
cmovl esi, edx
mov ecx, dword [ebp + 0x64]
push 1
call fcn.00420860
mov ecx, eax
cmp ecx, esi
jb 0x4254cb
mov eax, 1
sub eax, esi
add ecx, eax
mov eax, dword [0x4d3df4]
cmp edi, ecx
cmova edi, ecx
sub esp, 8
lea eax, [eax + esi*2]
mov ecx, ebx
add eax, 0xfffffffe
push edi
push eax
call fcn.00401be0
mov ecx, eax
jmp 0x42823e
push 2
mov ecx, esi
call fcn.00420900
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.00420860
cmp esi, eax
mov ecx, ebx
cmova esi, eax
sub esp, 8
sub eax, esi
push eax
mov eax, dword [0x4d3df4]
lea eax, [eax + esi*2]
push eax
call fcn.00401be0
mov ecx, eax
jmp 0x42823e
push 2
mov ecx, esi
call fcn.00420900
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.00420860
cmp esi, eax
mov ecx, ebx
cmova esi, eax
sub esp, 8
sub eax, esi
push eax
push dword [0x4d3df4]
call fcn.00401be0
mov ecx, eax
jmp 0x42823e
push 1
push 1
mov ecx, ebx
call fcn.00401c20
mov esi, eax
cmp esi, dword [0x4d3df4]
jne 0x425601
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x4255fc
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x425652
mov edi, dword [ebp + 0x64]
mov ecx, edi
push 1
push 0
push 1
call fcn.00420860
push eax
push 0
mov ecx, ebx
call fcn.00475930
cmp eax, 1
jne 0x4241e7
push 0
push eax
mov ecx, ebx
call fcn.00401c20
mov ecx, dword [0x4d3df4]
mov esi, eax
mov edx, esi
sub edx, ecx
nop word [eax + eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [ecx + edx - 2], ax
test ax, ax
jne 0x425640
jmp 0x425655
mov edi, dword [ebp + 0x64]
mov eax, dword [0x4d3df8]
movzx ecx, word [eax]
test cx, cx
je 0x425690
call fcn.0040ab40
cmp ax, 0x54
jne 0x425690
mov eax, dword [0x4d3df8]
cmp word [eax + 2], 0
jne 0x425690
mov ecx, esi
call fcn.00413200
push 0
mov ecx, ebx
call fcn.00413c00
mov ecx, eax
jmp 0x42823e
cmp byte [edi], 0x31
push esi
jne 0x4256ac
call dword [sym.imp.USER32.dll_CharLowerW]
push 0
mov ecx, ebx
call fcn.00413c00
mov ecx, eax
jmp 0x42823e
call dword [sym.imp.USER32.dll_CharUpperW]
push 0
mov ecx, ebx
call fcn.00413c00
mov ecx, eax
jmp 0x42823e
mov esi, dword [0x4d3d9c]
test esi, esi
je 0x42572f
cmp byte [esi + 0x17], 0
jne 0x4256da
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x15]
jmp 0x4256dd
mov al, byte [esi + 0x15]
test al, 1
je 0x42572f
cmp byte [esi + 0x17], 0
jne 0x4256ea
mov esi, dword [esi + 0xc]
cmp byte [esi + 0x17], 1
jne 0x425715
test byte [esi + 0x15], 8
je 0x4256fd
mov ecx, esi
call fcn.00401b40
lea eax, [esi + 0xc]
mov ecx, ebx
mov eax, dword [eax]
shr eax, 1
push 0
push eax
call fcn.00413560
mov ecx, eax
jmp 0x42823e
mov eax, 0x4d5644
mov ecx, ebx
push 0
mov eax, dword [eax]
shr eax, 1
push eax
call fcn.00413560
mov ecx, eax
jmp 0x42823e
mov ecx, dword [ebp + 0x64]
push 1
call fcn.00420860
push 0
push eax
mov ecx, ebx
call fcn.00413560
mov ecx, eax
jmp 0x42823e
mov ebx, dword [0x4d3dfc]
mov dword [ebp + 0x50], ebx
mov dword [ebp + 0x3c], 0xffffffff
movzx ecx, word [ebx]
test cx, cx
je 0x425798
call fcn.0040ab40
movzx eax, ax
push eax
push 0x4c41a8
call fcn.0048c759
add esp, 8
test eax, eax
je 0x425798
cmp word [ebx + 2], 0
lea ecx, [ebx + 2]
je 0x425798
call fcn.0040df30
mov dword [ebp + 0x20], eax
test eax, eax
jle 0x425892
jmp 0x42579f
mov dword [ebp + 0x20], 1
mov ebx, dword [0x4d3df8]
cmp word [ebx], 0
jne 0x4257b7
mov dword [ebp + 0x3c], 0
jmp 0x425892
mov eax, dword [0x4d3df4]
mov ecx, esi
push 4
mov dword [ebp + 0x14], eax
call fcn.00420900
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.00420860
mov edi, eax
cmp esi, edi
jge 0x425892
mov eax, dword [ebp + 0x50]
movzx ecx, word [eax]
cmp ecx, 0x31
je 0x425862
call fcn.0040ab40
cmp ax, 0x52
je 0x425862
mov ecx, dword [ebp + 0x64]
push 2
call fcn.00420860
mov dword [ebp + 0x50], eax
mov edi, 1
mov eax, dword [ebp + 0x14]
lea ecx, [eax + esi*2]
mov esi, dword [ebp + 0x20]
nop dword [eax]
mov edx, dword [0x4ce8c8]
mov dl, byte [edx + 0xf2]
test dl, dl
jne 0x425839
mov edx, ebx
call fcn.004730c0
jmp 0x425851
cmp dl, 2
jne 0x425847
mov edx, ebx
call fcn.00473300
jmp 0x425851
push ebx
push ecx
call fcn.0048c820
add esp, 8
test eax, eax
je 0x425892
cmp edi, esi
je 0x425884
mov ecx, dword [ebp + 0x50]
inc edi
lea ecx, [eax + ecx*2]
jmp 0x425820
mov eax, dword [ebp + 0x44]
sub edi, esi
push dword [ebp + 0x20]
mov edx, edi
movzx eax, byte [eax + 0xf2]
push eax
push ebx
mov ebx, dword [ebp + 0x14]
mov ecx, ebx
call fcn.00472e90
add esp, 0xc
jmp 0x425887
mov ebx, dword [ebp + 0x14]
test eax, eax
je 0x425892
sub eax, ebx
sar eax, 1
mov dword [ebp + 0x3c], eax
mov esi, dword [ebp + 0x3c]
mov ecx, 0x4ac300
push 1
push 0
test esi, esi
mov eax, 0x4bf994
push 0xffffffffffffffff
cmovns eax, ecx
mov ecx, dword [0x4d166c]
push eax
call fcn.00475930
mov ecx, dword [ebp + 0x68]
push esi
call fcn.00404ab0
mov ecx, eax
jmp 0x42823e
mov ecx, esi
call fcn.0043bbb0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, esi
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00430e10
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, esi
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.0043be60
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df0]
mov ecx, esi
call fcn.0043c770
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df4]
mov ecx, esi
push dword [0x4d3df0]
call fcn.0043cdd0
mov ecx, eax
jmp 0x42823e
push 0
push dword [0x4d3e10]
mov ecx, esi
push 7
call fcn.00420900
push eax
push 6
mov ecx, esi
call fcn.00420900
push eax
push 5
mov ecx, esi
call fcn.00420900
push eax
push 4
mov ecx, esi
call fcn.00420900
push eax
push 3
mov ecx, esi
call fcn.00420900
push eax
push 2
mov ecx, esi
call fcn.00420900
push eax
mov ecx, esi
call fcn.00437880
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e08]
mov ecx, esi
push 5
call fcn.00420900
push eax
push 4
mov ecx, esi
call fcn.00420900
push eax
push 3
mov ecx, esi
call fcn.00420900
push eax
push 2
mov ecx, esi
call fcn.00420900
push eax
mov ecx, esi
call fcn.00438060
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, esi
push 2
call fcn.00420900
push eax
push 1
mov ecx, esi
call fcn.00420900
push eax
mov ecx, esi
call fcn.00450280
mov ecx, eax
jmp 0x42823e
cmp cl, 0x42
push 0
push dword [edi + 0xd4]
sete dl
mov ecx, dword [0x4d3df0]
call fcn.0040e240
add esp, 8
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
xor eax, eax
cmp dword [edi + 0xd4], 3
push 0
sete al
xor dl, dl
lea eax, [eax*2 + 1]
push eax
jmp 0x425a0c
push 0
push 2
xor dl, dl
jmp 0x425a0c
push 0
push 0
xor dl, dl
jmp 0x425a0c
mov ecx, dword [0x4d3df0]
call fcn.0040fef0
mov ecx, eax
jmp 0x42823e
push 0x4ac22c
push 0x4ac22c
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
mov edx, dword [0x4d3df0]
push dword [0x4d3df4]
call fcn.004101d0
add esp, 0x20
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e04]
push dword [0x4d3dfc]
push dword [0x4d3e08]
push dword [0x4d3e00]
push 0x4ac22c
push 0x4ac22c
jmp 0x425a8b
push 0x4ac22c
push 0x4ac22c
push dword [0x4d3dfc]
mov edx, 0x4ac22c
push dword [0x4d3df8]
push 0x4ac22c
push 0x4ac22c
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.004101d0
add esp, 0x20
mov ecx, eax
jmp 0x42823e
push 4
mov ecx, esi
call fcn.00420900
push eax
mov ecx, esi
call fcn.0043aab0
mov ecx, eax
jmp 0x42823e
mov edx, dword [0x4d3df0]
cmp cl, 0x76
push 0
push 0
sete al
mov ecx, edi
movzx eax, al
push eax
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00476720
add esp, 0x18
test eax, eax
je case.0x424c02.3
mov eax, dword [0x4ce8c8]
mov ecx, dword [eax + 0x54]
cmp ecx, 0xffffffff
jle case.0x424c02.3
mov edx, 1
call fcn.00401e60
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 9
push str.ahk_group
push dword [0x4d3df0]
call fcn.00491336
mov edx, dword [0x4d3dfc]
add esp, 0xc
test eax, eax
jne 0x425bc2
mov eax, dword [0x4d3df4]
cmp word [eax], 0
jne 0x425bc2
cmp word [edx], 0
jne 0x425bc2
mov bl, 1
jmp 0x425bc4
xor bl, bl
xor ecx, ecx
mov eax, 0x14
test bl, bl
cmovne eax, ecx
mov dword [ebp + 0x3c], eax
mov al, byte [esi]
cmp al, 0x82
je 0x425be7
cmp al, 0x83
je 0x425be7
mov eax, dword [0x4d3df8]
cmp word [eax], cx
jmp 0x425c22
mov eax, dword [0x4d3df8]
cmp word [eax], cx
je 0x425c19
push 2
mov ecx, esi
call fcn.004209c0
mulsd xmm0, qword [0x4c95c8]
mov eax, 0x1f4
mov edx, dword [0x4d3dfc]
cvttsd2si ecx, xmm0
test ecx, ecx
cmove ecx, eax
mov dword [ebp + 0x3c], ecx
mov eax, dword [0x4d3e00]
cmp word [eax], 0
jne 0x425c75
test bl, bl
je 0x425c75
mov edi, dword [0x4d3df0]
add edi, 0x12
movzx eax, word [edi]
cmp eax, 0x20
je 0x425c3e
cmp eax, 9
jne 0x425c43
add edi, 2
jmp 0x425c31
test ax, ax
je 0x425c72
mov esi, dword [0x4d3f18]
test esi, esi
je 0x425c6f
push edi
push dword [esi + 4]
call fcn.0048f253
add esp, 8
test eax, eax
je 0x425ca1
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x425c52
mov edx, dword [0x4d3dfc]
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x44]
mov al, byte [esi]
cmp al, 0x82
je 0x425cb9
cmp al, 0x83
je 0x425cbb
push edx
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
push dword [0x4d3df0]
push eax
call fcn.00432a00
mov ecx, eax
jmp 0x42823e
mov eax, dword [ebp + 0x64]
mov ecx, esi
push dword [ebp + 0x3c]
movzx eax, byte [eax]
push eax
call fcn.004786a0
mov ecx, eax
jmp 0x42823e
cmp al, 0x83
sete al
mov ecx, edi
movzx eax, al
push eax
push dword [0x4d3e00]
push edx
push dword [ebp + 0x3c]
mov edx, dword [0x4d3df0]
push dword [0x4d3df4]
call fcn.00476a00
add esp, 0x14
jmp 0x425b58
push dword [0x4d3df4]
mov ecx, esi
call fcn.00436f00
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df4]
push dword [0x4d3df0]
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
test eax, eax
sete al
mov ecx, esi
movzx eax, al
push eax
call fcn.0042cfe0
mov ecx, eax
jmp 0x42823e
lea eax, [ebp - 0x24]
push eax
push 0x3a98
push 1
push str.Environment
push 0
push 0x1a
push 0xffff
call dword [sym.imp.USER32.dll_SendMessageTimeoutW]
jmp 0x425d0d
push dword [0x4d3df4]
mov ecx, esi
push dword [0x4d3df0]
call fcn.00451b00
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3df0]
mov edx, 0x4d49c8
push 0xffffffffffffffff
call fcn.00470540
mov ecx, dword [0x4d3df4]
mov edx, 0x4d49d4
push 0xffffffffffffffff
call fcn.00470540
mov ecx, dword [0x4d3df8]
mov edx, 0x4d49e0
push 0xffffffffffffffff
call fcn.00470540
add esp, 0xc
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov ecx, dword [0x4d3df8]
mov edx, str.UseErrorLevel
call fcn.004730c0
test eax, eax
mov ecx, 0x4d3ee0
mov al, 3
setne bl
cmp al, byte [esi + 1]
mov byte [ebp - 0x20], bl
sbb eax, eax
and eax, dword [0x4d3da4]
push eax
push 1
push dword [ebp - 0x20]
mov al, bl
push 0
push dword [0x4d3df8]
xor al, 1
movzx eax, al
push eax
push dword [0x4d3df4]
push 0
push dword [0x4d3df0]
call fcn.0042e050
mov ecx, eax
mov dword [ebp + 0x68], ecx
test bl, bl
je 0x428241
push 1
test ecx, ecx
mov eax, 0x4ac300
push 0
mov ecx, str.ERROR
cmove eax, ecx
mov ecx, dword [0x4d166c]
push 0xffffffffffffffff
push eax
call fcn.00475930
mov ecx, eax
jmp 0x42823e
mov ecx, esi
call fcn.00432af0
mov ecx, eax
jmp 0x42823e
cmp byte [esi + 1], 2
mov ecx, esi
jbe 0x425e85
push dword [0x4d3e0c]
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.004331a0
mov ecx, eax
jmp 0x42823e
push 0x4ac22c
push 0x4ac22c
push 0x4ac22c
push 0x4ac22c
push dword [0x4d3df4]
push dword [0x4d3df0]
push 0x4ac22c
push 0x4ac22c
call fcn.004331a0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e18]
mov ecx, esi
push dword [0x4d3e14]
push dword [0x4d3e10]
push dword [0x4d3e0c]
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00450670
mov ecx, eax
jmp 0x42823e
cmp cl, 0x47
mov ecx, esi
sete al
movzx eax, al
push eax
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.004332d0
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3dfc]
mov dl, 1
push 0
call fcn.0040df60
add esp, 4
mov byte [ebp + 0xc], al
test al, al
jne 0x425f7b
push dword [0x4d3dfc]
mov ecx, esi
push 0
push str.Parameter_4_invalid.
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3e00]
cmp word [eax], 0
je 0x425f91
push 4
mov ecx, esi
call fcn.00420900
jmp 0x425f96
mov eax, 1
push dword [0x4d3e0c]
mov ecx, esi
push dword [0x4d3e08]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
push dword [0x4d3e04]
push eax
push dword [ebp + 0xc]
call fcn.00433390
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e10]
mov ecx, esi
push dword [0x4d3e0c]
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.004339a0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e10]
mov ecx, esi
push dword [0x4d3e0c]
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
call fcn.00433bd0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e00]
mov ecx, esi
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00433d40
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e00]
mov ecx, esi
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00433f20
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e04]
mov ecx, esi
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00434040
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e04]
mov ecx, esi
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00434100
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e08]
mov ecx, esi
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00450930
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e0c]
mov ecx, esi
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00451150
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e04]
mov ecx, esi
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00434ad0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e0c]
mov ecx, esi
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00434b50
mov ecx, eax
jmp 0x42823e
cmp cl, 0x90
mov ecx, esi
sete al
movzx eax, al
push eax
call fcn.00434c90
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00434fa0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e04]
mov ecx, esi
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.004355c0
mov ecx, eax
jmp 0x42823e
cmp byte [esi + 1], 1
mov ecx, dword [ebp + 0x64]
jbe 0x426259
push dword [0x4d3e00]
mov esi, dword [0x4d3df8]
push dword [0x4d3dfc]
push dword [0x4d3df4]
push dword [0x4d3df0]
jmp 0x426273
mov esi, dword [0x4d3df0]
push 0x4ac22c
push 0x4ac22c
push 0x4ac22c
push 0x4ac22c
call fcn.00442320
test eax, eax
je case.0x424c02.3
push esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push dword [0x4d3e00]
mov ecx, esi
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00435b90
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e00]
mov ecx, esi
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00435e70
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e04]
mov ecx, esi
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00435f70
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e00]
mov ecx, esi
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00436a60
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e0c]
mov ecx, esi
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
call fcn.00436d90
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
call fcn.004370e0
mov ecx, eax
jmp 0x42823e
push 0
push 0x1a3
push 0x111
push 0
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowW]
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x425b60
push 0
push 0x1a0
jmp 0x426380
mov eax, dword [esi + 0xc]
test eax, eax
jne 0x4263e2
mov ecx, dword [0x4d3df0]
cmp word [ecx], ax
je 0x4263e2
push ecx
mov ecx, 0x4d3ee0
call fcn.00419fe0
test eax, eax
jne 0x4263e2
push dword [0x4d3df0]
mov ecx, esi
push eax
push 0x4bf998
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
mov dword [0x4d495c], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov edx, dword [0x4d3df4]
mov al, 1
cmp al, byte [esi + 1]
mov ecx, dword [0x4d3df0]
sbb eax, eax
and eax, dword [0x4d3d9c]
push eax
push dword [esi + 0xc]
push dword [0x4d3df8]
call fcn.0040bc00
add esp, 0xc
mov ecx, eax
jmp 0x42823e
mov ebx, dword [esi + 0xc]
test ebx, ebx
jne 0x4264d4
push ebx
push dword [ebp + 0x68]
mov ecx, 0x4d3ee0
push dword [0x4d3df0]
call fcn.0041a020
mov ebx, eax
test ebx, ebx
jne 0x4264d4
mov eax, dword [0x4d3df0]
cmp word [eax], bx
je 0x426474
push eax
push ebx
push 0x4bf998
mov ecx, esi
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
cmp byte [esi + 1], 0
jbe 0x4264a0
mov eax, dword [esi + 8]
mov eax, dword [eax + 4]
cmp word [eax], 0
je 0x4264a0
push 0x4ac22c
push 0
push str.Parameter_1_invalid.
mov ecx, esi
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
mov ebx, dword [edi + 0xbc]
test ebx, ebx
jne 0x4264d4
mov ebx, dword [edi + 0xc0]
test ebx, ebx
je 0x4264ba
mov ebx, dword [ebx]
test ebx, ebx
jne 0x4264d4
push 0x4ac22c
push 0
push str.Parameter_1_must_not_be_blank_in_this_case.
mov ecx, esi
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
mov esi, dword [0x4d3df4]
cmp word [esi], 0
je 0x4265aa
test esi, esi
je 0x4265a3
cmp word [esi], 0
je 0x4265a3
push 0x4c05fc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x426516
lea edi, [eax + 1]
mov esi, dword [0x4d3df4]
jmp 0x4265ac
push 0x4bf7cc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x426536
mov esi, dword [0x4d3df4]
lea edi, [eax + 2]
jmp 0x4265ac
mov ecx, dword [0x4d3df4]
xor edi, edi
push edi
push 1
push 1
lea edx, [edi + 1]
call fcn.00472b30
add esp, 0xc
test eax, eax
jne 0x42650b
push str.Delete
push dword [0x4d3df4]
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x426587
push ebx
mov ecx, 0x4d3ee0
call fcn.00419ea0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push dword [0x4d3df4]
mov ecx, dword [ebp + 0x64]
push 0
push str.Parameter_2_invalid.
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
mov edi, 7
jmp 0x4265ac
xor edi, edi
lea eax, [edi - 1]
cmp eax, 1
ja 0x4265e9
cmp edi, 1
mov ecx, 0x4d3ee0
push 0
sete al
movzx eax, al
push eax
push dword [0x4d3df8]
push 0x4ac22c
push ebx
call fcn.00419c90
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
cmp word [esi], 0
mov ecx, dword [0x4d3df8]
jne 0x4265ff
cmp word [ecx], 0
je 0x4265ff
mov al, 1
jmp 0x426601
xor al, al
push eax
push 1
push ecx
push esi
push ebx
mov ecx, 0x4d3ee0
call fcn.00419c90
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov eax, dword [0x4d3df0]
mov esi, 0x10
cmp word [eax], 0
je 0x42665a
push 0x4c05fc
push eax
call fcn.0048f253
add esp, 8
test eax, eax
je 0x42665a
mov ecx, dword [ebp + 0x64]
push 0
call fcn.00420900
mov esi, eax
test esi, esi
jne 0x42665a
xor cl, cl
jmp 0x42665c
mov cl, 1
mov byte [edi + 0xee], cl
test cl, cl
je 0x42669a
mov dword [edi + 0xd8], esi
mov byte [edi + 0xec], 0
mov dword [edi], 0xffffffff
mov dword [edi + 4], 0xffffffff
mov dword [edi + 0x24], 0xffffffff
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov dword [edi + 0xd8], 5
mov byte [edi + 0xec], 1
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov ecx, dword [0x4d3df0]
call fcn.00414610
sub eax, 1
je 0x426777
sub eax, 1
je 0x42672e
sub eax, 1
jne case.0x427a23.69
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x426713
push 1
mov ecx, esi
call fcn.00420900
or eax, edx
jne 0x426713
mov al, 1
mov dword [ebp + 0x68], 1
mov byte [edi + 0xed], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
xor al, al
mov dword [ebp + 0x68], 1
mov byte [edi + 0xed], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov eax, dword [0x4d3df0]
cmp word [eax], 0
je 0x426747
push 1
mov ecx, esi
call fcn.00420900
mov dword [0x4d49bc], eax
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je case.0x427a23.69
push 2
mov ecx, esi
call fcn.00420900
mov dword [0x4d49b8], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 1
mov ecx, esi
call fcn.00420900
mov dword [edi + 0x2c], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x4267b9
push 1
push dword [0x4d3df0]
mov ecx, 0x4d3ee0
call fcn.00421520
mov esi, eax
test esi, esi
je 0x4241e7
mov ecx, dword [0x4d3dfc]
cmp word [ecx], 0
je 0x4267fb
mov ebx, dword [ebp + 0x64]
mov eax, dword [ebx + 0x18]
test eax, eax
jne 0x4267f8
push ecx
mov ecx, 0x4d3ee0
call fcn.00419fe0
test eax, eax
jne 0x4267f8
push dword [0x4d3dfc]
mov ecx, ebx
push eax
push 0x4bf998
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
mov dword [esi + 0x10], eax
push dword [0x4d3e04]
mov ecx, esi
push dword [0x4d3e00]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00478340
mov ecx, eax
jmp 0x42823e
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x42686f
mov edi, dword [0x4d3df0]
cmp word [edi], si
je case.0x424c02.3
mov esi, dword [0x4d3f18]
test esi, esi
je case.0x424c02.3
push edi
push dword [esi + 4]
call fcn.0048f253
add esp, 8
test eax, eax
je 0x42686f
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x426845
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x4268a9
push 0x4bfe90
push eax
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x4268a9
mov al, 1
mov ecx, esi
push eax
call fcn.00478950
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
xor al, al
mov ecx, esi
push eax
call fcn.00478950
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x42691a
mov edi, dword [0x4d3df0]
cmp word [edi], si
je case.0x424c02.3
mov esi, dword [0x4d3f18]
test esi, esi
je case.0x424c02.3
nop word [eax + eax]
push edi
push dword [esi + 4]
call fcn.0048f253
add esp, 8
test eax, eax
je 0x42691a
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x4268f0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x426995
push 0x4c27f0
push eax
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x42695b
push eax
push 0x82
mov ecx, esi
call fcn.004786a0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x426995
push 0x4bfe90
push eax
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x426995
mov al, 1
mov ecx, esi
push eax
call fcn.00478720
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
xor al, al
mov ecx, esi
push eax
call fcn.00478720
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
call fcn.0043d6f0
mov ecx, eax
jmp 0x42823e
test ebx, ebx
jne 0x4269f3
push 1
mov ecx, esi
call fcn.00420900
mov ecx, eax
call fcn.00412fb0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov ecx, dword [0x4d3df4]
mov edi, 1
push 0
push 1
push 0
mov edx, edi
call fcn.00472b30
add esp, 0xc
cmp eax, 2
je 0x426ab5
mov ecx, dword [0x4d3df8]
mov edx, edi
push 0
push edi
push 0
call fcn.00472b30
add esp, 0xc
cmp eax, 2
je 0x426ab5
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x426a4f
push edi
mov ecx, esi
call fcn.00420900
mov edi, eax
mov dword [ebp + 0x3c], eax
jmp 0x426a54
xor edi, edi
mov dword [ebp + 0x3c], edi
mov eax, dword [0x4d3df8]
cmp word [eax], 0
je 0x426a6c
push 2
mov ecx, esi
call fcn.00420900
mov esi, eax
jmp 0x426a71
mov esi, SysReAllocString
cmp edi, esi
mov ebx, esi
cmovle ebx, edi
call fcn.004130f0
mov edi, eax
mov eax, dword [ebp + 0x3c]
cmp eax, esi
cmovle eax, esi
cdq
mov esi, eax
mov ecx, edx
mov eax, ebx
cdq
sub esi, eax
sbb ecx, edx
add esi, 1
adc ecx, 0
push ecx
push esi
push 0
push edi
call fcn.004a48c0
mov ecx, dword [ebp + 0x68]
add eax, ebx
push eax
call fcn.00404ab0
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x426ad0
push 1
mov ecx, esi
call fcn.004209c0
movsd qword [ebp + 0x4c], xmm0
jmp 0x426ad8
xorps xmm2, xmm2
movsd qword [ebp + 0x4c], xmm2
mov eax, dword [0x4d3df8]
cmp word [eax], 0
je 0x426af6
push 2
mov ecx, esi
call fcn.004209c0
movaps xmm1, xmm0
movsd qword [ebp + 0x38], xmm0
jmp 0x426b03
movsd xmm1, qword [0x4c9608]
movsd qword [ebp + 0x38], xmm1
movsd xmm2, qword [ebp + 0x4c]
comisd xmm2, xmm1
jbe 0x426b1e
movaps xmm0, xmm2
movaps xmm2, xmm1
movsd qword [ebp + 0x4c], xmm2
movsd qword [ebp + 0x38], xmm0
call fcn.00413140
movsd xmm1, qword [ebp + 0x38]
mov ecx, ebx
subsd xmm1, qword [ebp + 0x4c]
mulsd xmm0, xmm1
addsd xmm0, qword [ebp + 0x4c]
movaps xmm1, xmm0
call fcn.00413580
mov ecx, eax
jmp 0x42823e
push 1
push dword [0x4d3df4]
mov ecx, esi
call fcn.0043d800
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.0043d9f0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
call fcn.0043dd30
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov eax, dword [0x4d3df0]
xor edx, edx
push dword [0x4d3df8]
cmp cl, 0x9b
mov ecx, esi
push dword [0x4d3df4]
cmove eax, edx
push eax
call fcn.0043e410
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x426bde
push 1
mov ecx, esi
call fcn.00420900
mov cl, byte [esi]
dec eax
jmp 0x426be0
xor eax, eax
cdq
test edx, edx
jg 0x426bf6
jl 0x426beb
test eax, eax
jae 0x426bf6
xorps xmm0, xmm0
movlpd qword [ebp + 0x18], xmm0
mov eax, dword [ebp + 0x18]
cmp cl, 0x9d
mov ecx, esi
push eax
jne 0x426c0a
call fcn.0043f460
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df0]
call fcn.0043f560
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x426c34
push 1
mov ecx, esi
call fcn.00420900
mov esi, eax
jmp 0x426c39
mov esi, 0x96
mov eax, dword [0x4d3df0]
cmp word [eax], 0
je 0x426c69
mov ecx, dword [ebp + 0x64]
push 0
call fcn.00420900
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov eax, 0x20b
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x426cab
push str.wait
push eax
call fcn.0048f253
add esp, 8
test eax, eax
je 0x426cd4
mov eax, dword [0x4d3df4]
push 0x4bf994
push eax
call fcn.0048f253
add esp, 8
test eax, eax
je 0x426cd4
xor al, al
mov ecx, esi
push eax
push dword [0x4d3df0]
call fcn.0043f6f0
mov ecx, eax
jmp 0x42823e
mov al, 1
mov ecx, esi
push eax
push dword [0x4d3df0]
call fcn.0043f6f0
mov ecx, eax
jmp 0x42823e
cmp byte [esi + 1], 2
jae 0x426cf6
mov eax, dword [edi + 0x18]
jmp 0x426cf8
xor eax, eax
push eax
push dword [0x4d3df0]
mov ecx, esi
push dword [0x4d3df4]
call fcn.00440b10
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df4]
mov ecx, esi
call fcn.00440210
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
call fcn.004407e0
mov ecx, eax
jmp 0x42823e
mov ecx, esi
call fcn.00440eb0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df0]
mov ecx, esi
call fcn.00452810
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df0]
xor ecx, ecx
push 7
cmp word [eax], cx
cmovne ecx, eax
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHEmptyRecycleBinW]
test eax, eax
mov ecx, esi
setne al
movzx eax, al
push eax
call fcn.0042cfe0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00441120
mov ecx, eax
jmp 0x42823e
lea eax, [edi + 0x30]
mov ecx, esi
push eax
push 0
push 2
call fcn.00420900
mov edx, dword [0x4d3df4]
cmp eax, 1
mov ecx, dword [0x4d3df0]
sete al
movzx eax, al
push eax
call fcn.00453070
add esp, 0xc
test eax, eax
jne 0x426e2c
mov ecx, dword [0x4d166c]
push 1
push eax
push 0xffffffffffffffff
push 0x4ac300
call fcn.00475930
mov ecx, eax
jmp 0x42823e
lea eax, [edi + 0x30]
mov ecx, esi
push eax
push 1
push 2
call fcn.00420900
mov edx, dword [0x4d3df4]
cmp eax, 1
mov ecx, dword [0x4d3df0]
sete al
movzx eax, al
push eax
call fcn.00453070
add esp, 0xc
push eax
mov ecx, esi
call fcn.0042d090
mov ecx, eax
jmp 0x42823e
push 2
mov ecx, esi
call fcn.00420900
mov edx, dword [0x4d3df4]
cmp eax, 1
mov ecx, dword [0x4d3df0]
sete al
movzx eax, al
push eax
call fcn.00452ad0
add esp, 4
test al, al
jmp 0x425d0f
mov eax, dword [0x4d3df8]
mov cx, word [eax]
call fcn.0040ab40
cmp ax, 0x52
jne 0x426e93
push dword [0x4d3df4]
push dword [0x4d3df0]
call dword [sym.imp.KERNEL32.dll_MoveFileW]
jmp 0x425d0d
push 2
mov ecx, esi
call fcn.00420900
mov edx, dword [0x4d3df4]
mov ecx, dword [0x4d3df0]
push eax
call fcn.00452c80
add esp, 4
test al, al
jmp 0x425d0f
push dword [0x4d3df0]
mov ecx, esi
call fcn.004400b0
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df0]
cmp word [eax], 0
je 0x426f06
push 1
mov ecx, esi
call fcn.00420900
mov ecx, dword [0x4d3df0]
cmp eax, 1
sete dl
call fcn.00452f60
test al, al
je 0x426f06
xor al, al
mov ecx, esi
push eax
call fcn.0042cfe0
mov ecx, eax
jmp 0x42823e
mov al, 1
mov ecx, esi
push eax
call fcn.0042cfe0
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df4]
cmp word [eax], 0
jne 0x426f40
mov eax, dword [edi + 0x10]
test eax, eax
je 0x426f3b
add eax, 0x2c
mov ecx, esi
push eax
call fcn.004412a0
mov ecx, eax
jmp 0x42823e
mov eax, 0x4ac22c
push eax
mov ecx, esi
call fcn.004412a0
mov ecx, eax
jmp 0x42823e
mov esi, dword [0x4d3df4]
cmp word [esi], 0
jne 0x426f6a
mov eax, dword [edi + 0x10]
lea esi, [eax + 0x2c]
test eax, eax
jne 0x426f6a
mov esi, 0x4ac22c
mov ecx, dword [ebp + 0x64]
push 0
push 3
call fcn.00420900
mov ecx, dword [0x4d3df8]
cmp eax, 1
sete al
movzx eax, al
push eax
call fcn.00414970
mov ecx, dword [ebp + 0x64]
push eax
push esi
push dword [0x4d3df0]
call fcn.00441360
xor ecx, ecx
cmp dword [edi + 0x100], ecx
sete cl
jmp 0x42823e
mov ecx, dword [0x4d3df4]
cmp word [ecx], 0
jne 0x426fc6
mov eax, dword [edi + 0x10]
lea ecx, [eax + 0x2c]
test eax, eax
jne 0x426fc6
mov ecx, 0x4ac22c
mov eax, dword [0x4d3df8]
movzx eax, word [eax]
push eax
push ecx
mov ecx, esi
call fcn.00441a40
mov ecx, eax
jmp 0x42823e
mov esi, dword [0x4d3df4]
cmp word [esi], 0
jne 0x426ff9
mov eax, dword [edi + 0x10]
lea esi, [eax + 0x2c]
test eax, eax
jne 0x426ff9
mov esi, 0x4ac22c
mov ecx, dword [ebp + 0x64]
push 0
push 4
call fcn.00420900
mov ecx, dword [0x4d3dfc]
cmp eax, 1
sete al
movzx eax, al
push eax
call fcn.00414970
mov ecx, dword [ebp + 0x64]
push eax
mov eax, dword [0x4d3df8]
movzx eax, word [eax]
push eax
push esi
push dword [0x4d3df0]
call fcn.00441b50
xor ecx, ecx
cmp dword [edi + 0x100], ecx
sete cl
jmp 0x42823e
mov eax, dword [0x4d3df4]
cmp word [eax], 0
jne 0x427072
mov eax, dword [edi + 0x10]
test eax, eax
je 0x42706d
push dword [0x4d3df8]
add eax, 0x2c
mov ecx, esi
push eax
call fcn.004420b0
mov ecx, eax
jmp 0x42823e
mov eax, 0x4ac22c
push dword [0x4d3df8]
mov ecx, esi
push eax
call fcn.004420b0
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df4]
cmp word [eax], 0
jne 0x4270b0
mov eax, dword [edi + 0x10]
test eax, eax
je 0x4270ab
add eax, 0x2c
mov ecx, esi
push eax
call fcn.00452930
mov ecx, eax
jmp 0x42823e
mov eax, 0x4ac22c
push eax
mov ecx, esi
call fcn.00452930
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3df0]
call fcn.0043f910
xor ecx, ecx
cmp dword [edi + 0x100], ecx
sete cl
jmp 0x42823e
push dword [0x4d3e00]
mov ecx, esi
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.0043fa40
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, esi
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.00451ee0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df0]
mov ecx, esi
call fcn.00452230
mov ecx, eax
jmp 0x42823e
push dword [0x4d3e10]
mov ecx, esi
push dword [0x4d3e0c]
push dword [0x4d3e08]
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.004525d0
mov ecx, eax
jmp 0x42823e
xor dl, dl
mov ecx, 4
call fcn.00439b80
mov ecx, eax
jmp 0x42823e
mov esi, dword [0x4d3df0]
test esi, esi
je 0x427218
cmp word [esi], 0
je 0x427218
push 0x4c05fc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x4271ba
lea ecx, [eax + 1]
jmp 0x4271cf
push 0x4bf7cc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x427218
lea ecx, [eax + 2]
cmp byte [edi + 0xf9], 0
je 0x4271f9
mov eax, dword [0x4d3110]
test eax, eax
jle 0x4271e4
dec eax
jmp 0x4271e9
mov eax, 0x18f
mov dword [0x4d3110], eax
mov dword [eax*4 + 0x4d3758], 0
cmp ecx, 1
mov dword [ebp + 0x68], 1
sete al
mov byte [edi + 0xf9], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
xor dl, dl
mov ecx, 1
call fcn.00439b80
mov ecx, eax
jmp 0x42823e
xor dl, dl
mov ecx, 2
call fcn.00439b80
mov ecx, eax
jmp 0x42823e
xor dl, dl
mov ecx, 3
call fcn.00439b80
mov ecx, eax
jmp 0x42823e
lea ecx, [edi + 0x4c]
call fcn.0045aa00
test eax, eax
je 0x42726a
mov eax, dword [0x4ce8c8]
mov eax, dword [eax + 0x4c]
mov eax, dword [eax + 4]
jmp 0x42726c
xor eax, eax
mov cl, byte [esi + 1]
push eax
test cl, cl
jne 0x427285
push 0
xorps xmm3, xmm3
mov edx, 0x10000
mov ecx, str.Press_OK_to_continue.
jmp 0x4272c6
cmp cl, 1
jne 0x42729c
mov ecx, dword [0x4d3df0]
xorps xmm3, xmm3
push 0
mov edx, 0x10000
jmp 0x4272c6
push 3
mov ecx, esi
call fcn.004209c0
push dword [0x4d3df4]
mov ecx, esi
movsd qword [ebp + 0x18], xmm0
push 0
call fcn.00420900
movsd xmm3, qword [ebp + 0x18]
mov edx, eax
mov ecx, dword [0x4d3df8]
call fcn.00477540
mov esi, eax
add esp, 8
test esi, esi
jne 0x4272fd
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x59e
jne 0x4272fd
mov ecx, dword [ebp + 0x64]
push dword [0x4d3df0]
push 0
push str.Parameter_1_invalid.
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
xor ecx, ecx
test esi, esi
setne cl
jmp 0x42823e
mov eax, dword [0x4d3e0c]
cmp word [eax], 0
je 0x427322
push 7
mov ecx, esi
call fcn.00420900
mov dword [ebp + 0x3c], eax
jmp 0x427329
mov dword [ebp + 0x3c], SysStringLen
mov eax, dword [0x4d3e08]
cmp word [eax], 0
je 0x427341
push 6
mov ecx, esi
call fcn.00420900
mov ebx, eax
jmp 0x427346
mov ebx, SysReAllocString
mov eax, dword [0x4d3e04]
cmp word [eax], 0
je 0x42735e
push 5
mov ecx, esi
call fcn.00420900
mov edi, eax
jmp 0x427363
mov edi, SysReAllocString
mov eax, dword [0x4d3e00]
cmp word [eax], 0
je 0x42737b
push 4
mov ecx, esi
call fcn.00420900
mov esi, eax
jmp 0x427380
mov esi, SysReAllocString
push dword [0x4d3e18]
mov ecx, dword [ebp + 0x64]
push 9
call fcn.004209c0
mov eax, dword [0x4d3dfc]
sub esp, 8
mov cx, word [eax]
movsd qword [esp], xmm0
push dword [ebp + 0x3c]
push ebx
push edi
push esi
call fcn.0040ab40
mov edx, dword [0x4d3df4]
cmp ax, 0x48
mov ecx, dword [ebp + 0x68]
sete al
movzx eax, al
push eax
push dword [0x4d3df8]
call fcn.00439e20
add esp, 0x24
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je 0x4273ec
push 1
mov ecx, esi
call fcn.00420900
mov esi, eax
jmp 0x4273ee
xor esi, esi
mov eax, dword [0x4d3df0]
mov ebx, dword [ebp + 0x64]
cmp word [eax], 0
je 0x427407
push 0
mov ecx, ebx
call fcn.00420900
jmp 0x42740c
mov eax, 0xc8
push dword [0x4d3dfc]
mov ecx, ebx
push dword [0x4d3df8]
push esi
push eax
call fcn.00450400
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d2128]
test eax, eax
je 0x427448
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x427448
push dword [0x4d2128]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [0x4d2128], 0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0
push 0x4ac22c
push dword [0x4d3e00]
mov ecx, esi
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.0042f600
mov ecx, eax
jmp 0x42823e
push 1
push dword [0x4d3df0]
mov ecx, esi
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.0042f600
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, esi
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.004309b0
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, esi
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00430d10
mov ecx, eax
jmp 0x42823e
mov ecx, esi
call fcn.00431fd0
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3df4]
call fcn.00414a20
mov ecx, dword [0x4d3df0]
movzx esi, ax
call fcn.00414a90
movzx ecx, ax
mov eax, 3
shl ax, cl
not ax
shl si, cl
and ax, word [edi + 0xf0]
or ax, si
mov dword [ebp + 0x68], 1
mov word [edi + 0xf0], ax
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0
mov ecx, esi
call fcn.00420900
mov byte [edi + 0xef], al
cmp al, 0x64
jbe case.0x427a23.69
mov byte [edi + 0xef], 2
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov edx, dword [edi + 0xd4]
mov ecx, dword [0x4d3df0]
call fcn.004148e0
mov dword [edi + 0xd4], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0
mov ecx, esi
call fcn.00420900
test eax, eax
js 0x4275e5
cmp eax, 0x64
jg 0x4275e5
mov cl, 1
jmp 0x4275e7
xor cl, cl
test cl, cl
je case.0x427a23.69
mov byte [edi + 0xf6], al
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push str.Play
push dword [0x4d3df8]
call fcn.0048f253
add esp, 8
test eax, eax
mov eax, dword [0x4d3df0]
jne 0x427664
cmp word [eax], 0
je 0x427636
push 0
mov ecx, esi
call fcn.00420900
mov dword [edi + 0x60], eax
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je case.0x427a23.69
push 1
mov ecx, esi
call fcn.00420900
mov dword [edi + 0x68], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
cmp word [eax], 0
je 0x427676
push 0
mov ecx, esi
call fcn.00420900
mov dword [edi + 0x5c], eax
mov eax, dword [0x4d3df4]
cmp word [eax], 0
je case.0x427a23.69
push 1
mov ecx, esi
call fcn.00420900
mov dword [edi + 0x64], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push str.Play
push dword [0x4d3df4]
call fcn.0048f253
add esp, 8
mov ecx, esi
push 0
test eax, eax
jne 0x4276da
call fcn.00420900
mov dword [edi + 0x70], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
call fcn.00420900
mov dword [edi + 0x6c], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0
mov ecx, esi
call fcn.00420900
mov dword [edi + 0x54], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0
mov ecx, esi
call fcn.00420900
mov dword [edi + 0x58], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov ecx, dword [0x4d3df0]
mov edx, 0x4c0890
call fcn.004730c0
mov ecx, esi
push 0
test eax, eax
je 0x427773
mov dword [edi], 0xffffffff
mov dword [edi + 4], 0xffffffff
call fcn.00420900
mov dword [edi + 0x24], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov dword [edi + 0x24], 0xffffffff
call fcn.00420900
mov dword [edi], eax
or eax, edx
mov dword [edi + 4], edx
jne case.0x427a23.69
mov dword [edi], 0xa
mov dword [edi + 4], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov esi, dword [0x4d3df0]
test esi, esi
je case.0x427a23.69
cmp word [esi], 0
je case.0x427a23.69
push 0x4c05fc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x4277f5
mov eax, 1
mov dword [ebp + 0x68], 1
cmp eax, eax
sete al
mov byte [edi + 0xf3], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0x4bf7cc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne case.0x427a23.69
mov eax, 2
mov dword [ebp + 0x68], 1
cmp eax, 1
sete al
mov byte [edi + 0xf3], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov ecx, dword [0x4d3df0]
call fcn.004142c0
dec eax
cmp eax, 5
ja case.default.0x427844
jmp dword [eax*4 + 0x428c38]
mov dword [edi + 0x20], 1
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov dword [edi + 0x20], 2
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov dword [edi + 0x20], 4
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov dword [edi + 0x20], 3
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov byte [edi + 0xe9], 1
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov byte [edi + 0xe9], 0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push dword [0x4d3df0]
mov ecx, esi
push 0
push str.Parameter_1_invalid.
call fcn.0042d1e0
mov ecx, eax
jmp 0x42823e
push 5
push str.Float
push dword [0x4d3df0]
call fcn.00491336
add esp, 0xc
test eax, eax
jne 0x4279ea
push 1
mov ecx, esi
call fcn.00420860
cmp eax, 0x1e
jae case.0x427a23.69
push 1
mov ecx, esi
call fcn.00420900
push 0x2e
push dword [0x4d3df4]
mov edi, eax
mov ebx, edx
call fcn.0048c759
mov esi, eax
add esp, 8
test esi, esi
je 0x42795e
lea ecx, [esi + 2]
call fcn.004134f0
jmp 0x42796c
xorps xmm0, xmm0
movlpd qword [ebp + 0x18], xmm0
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
add eax, edi
adc edx, ebx
add eax, 2
adc edx, 0
mov dword [ebp + 0x1c], edx
js 0x42798c
jg case.0x424c02.3
cmp eax, 0xff
ja case.0x427a23.69
mov ecx, dword [0x4d3df4]
mov edx, 1
push 0
push 1
push 1
call fcn.00472b30
test eax, eax
mov ecx, 0x4c427c
mov eax, 0x4ac22c
cmove ecx, eax
test esi, esi
push ecx
mov ecx, 0x4c3070
cmove eax, ecx
push eax
push dword [0x4d3df4]
mov eax, dword [ebp + 0x44]
add eax, 0x74
push 0x4c4280
push eax
call fcn.004053a0
add esp, 0x20
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 7
push str.Integer
push dword [0x4d3df0]
call fcn.00491336
add esp, 0xc
test eax, eax
jne case.0x427a23.69
mov ecx, dword [0x4d3df4]
movzx eax, word [ecx]
add eax, 0xffffffbc
cmp eax, 0x24
ja case.0x427a23.69
movzx eax, byte [eax + 0x428c5c]
jmp dword [eax*4 + 0x428c50]
mov byte [edi + 0xf5], 0x44
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov al, byte [ecx]
mov byte [edi + 0xf5], al
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push dword [0x4d3df8]
mov ecx, esi
push dword [0x4d3df4]
call fcn.0043ae60
mov ecx, eax
jmp 0x42823e
mov cl, 4
mov dl, 3
cmp cl, byte [esi + 1]
sbb ecx, ecx
and ecx, dword [0x4d3da8]
cmp dl, byte [esi + 1]
push ecx
sbb eax, eax
mov ecx, 0x4d3ee0
and eax, dword [0x4d3da4]
push eax
push dword [0x4d3e04]
push dword [0x4d3e00]
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.00468c40
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, 0x4d3ee0
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.0045aa80
mov ecx, eax
jmp 0x42823e
mov al, 2
mov ecx, esi
cmp al, byte [esi + 1]
sbb eax, eax
and eax, dword [0x4d3da0]
push eax
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.0045b330
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, esi
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.0045c2d0
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3df0]
xor edx, edx
call fcn.00414770
cmp eax, 7
ja case.0x424c02.3
jmp dword [eax*4 + 0x428c84]
cmp byte [0x4d1fed], 0
jne case.0x424c02.3
call fcn.0042cae0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
cmp byte [0x4d1fed], 0
je case.0x424c02.3
call fcn.0042cae0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 1
mov ecx, esi
call fcn.00420900
mov ecx, dword [0x4d3df0]
test eax, eax
setne al
xor edx, edx
movzx eax, al
push eax
call fcn.004146c0
push eax
mov ecx, esi
call fcn.0042cc10
mov ecx, eax
jmp 0x42823e
mov esi, dword [0x4d3df0]
test esi, esi
je case.0x427a23.69
cmp word [esi], 0
je case.0x427a23.69
push 0x4c05fc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x427c23
mov eax, 1
mov dword [ebp + 0x68], 1
cmp eax, eax
sete al
mov byte [edi + 0xf4], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0x4bf7cc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne case.0x427a23.69
mov eax, 2
mov dword [ebp + 0x68], 1
cmp eax, 1
sete al
mov byte [edi + 0xf4], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov ecx, dword [0x4d3df0]
call fcn.00414720
mov byte [edi + 0xf2], al
cmp al, 4
jne case.0x427a23.69
mov byte [edi + 0xf2], 0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov esi, dword [0x4d3df0]
test esi, esi
je case.0x427a23.69
cmp word [esi], 0
je case.0x427a23.69
push 0x4c05fc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x427cdd
mov eax, 1
mov dword [ebp + 0x68], 1
cmp eax, eax
sete al
mov byte [edi + 0xea], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0x4bf7cc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne case.0x427a23.69
mov eax, 2
mov dword [ebp + 0x68], 1
cmp eax, 1
sete al
mov byte [edi + 0xea], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov esi, dword [0x4d3df0]
test esi, esi
je case.0x427a23.69
cmp word [esi], 0
je case.0x427a23.69
push 0x4c05fc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne 0x427d64
mov eax, 1
mov dword [ebp + 0x68], 1
cmp eax, eax
sete al
mov byte [edi + 0xeb], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0x4bf7cc
push esi
call fcn.0048f253
add esp, 8
test eax, eax
jne case.0x427a23.69
mov eax, 2
mov dword [ebp + 0x68], 1
cmp eax, 1
sete al
mov byte [edi + 0xeb], al
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov ecx, dword [0x4d3df0]
call fcn.004147f0
lea ecx, [eax - 1]
cmp ecx, 0xc
ja case.0x427a23.69
movzx ecx, byte [ecx + 0x428cbc]
jmp dword [ecx*4 + 0x428ca4]
mov cl, 1
call fcn.0042cd00
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
xor cl, cl
call fcn.0042cd00
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov dword [0x4ce8d4], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov byte [0x4d169a], 1
call fcn.0040d340
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
mov byte [0x4d169a], 0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push dword [0x4d3df0]
mov edx, 0x4cf9d0
mov cl, 0x90
call fcn.00442210
add esp, 4
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df0]
mov edx, 0x4cf9cc
mov cl, 0x14
call fcn.00442210
add esp, 4
mov ecx, eax
jmp 0x42823e
push dword [0x4d3df0]
mov edx, 0x4ced6c
mov cl, 0x91
call fcn.00442210
add esp, 4
mov ecx, eax
jmp 0x42823e
push 0
push 0
push 0
push 0
push 0
push 1
push dword [0x4d16a8]
mov ecx, 0x4d3ee0
push str._restart
push dword [0x4d49a0]
call fcn.0042e050
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0
mov ecx, esi
call fcn.00420900
mov ecx, eax
jmp 0x425b71
push dword [0x4d3e00]
mov ecx, esi
push dword [0x4d3dfc]
push dword [0x4d3df8]
push dword [0x4d3df4]
call fcn.0046f680
mov ecx, eax
jmp 0x42823e
push dword [0x4d3dfc]
mov ecx, esi
push dword [0x4d3df8]
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.0046f790
mov ecx, eax
jmp 0x42823e
mov eax, dword [0x4d3df8]
xor ecx, ecx
cmp byte [esi + 1], 3
cmovb eax, ecx
mov ecx, esi
push eax
push dword [0x4d3df4]
push dword [0x4d3df0]
call fcn.0046f9a0
mov ecx, eax
jmp 0x42823e
cmp byte [esi + 1], 2
jae 0x427f84
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x427f84
lea eax, [ecx + 0x808]
push eax
lea eax, [ecx + 8]
push eax
push dword [ecx + 4]
mov ecx, esi
call fcn.0046fa10
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3df4]
lea eax, [ebp + 0x5b]
push eax
lea eax, [ebp + 0x34]
mov edx, 2
push eax
call fcn.00413f00
mov ecx, dword [ebp + 0x34]
add esp, 8
mov esi, eax
test ecx, ecx
jne 0x427fb8
mov ecx, dword [0x4d3df8]
mov eax, dword [0x4d3dfc]
mov dword [ebp + 0x34], ecx
jmp 0x427fbd
mov eax, dword [0x4d3df8]
push eax
push ecx
mov ecx, dword [ebp + 0x64]
push esi
call fcn.0046fa10
cmp byte [ebp + 0x5b], 0
mov ecx, eax
mov dword [ebp + 0x68], ecx
je 0x428241
test esi, esi
je 0x428241
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp + 0x68]
jmp 0x428241
cmp byte [esi + 1], 2
jae 0x428023
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x428023
push dword [0x4d3df0]
lea eax, [ecx + 0x808]
push eax
lea eax, [ecx + 8]
push eax
push dword [ecx + 4]
push dword [ecx + 0x1008]
mov ecx, esi
call fcn.0046fdc0
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3df4]
lea eax, [ebp + 0x5b]
push eax
lea eax, [ebp + 0x34]
mov edx, 2
push eax
call fcn.00413f00
mov ecx, dword [ebp + 0x34]
add esp, 8
mov esi, eax
test ecx, ecx
jne 0x42805d
mov ecx, dword [0x4d3df8]
mov eax, dword [0x4d3dfc]
mov edx, dword [0x4d3e00]
mov dword [ebp + 0x34], ecx
jmp 0x428068
mov eax, dword [0x4d3df8]
mov edx, dword [0x4d3dfc]
push edx
push eax
push ecx
mov ecx, dword [0x4d3df0]
push esi
call fcn.00414180
mov ecx, dword [ebp + 0x64]
push eax
call fcn.0046fdc0
jmp 0x427fc8
cmp byte [esi + 1], 1
jae 0x4280ed
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x4280ed
cmp dword [ecx + 0x1008], 0xfffffffe
lea eax, [ecx + 0x808]
push eax
lea eax, [ecx + 8]
push eax
jne 0x4280dc
push str._s_s
lea eax, [ebp - 0x890]
push 0x400
push eax
call fcn.00472ce0
add esp, 0x14
lea eax, [ebp - 0x890]
mov ecx, esi
push 0
push eax
mov eax, dword [edi + 0x14]
push dword [eax + 4]
call fcn.004701a0
mov ecx, eax
jmp 0x42823e
push dword [ecx + 4]
mov ecx, esi
call fcn.004701a0
mov ecx, eax
jmp 0x42823e
mov ecx, dword [0x4d3df0]
lea eax, [ebp + 0x5b]
push eax
lea eax, [ebp + 0x34]
mov edx, 2
push eax
call fcn.00413f00
mov edi, dword [ebp + 0x34]
add esp, 8
mov ebx, eax
test edi, edi
jne 0x428122
mov edi, dword [0x4d3df4]
mov esi, dword [0x4d3df8]
mov dword [ebp + 0x34], edi
jmp 0x428128
mov esi, dword [0x4d3df4]
cmp word [esi], 0
jne 0x428132
xor ecx, ecx
jmp 0x42814a
push str.aecs_default
push esi
call fcn.0048f253
add esp, 8
mov ecx, 0x4ac22c
test eax, eax
cmovne ecx, esi
push ecx
mov ecx, dword [ebp + 0x64]
push edi
push ebx
call fcn.004701a0
cmp byte [ebp + 0x5b], 0
mov ecx, eax
mov dword [ebp + 0x68], ecx
je 0x428241
test ebx, ebx
je 0x428241
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp + 0x68]
jmp 0x428241
mov ecx, dword [0x4d3df0]
call fcn.00414210
mov esi, eax
cmp esi, 0xffffffff
je 0x4272e1
cmp dword [0x4d4b90], 0
je case.0x427a23.69
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [0x4d4b90]
test eax, eax
je case.0x427a23.69
cmp dword [ebp - 0x14], 0
je case.0x427a23.69
mov dword [edi + 0xd0], esi
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push dword [0x4d3df0]
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
push 0
mov ecx, esi
call fcn.00420900
mov ecx, eax
call fcn.00453810
xor ecx, ecx
test al, al
setne cl
jmp 0x42823e
mov ecx, dword [0x4d3df0]
call fcn.00414b20
cmp eax, 0xffffffff
jne 0x428226
mov ecx, esi
jmp 0x4272e4
mov dword [edi + 0xfc], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x42824c
xor ecx, ecx
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x60], ecx
test ecx, ecx
je 0x428734
cmp dword [ebp + 0x74], 3
je 0x428734
mov ebx, dword [ebp + 0x64]
mov ebx, dword [ebx + 0x14]
mov dword [ebp + 0x64], ebx
jmp 0x42409f
mov esi, dword [ebp + 0x48]
mov dword [esi], ecx
jmp 0x42413c
mov esi, dword [ebp + 0x48]
mov eax, edx
pop edi
mov dword [esi], ecx
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp ecx, 7
mov eax, 1
cmove ecx, eax
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov eax, dword [esi + 8]
mov esi, dword [ebp + 0x48]
mov dword [esi], eax
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov eax, dword [ebp + 0x60]
mov edx, 1
pop edi
cmp eax, 7
pop esi
cmove eax, edx
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
push dword [0x4d3df4]
mov ecx, esi
push 0
push str.Parameter_2_invalid.
call fcn.0042d1e0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
push dword [0x4d3df8]
mov ecx, esi
push 0
push str.Parameter_3_invalid.
call fcn.0042d1e0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov esi, dword [ebp + 0x48]
mov eax, dword [ebp + 0x5c]
mov dword [esi], eax
mov eax, dword [ebp + 0x60]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp byte [edi + 0x108], 0
jne 0x4241e7
mov ecx, esi
call fcn.0042d9b0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
test edi, edi
je 0x428392
lea ecx, [ebp + 0x50]
call fcn.0042d9b0
test esi, esi
je 0x4283c6
cmp esi, 8
je 0x4283c6
mov ecx, dword [0x4d4510]
push 0x4ac22c
push 0
push str.Jumps_cannot_exit_a_FINALLY_block.
call fcn.0042d1e0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
pop edi
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov esi, dword [ebp + 0x48]
mov eax, 1
pop edi
mov dword [esi], ecx
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov esi, dword [ebp + 0x48]
pop edi
mov dword [esi], ecx
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov edx, dword [ebp + 0x78]
test edx, edx
je 0x428463
cmp dword [edx + 8], 0
jne 0x428463
mov ecx, dword [0x4d3d98]
test ecx, ecx
je 0x428454
cmp byte [ecx + 0x17], 0
jne 0x428435
mov eax, dword [ecx + 0xc]
jmp 0x428437
mov eax, ecx
test byte [eax + 0x15], 2
je 0x428454
push edx
call fcn.004138c0
cmp dword [ebp + 0x74], 1
mov eax, 7
cmovne edi, eax
jmp 0x42413c
mov ecx, dword [0x4d3df0]
mov dword [edx + 8], 0
mov dword [edx], ecx
cmp dword [ebp + 0x74], 1
mov eax, 7
cmovne edi, eax
jmp 0x42413c
mov eax, dword [esi + 0x18]
test eax, eax
je 0x428496
mov eax, dword [eax + 0x18]
mov esi, dword [ebp + 0x48]
mov dword [esi], eax
cmp byte [eax], 0x6c
jne 0x42413c
mov eax, dword [eax + 0x14]
mov dword [esi], eax
jmp 0x42413c
pop edi
pop esi
mov eax, 5
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov eax, dword [esi + 0x18]
test eax, eax
je 0x4284bb
mov esi, dword [ebp + 0x48]
mov dword [esi], eax
pop edi
pop esi
mov eax, 6
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp byte [esi + 1], 0
jne 0x428501
push 0x4ac22c
push 0
push str.An_exception_was_thrown.
mov ecx, esi
call fcn.0042cf00
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov ebx, dword [ebp + 0x54]
cmp dword [ebx + 0x100], 0
je 0x428518
lea ecx, [ebx + 0x100]
call fcn.0042d9b0
push 0x10
call fcn.0048b18f
mov edi, dword [ebp + 0x64]
mov esi, eax
mov dword [ebp + 0x78], esi
add esp, 4
mov ecx, dword [0x4d310c]
test ecx, ecx
jne 0x42858f
mov ecx, dword [edi + 8]
movzx eax, word [ecx + 2]
mov ecx, 0xff
cmp ax, cx
jae 0x428547
mov eax, ecx
inc eax
mov dword [0x4d3108], eax
add eax, eax
push eax
call fcn.0048f3be
mov ecx, eax
add esp, 4
mov dword [0x4d310c], ecx
test ecx, ecx
jne 0x42858f
push 0x4ac22c
push eax
push str.Out_of_memory.
mov ecx, edi
mov dword [0x4d3108], eax
call fcn.0042d1e0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov eax, dword [0x4d3108]
push 0
mov dword [ebp + 0x74], eax
lea eax, [ebp + 0x18]
push eax
lea eax, [ebp + 0x74]
mov dword [ebp + 0x78], ecx
push eax
lea eax, [ebp + 0x78]
mov dword [ebp + 0xc], ecx
push eax
lea eax, [ebp + 0xc]
mov dword [0x4d310c], 0
push eax
push esi
lea eax, [ebp + 0x60]
mov dword [0x4d3108], 0
push eax
push 0
mov ecx, edi
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 0
mov dword [esi + 8], 0x41
call fcn.00456e80
mov edi, eax
mov eax, dword [ebp + 0x78]
cmp edi, eax
jne 0x4285f4
mov dword [esi + 0xc], edi
jmp 0x428634
mov dword [esi + 0xc], 0
test eax, eax
je 0x428634
mov ecx, dword [0x4d310c]
test ecx, ecx
je 0x428627
push ecx
call fcn.004914e4
mov eax, dword [ebp + 0x78]
add esp, 4
cmp dword [0x4d3108], 0x400000
jbe 0x428627
dec dword [0x4d3104]
mov dword [0x4d310c], eax
mov eax, dword [ebp + 0x74]
mov dword [0x4d3108], eax
test edi, edi
jne 0x42865a
push 0x10
push esi
call fcn.0048b181
mov eax, dword [ebp + 0x60]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp dword [esi + 8], 0x41
jne 0x428669
mov dword [esi + 8], 0
mov dword [esi], edi
mov eax, dword [ebp + 0x64]
mov ecx, ebx
pop edi
mov dword [ebx + 0x100], esi
pop esi
mov dword [ecx + 0x104], eax
xor eax, eax
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp word [0x4d30f4], 0
jne 0x4286be
cmp dword [0x4d2148], 0
jne 0x4286be
cmp dword [0x4d16a0], 0
jne 0x4286be
cmp dword [0x4d169c], 0
jne 0x4286be
cmp byte [0x4d1698], 0
je case.0x424168.222
pop edi
pop esi
mov eax, 8
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
push 0
mov ecx, esi
call fcn.00420900
push eax
push 0
push 9
mov ecx, 0x4d3ee0
call fcn.00415ef0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp dword [ebp + 0x74], 2
je 0x42413c
push 0x4ac22c
push 0
push str.A__return__must_be_encountered_prior_to_this___.
mov ecx, esi
call fcn.0042d1e0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp + 0x68]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc