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

Disassembly:
push ebp
lea ebp, [esp - 0x6c]
sub esp, 0x6c
push 0xffffffffffffffff
push 0x4b7d3b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x8b8
mov eax, dword [ebp + 0x7c]
mov edx, ecx
test eax, eax
mov dword [ebp - 0x24], edx
push ebx
lea ecx, [ebp - 0x20]
mov dword [ebp + 0x64], edx
cmovne ecx, eax
mov eax, dword fs:[0x24]
push esi
push edi
mov edi, dword [0x4e30fc]
test edx, edx
mov dword [ebp + 0x48], ecx
mov dword [ecx], 0
mov dword [ebp + 0x5c], edi
mov dword [ebp - 0x2c], eax
mov ebx, 1
je 0x4435ef
cmp dword [0x4e88c0], 0
je 0x43ea93
cmp dword [0x4e88b0], 0
je 0x43ea79
push dword [0x4e88a8]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [0x4e88b0], 0
call dword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x4e88c0], 0
mov dword [0x4e88a8], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov eax, dword [0x4e30fc]
mov ecx, esi
sub ecx, dword [0x4e8864]
cmp ecx, dword [eax + 0xd8]
jbe 0x43eaec
push 0
push 0
push 0
push 0
lea eax, [ebp - 0xc4]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x43eade
mov eax, dword [ebp - 0x2c]
cmp dword [0x4e7484], eax
jne 0x43eade
mov edx, ebx
or ecx, 0xffffffff
call fcn.00401a20
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov dword [0x4e8864], esi
cmp byte [edi + 0xec], 0
jne 0x43eb1e
cmp byte [edi + 0xee], 0
jne 0x43eb1e
mov eax, dword [0x4e8858]
cmp eax, 0xffffffff
jle 0x43eb1e
mov ecx, dword [edi + 0x28]
cmp ecx, eax
jle 0x43eb18
mov byte [edi + 0xec], 1
jmp 0x43eb1e
lea eax, [ecx + 1]
mov dword [edi + 0x28], eax
mov eax, dword [ebp + 0x5c]
mov edi, dword [edi]
mov ecx, dword [0x4e8850]
mov edx, dword [0x4e8854]
mov eax, dword [eax + 4]
cmp eax, 0xffffffff
jl 0x43eb48
jg 0x43eb3e
cmp edi, 0xffffffff
jbe 0x43eb48
cmp edx, eax
jg 0x43eb5f
jl 0x43eb48
cmp ecx, edi
jae 0x43eb5f
mov edi, dword [ebp + 0x5c]
mov eax, dword [edi + 0x24]
cmp eax, 0xffffffff
jle 0x43eb7a
sub esi, dword [0x4e8860]
cmp esi, eax
jb 0x43eb7a
jmp 0x43eb62
mov edi, dword [ebp + 0x5c]
mov edx, ebx
mov ecx, 0xa
call fcn.00401a20
mov edx, dword [0x4e8854]
mov ecx, dword [0x4e8850]
cmp byte [edi + 0xf8], 0
je 0x43ebb9
mov eax, dword [ebp - 0x2c]
cmp dword [0x4e7484], eax
jne 0x43eb9c
mov edx, ebx
mov ecx, 0x8000012f
call fcn.00401a20
jmp 0x43eba4
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [edi + 0xf8], 0
jne 0x43eb83
mov edx, dword [0x4e8854]
mov ecx, dword [0x4e8850]
mov esi, dword [ebp + 0x64]
mov dword [0x4e8398], esi
cmp byte [edi + 0xf9], 0
je 0x43ec08
mov eax, dword [0x4e6728]
mov dword [eax*4 + 0x4e6d70], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x4e6728]
mov edx, dword [0x4e8854]
mov dword [ecx*4 + 0x4e6730], eax
inc ecx
xor eax, eax
cmp ecx, 0x190
cmovge ecx, eax
mov dword [0x4e6728], ecx
mov ecx, dword [0x4e8850]
cmp dword [0x4e4ad8], 0xffffffff
je 0x43ec28
cmp byte [esi], 0x6b
je 0x43ec28
push esi
call fcn.00406ef0
mov edx, dword [0x4e8854]
mov ecx, dword [0x4e8850]
mov al, byte [esi]
mov edi, dword [ebp + 0x78]
cmp al, 1
je 0x43ec5d
cmp al, 0x6b
je 0x43ec5d
cmp al, 0x74
je 0x43ec5d
push 0
push 0xffffffffffffffff
push edi
mov ecx, esi
call fcn.00478520
mov dword [ebp + 0x60], eax
cmp eax, 1
jne 0x443259
mov edx, dword [0x4e8854]
mov ecx, dword [0x4e8850]
mov bl, byte [esi]
cmp bl, 9
jb 0x43edb0
cmp bl, 0x20
ja 0x43edb0
add ecx, 1
mov dword [0x4e8850], ecx
mov ecx, esi
adc edx, 0
mov dword [0x4e8854], edx
call fcn.00443ba0
cmp eax, 3
jne 0x43ed18
mov eax, dword [esi + 0x14]
cmp byte [eax], 0x75
jne 0x43ecc0
nop dword [eax + eax]
lea ecx, [ebp + 0x58]
push ecx
mov ecx, dword [eax + 0x14]
push edi
push 2
call fcn.0043e9f0
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x43eca0
jmp 0x43ecd6
lea ecx, [ebp + 0x58]
push ecx
push edi
push 3
mov ecx, eax
call fcn.0043e9f0
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
cmp ecx, esi
je 0x43ed92
cmp dword [ebp + 0x74], 3
je 0x44310f
cmp edx, 1
jne 0x44310f
test ecx, ecx
jne 0x43ed81
mov esi, dword [esi + 0x18]
mov edi, dword [ebp + 0x5c]
mov dword [ebp + 0x64], esi
cmp byte [esi], 0x21
jne 0x43ed95
mov esi, dword [esi + 0x18]
test esi, esi
mov dword [ebp + 0x64], esi
jmp 0x43ea46
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x64], esi
cmp byte [esi], 0x21
jne 0x43ed9c
mov eax, dword [esi + 0x14]
cmp byte [eax], 0x75
jne 0x43ed50
nop dword [eax + eax]
lea ecx, [ebp + 0x58]
push ecx
mov ecx, dword [eax + 0x14]
push edi
push 2
call fcn.0043e9f0
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x43ed30
jmp 0x43ed66
lea ecx, [ebp + 0x58]
push ecx
push edi
push 3
mov ecx, eax
call fcn.0043e9f0
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
cmp dword [ebp + 0x74], 3
je 0x44310f
cmp edx, 1
jne 0x44310f
test ecx, ecx
je 0x43fa7c
mov eax, dword [ecx + 0x1c]
cmp eax, dword [esi + 0x1c]
jne 0x4430f1
mov esi, ecx
mov dword [ebp + 0x64], esi
mov edi, dword [ebp + 0x5c]
test esi, esi
jmp 0x43ea46
cmp dword [ebp + 0x74], 3
je 0x4430f6
mov edi, dword [ebp + 0x5c]
test esi, esi
jmp 0x43ea46
movzx eax, bl
add eax, 0xffffffa0
cmp eax, 0x80
ja case.0x43edc8.98
movzx eax, byte [eax + 0x44364c]
jmp dword [eax*4 + 0x443608]
mov ecx, esi
call fcn.00443ba0
cmp eax, 3
je 0x44312a
cmp dword [ebp + 0x74], 3
je 0x44315e
mov esi, dword [esi + 0x14]
test esi, esi
mov edi, dword [ebp + 0x5c]
mov dword [ebp + 0x64], esi
jmp 0x43ea46
mov ecx, esi
call fcn.00443ba0
cmp eax, 3
je case.0x43edc8.111
cmp dword [ebp + 0x74], 3
je 0x44315e
mov esi, dword [esi + 0x14]
test esi, esi
mov edi, dword [ebp + 0x5c]
mov dword [ebp + 0x64], esi
jmp 0x43ea46
add ecx, 1
mov dword [0x4e8850], ecx
adc edx, 0
mov dword [0x4e8854], edx
mov edx, dword [esi + 0x18]
test edx, edx
je 0x43ee56
mov edi, dword [ebp + 0x5c]
xor ebx, ebx
cmp dword [esi + 0xc], 1
mov dword [ebp + 0x10], edx
sete bl
jne 0x43eef7
jmp 0x43eedd
mov esi, dword [0x4e7400]
mov ecx, 0x4e7d50
push esi
call fcn.00431370
mov edx, eax
test edx, edx
je 0x443198
mov eax, dword [edx + 8]
mov esi, dword [ebp + 0x64]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x43eea5
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x43ee90
cmp ecx, eax
je 0x43eea5
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x43ee85
push 0x4b9c10
push 0
push str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
mov ecx, esi
call fcn.004478f0
xor edx, edx
mov dword [ebp + 0x10], edx
test edx, edx
je 0x4431a8
mov edi, dword [ebp + 0x5c]
cmp dword [edi + 0xb4], 0
je 0x43eef5
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x43eed8
cmp dword [eax + 0xc], 1
jne 0x43eed1
cmp byte [eax], 0x75
je 0x43eef5
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x43eec6
mov ebx, 1
mov eax, dword [edi + 0xb4]
mov dword [edi + 0xb8], eax
mov dword [edi + 0xb4], 0
jmp 0x43eef7
xor ebx, ebx
mov ecx, edx
call fcn.00401730
mov ecx, eax
mov dword [ebp + 0x60], ecx
test ebx, ebx
je 0x43ef1d
mov eax, dword [edi + 0xb8]
mov dword [edi + 0xb4], eax
mov dword [edi + 0xb8], 0
test ecx, ecx
je 0x443182
cmp ecx, 8
je 0x443182
cmp dword [ebp + 0x74], 3
je 0x443177
mov esi, dword [esi + 0x14]
test esi, esi
mov edi, dword [ebp + 0x5c]
mov dword [ebp + 0x64], esi
jmp 0x43ea46
add ecx, 1
mov dword [0x4e8850], ecx
adc edx, 0
mov dword [0x4e8854], edx
mov edx, dword [esi + 0x18]
mov dword [ebp + 0x10], edx
test edx, edx
jne 0x43efbe
mov esi, dword [0x4e7400]
mov ecx, 0x4e7d50
push esi
call fcn.00431370
mov edx, eax
test edx, edx
je 0x443198
mov eax, dword [edx + 8]
mov esi, dword [ebp + 0x64]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x43efb3
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x43ef9e
cmp ecx, eax
je 0x43efb3
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x43ef93
push 0x4b9c10
push 0
push str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
mov ecx, esi
call fcn.004478f0
xor edx, edx
mov dword [ebp + 0x10], edx
test edx, edx
je 0x4431a8
cmp dword [ebp + 0x74], 3
mov edi, dword [ebp + 0x5c]
mov dword [edi + 0xbc], edx
je 0x4431be
mov ecx, dword [edx + 8]
mov eax, dword [esi + 0x1c]
cmp eax, dword [ecx + 0x1c]
jne 0x4431be
mov esi, ecx
mov dword [ebp + 0x64], esi
test esi, esi
jmp 0x43ea46
mov esi, dword [ebp - 0x24]
add ecx, 1
mov dword [0x4e8850], ecx
adc edx, 0
mov dword [0x4e8854], edx
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x43f04a
mov edi, dword [0x4e7400]
cmp word [edi], si
jne 0x43f021
mov dword [ebp + 0x60], 1
xor ebx, ebx
jmp 0x43f128
mov esi, dword [0x4e7d64]
test esi, esi
je 0x43f048
nop dword [eax + eax]
push edi
push dword [esi + 4]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
je 0x43f04a
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x43f030
xor esi, esi
xor ebx, ebx
mov dword [ebp + 0x60], 1
test esi, esi
je 0x43f128
mov eax, dword [0x4e7404]
cmp word [eax], bx
je 0x43f07c
push 0x4d0888
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
jne 0x43f07c
mov al, 1
jmp 0x43f07e
xor al, al
lea ecx, [ebp + 0x10]
push ecx
push 0
push eax
mov ecx, esi
call fcn.004a34f0
mov edi, dword [ebp + 0x10]
mov ebx, eax
test edi, edi
je 0x43f128
mov ecx, dword [ebp + 0x64]
push 0
push edi
call fcn.0045c460
test eax, eax
je 0x4431a8
mov edx, dword [ebp + 0x5c]
mov ecx, dword [edx + 0xb4]
test ecx, ecx
je 0x43f0ec
mov eax, dword [edi + 8]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x43f0d5
cmp dword [eax + 0xc], 1
jne 0x43f0ce
cmp byte [eax], 0x75
je 0x43f0ec
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x43f0c3
mov esi, 1
mov dword [edx + 0xb8], ecx
mov dword [edx + 0xb4], 0
jmp 0x43f0ee
xor esi, esi
mov ecx, edi
call fcn.00401730
mov ecx, eax
mov dword [ebp + 0x60], ecx
test esi, esi
je 0x43f117
mov edx, dword [ebp + 0x5c]
mov eax, dword [edx + 0xb8]
mov dword [edx + 0xb4], eax
mov dword [edx + 0xb8], 0
test ecx, ecx
je 0x443182
cmp ecx, 8
je 0x443182
mov ecx, dword [ebp - 0x24]
test ebx, ebx
sete al
movzx eax, al
push eax
call fcn.004476e0
cmp dword [ebp + 0x74], 3
je 0x4431df
mov esi, dword [ebp + 0x64]
mov edi, dword [ebp + 0x5c]
mov esi, dword [esi + 0x14]
test esi, esi
mov dword [ebp + 0x64], esi
jmp 0x43ea46
mov ebx, dword [esi + 0xc]
mov eax, ebx
mov dword [ebp + 0x68], ebx
sub eax, 1
je 0x43f1a5
sub eax, 3
je 0x43f18c
sub eax, 5
jne 0x43f218
mov ecx, dword [0x4e7404]
lea edx, [eax + 1]
push eax
push eax
call fcn.004270d0
add esp, 8
mov dword [ebp + 0x24], eax
jmp 0x43f218
mov ecx, dword [0x4e7400]
xor edx, edx
push 0
push 0
call fcn.004270d0
add esp, 8
mov dword [ebp + 0x24], eax
jmp 0x43f218
movzx eax, byte [esi + 1]
sub eax, 0
je 0x43f210
sub eax, 1
je 0x43f1d0
push str.Read
push dword [0x4e7400]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
jne 0x43f1ed
lea ebx, [eax + 5]
jmp 0x43f215
mov ecx, dword [0x4e7400]
mov edx, 1
push 0
push 1
push 1
call fcn.0049c490
add esp, 0xc
test eax, eax
jne 0x43f210
mov ecx, dword [0x4e7400]
xor edx, edx
push 0
push 0
call fcn.004270d0
xor ebx, ebx
mov dword [ebp + 0x24], eax
add esp, 8
cmp eax, ebx
setne bl
add ebx, 3
jmp 0x43f215
mov ebx, 2
mov dword [ebp + 0x68], ebx
lea eax, [ebx - 3]
cmp eax, 7
ja case.0x43f22b.5
movzx eax, byte [eax + 0x4436dc]
jmp dword [eax*4 + 0x4436d0]
mov ecx, dword [0x4e7404]
call fcn.00428ff0
mov dword [ebp + 0x28], eax
test eax, eax
je 0x443201
mov ecx, dword [0x4e7408]
cmp word [ecx], 0x31
jne 0x43f264
cmp word [ecx + 2], 0
jne 0x43f264
mov byte [ebp + 0x20], 1
jmp 0x43f32c
mov byte [ebp + 0x20], 0
jmp 0x43f32c
cmp ebx, 4
jne 0x43f2a6
mov ecx, dword [0x4e7408]
call fcn.00428ff0
mov ecx, eax
mov eax, dword [0x4e740c]
mov dword [ebp + 0x28], ecx
cmp word [eax], 0x31
jne 0x43f29d
cmp word [eax + 2], 0
jne 0x43f29d
mov byte [ebp + 0x20], 1
jmp 0x43f31e
mov byte [ebp + 0x20], 0
jmp 0x43f31e
mov ebx, dword [0x4e7408]
xor edi, edi
nop
movzx esi, word [ebx]
test esi, 0xffffff80
jne 0x43f2ce
push 2
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
add esp, 8
test eax, eax
je 0x43f2ce
and esi, 0xffffffdf
add ebx, 2
cmp esi, 0x56
ja case.0x43f2dd.1
movzx eax, byte [esi + 0x4436fc]
jmp dword [eax*4 + 0x4436e4]
or edi, 1
jmp case.0x43f2dd.9
or edi, 2
jmp case.0x43f2dd.9
or edi, 4
jmp case.0x43f2dd.9
mov ecx, edi
mov eax, edi
or ecx, 1
and al, 3
cmovne ecx, edi
jmp 0x43f303
xor ecx, ecx
mov ebx, dword [ebp + 0x68]
mov eax, ecx
mov esi, dword [ebp + 0x64]
shr eax, 2
and al, 1
mov dword [ebp + 0x28], ecx
mov byte [ebp + 0x20], al
je 0x43f31e
and ecx, 0xfffffffb
mov dword [ebp + 0x28], ecx
test ecx, ecx
je 0x443229
mov ecx, dword [0x4e7408]
mov byte [ebp + 0x7f], 0
mov dword [ebp + 0x58], 0
mov edi, dword [esi + 0x18]
mov edx, edi
mov dword [ebp + 0x68], edi
mov al, byte [edx]
cmp al, 0x6c
jne 0x43f34b
mov edx, dword [edx + 0x14]
mov dword [ebp + 0x68], edx
cmp al, 0x6c
mov dword [ebp + 0x34], 0
mov eax, dword [ebp + 0x5c]
cmovne edi, dword [ebp + 0x34]
mov dword [ebp + 0x44], edi
mov eax, dword [eax + 8]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0x18]
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0x1c]
mov dword [ebp + 0x50], eax
cmp ebx, 8
je 0x43f3a7
mov eax, dword [ebp + 0x5c]
mov dword [eax + 8], 1
mov dword [eax + 0xc], 0
lea eax, [ebx - 2]
cmp eax, 8
ja case.default.0x43f3b3
jmp dword [eax*4 + 0x443754]
cmp byte [esi + 1], 0
jbe 0x43f3cf
push 0
mov ecx, esi
call fcn.0043ae30
mov ecx, edx
xor bl, bl
jmp 0x43f3df
xorps xmm0, xmm0
mov bl, 1
movlpd qword [ebp + 0x30], xmm0
mov ecx, dword [ebp + 0x34]
mov eax, dword [ebp + 0x30]
mov esi, dword [0x4e30fc]
mov dword [ebp + 0x18], eax
mov dword [ebp + 0x1c], ecx
mov dword [ebp + 0x34], esi
nop
test bl, bl
jne 0x43f408
cmp dword [esi + 0xc], ecx
jg 0x43f548
jl 0x43f408
cmp dword [esi + 8], eax
ja 0x43f548
mov eax, dword [ebp + 0x64]
mov edx, dword [eax + 0x14]
cmp byte [edx], 0x75
jne 0x43f43c
mov esi, dword [ebp + 0x78]
mov edi, eax
mov ecx, dword [edx + 0x14]
lea eax, [ebp]
push eax
push esi
push 2
call fcn.0043e9f0
mov edx, dword [edi + 0x14]
mov ecx, dword [ebp]
mov dword [ebp + 0x38], eax
cmp ecx, edx
je 0x43f418
mov esi, dword [ebp + 0x34]
mov edi, dword [ebp + 0x44]
jmp 0x43f452
lea eax, [ebp]
mov ecx, edx
push eax
push dword [ebp + 0x78]
push 3
call fcn.0043e9f0
mov ecx, dword [ebp]
mov dword [ebp + 0x38], eax
test ecx, ecx
je 0x43f462
cmp eax, 6
jne 0x43f496
cmp ecx, dword [ebp + 0x64]
jne 0x43f49f
jmp 0x43f470
cmp eax, 1
je 0x43f470
cmp eax, 6
jne 0x43f7ce
test edi, edi
je 0x43f483
lea eax, [ebp + 0x38]
mov ecx, edi
push eax
call fcn.00445450
test al, al
jne 0x43f4a7
add dword [esi + 8], 1
mov eax, dword [ebp + 0x18]
adc dword [esi + 0xc], 0
mov ecx, dword [ebp + 0x1c]
jmp 0x43f3f0
cmp ecx, dword [ebp + 0x64]
je 0x43f7ca
mov dword [ebp + 0x58], ecx
jmp 0x43f7ce
mov eax, dword [ebp + 0x38]
jmp 0x43f7ce
mov edi, dword [0x4e30fc]
mov dword [ebp + 0x34], edi
nop dword [eax + eax]
cmp dword [0x4e4ad8], 0xffffffff
mov dword [0x4e8398], esi
je 0x43f4d5
push esi
call fcn.00406ef0
push 0
push 0xffffffffffffffff
push 0
mov ecx, esi
call fcn.00478520
cmp eax, 1
jne 0x43f7ce
mov esi, dword [0x4e7400]
movzx eax, word [esi]
cmp eax, 0x30
ja 0x43f55d
test ax, ax
je 0x43f548
cmp eax, 0x30
jne 0x43f50a
cmp word [esi + 2], 0
je 0x43f548
push 0
push 1
push 0
mov edx, 1
mov ecx, esi
call fcn.0049c490
add esp, 0xc
sub eax, 1
je 0x43f552
sub eax, 1
jne 0x43f55d
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__wtof]
fstp qword [ebp + 0x14]
movsd xmm0, qword [ebp + 0x14]
add esp, 4
xorps xmm1, xmm1
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x43f55d
mov eax, 1
jmp 0x43f7ce
mov ecx, esi
call fcn.00404b50
or eax, edx
je 0x43f548
mov esi, dword [ebp + 0x64]
mov ecx, dword [esi + 0x14]
cmp byte [ecx], 0x75
jne 0x43f58e
mov edi, dword [ebp + 0x78]
nop dword [eax + eax]
mov ecx, dword [ecx + 0x14]
lea eax, [ebp - 0x10]
push eax
push edi
push 2
call fcn.0043e9f0
mov ecx, dword [esi + 0x14]
mov edx, dword [ebp - 0x10]
cmp edx, ecx
je 0x43f570
mov edi, dword [ebp + 0x34]
jmp 0x43f59f
lea eax, [ebp - 0x10]
push eax
push dword [ebp + 0x78]
push 3
call fcn.0043e9f0
mov edx, dword [ebp - 0x10]
test edx, edx
je 0x43f5ae
cmp eax, 6
jne 0x43f603
cmp edx, esi
jne 0x43f60b
jmp 0x43f5bc
cmp eax, 1
je 0x43f5bc
cmp eax, 6
jne 0x43f7ce
cmp byte [edi + 0xf9], 0
je 0x43f5f6
mov eax, dword [0x4e6728]
mov dword [eax*4 + 0x4e6d70], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x4e6728]
mov dword [ecx*4 + 0x4e6730], eax
inc ecx
xor eax, eax
cmp ecx, 0x190
cmovge ecx, eax
mov dword [0x4e6728], ecx
add dword [edi + 8], 1
adc dword [edi + 0xc], 0
jmp 0x43f4c0
cmp edx, esi
je 0x43f7ca
mov dword [ebp + 0x58], edx
jmp 0x43f7ce
push edi
lea eax, [ebp + 0x58]
mov ecx, esi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.004454e0
jmp 0x43f7ce
push 0x4d636c
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
mov ecx, esi
test eax, eax
lea eax, [ebp + 0x58]
push edi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
je 0x43f656
call fcn.004462b0
jmp 0x43f7ce
call fcn.004465b0
jmp 0x43f7ce
lea ecx, [ebp - 0xa8]
call fcn.00404bd0
mov dword [ebp - 0xa8], vtable.TextFile.0
mov dword [ebp - 0x74], 0xffffffff
mov dword [ebp - 4], 0
mov ecx, dword [0x4e7404]
cmp word [ecx], 0
je 0x43f6f8
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0xfc]
and eax, 0x7fffffff
push eax
push 0x30c
push ecx
lea ecx, [ebp - 0xa8]
call fcn.0049a1b0
test al, al
je 0x43f6f8
push dword [0x4e7408]
lea eax, [ebp - 0xa8]
mov ecx, esi
push eax
push edi
lea eax, [ebp + 0x58]
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.00446880
lea ecx, [ebp - 0xa8]
mov dword [ebp + 0x60], eax
call fcn.00404c30
lea ecx, [ebp - 0xa8]
mov dword [ebp - 4], 0xffffffff
call fcn.00404cd0
jmp 0x43f7d1
lea ecx, [ebp - 0xa8]
mov dword [ebp + 0x60], 1
mov dword [ebp - 4], 0xffffffff
call fcn.00404cd0
jmp 0x43f7d1
mov eax, dword [0x4e7404]
cmp ebx, 3
mov ecx, esi
cmove eax, dword [0x4e7400]
push eax
push dword [ebp + 0x20]
lea eax, [ebp + 0x58]
push dword [ebp + 0x28]
push edi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.00445a50
jmp 0x43f7ce
lea eax, [ebp + 0x43]
push eax
cmp ebx, 4
jne 0x43f768
mov ecx, dword [0x4e7400]
xor edx, edx
push 0
call fcn.004270d0
mov esi, eax
mov eax, dword [0x4e7404]
mov dword [ebp - 0x28], eax
jmp 0x43f781
mov ecx, dword [0x4e7404]
lea eax, [ebp - 0x28]
push eax
mov edx, 1
call fcn.004270d0
mov esi, eax
mov eax, dword [ebp - 0x28]
mov ebx, dword [ebp + 0x64]
add esp, 8
test esi, esi
je 0x43f7be
push eax
push esi
push dword [ebp + 0x24]
lea eax, [ebp + 0x58]
mov ecx, ebx
push dword [ebp + 0x20]
push dword [ebp + 0x28]
push edi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.00445e20
cmp byte [ebp + 0x43], 0
mov dword [ebp + 0x60], eax
je 0x43f7b9
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edx, dword [ebp + 0x68]
jmp 0x43f7d7
mov edx, dword [ebp + 0x68]
mov dword [ebp + 0x60], 1
jmp 0x43f7d7
mov byte [ebp + 0x7f], 1
mov dword [ebp + 0x60], eax
mov edx, dword [ebp + 0x68]
mov ebx, dword [ebp + 0x64]
mov edi, dword [ebp + 0x5c]
mov eax, dword [ebp - 0x4c]
mov dword [edi + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [edi + 0xc], eax
mov eax, dword [ebp - 0x34]
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x20]
mov dword [edi + 0x14], eax
mov eax, dword [ebp + 8]
mov dword [edi + 0x18], eax
mov eax, dword [ebp + 0x50]
mov dword [edi + 0x1c], eax
mov eax, dword [ebp + 0x60]
test eax, eax
je 0x443259
cmp eax, 7
je 0x443259
cmp eax, 8
je 0x443259
cmp byte [ebp + 0x7f], 0
jne 0x4430e7
mov ecx, dword [ebp + 0x58]
test ecx, ecx
je 0x43f844
mov eax, dword [ecx + 0x1c]
cmp eax, dword [ebx + 0x1c]
jne 0x443251
mov esi, ecx
mov dword [ebp + 0x64], esi
test esi, esi
jmp 0x43ea46
cmp dword [ebp + 0x74], 3
je 0x4430f6
mov esi, edx
mov dword [ebp + 0x64], esi
test esi, esi
jmp 0x43ea46
mov edx, dword [ebp + 0x5c]
mov esi, dword [edx + 0x100]
mov dword [ebp + 8], esi
cmp bl, 0x72
jne 0x43f8b1
mov ecx, dword [0x4e73b0]
mov eax, dword [edx + 0x104]
mov dword [ebp + 0x50], eax
mov dword [edx + 0x104], 0
test ecx, ecx
je 0x43f893
push eax
call fcn.0049feb0
mov dword [ebp + 0x60], eax
jmp 0x43f89a
mov dword [ebp + 0x60], 1
lea ecx, [ebp + 0x50]
call fcn.00448310
cmp dword [ebp + 0x60], 0
je 0x4431a8
mov edi, dword [ebp + 0x64]
jmp 0x43f8d0
mov edi, dword [ebp + 0x64]
mov ecx, esi
or ecx, 1
mov dword [edx + 0x100], ecx
mov eax, dword [edi + 0x18]
cmp byte [eax], 0x73
je 0x43f8d0
or ecx, 2
mov dword [edx + 0x100], ecx
mov dword [ebp + 0x58], 0
mov eax, dword [edi + 0x14]
cmp byte [eax], 0x75
jne 0x43f905
mov esi, dword [ebp + 0x78]
lea ecx, [ebp + 0x58]
push ecx
mov ecx, dword [eax + 0x14]
push esi
push 2
call fcn.0043e9f0
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
mov eax, dword [edi + 0x14]
cmp ecx, eax
je 0x43f8e2
mov esi, dword [ebp + 8]
jmp 0x43f91d
lea ecx, [ebp + 0x58]
push ecx
push dword [ebp + 0x78]
mov ecx, eax
push 3
call fcn.0043e9f0
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
mov edi, dword [edi + 0x18]
mov dword [ebp + 0x64], edi
cmp bl, 0x71
jne 0x43f986
mov edi, dword [ebp + 0x5c]
xor bl, bl
mov dword [edi + 0x100], esi
mov esi, dword [ebp + 0x64]
mov al, byte [esi]
cmp al, 0x72
jne 0x43f955
cmp dword [edi + 0x104], 0
mov bl, 1
jne 0x43ed95
mov eax, dword [esi + 0x18]
mov esi, eax
mov dword [ebp + 0x64], esi
mov al, byte [eax]
cmp al, 0x73
je 0x43f99e
test bl, bl
jne 0x43fa4d
cmp dword [edi + 0x104], 0
je 0x43fa4d
lea ecx, [edi + 0x104]
call fcn.00448310
mov edx, 1
mov dword [ebp + 0x60], edx
jmp 0x43fa4a
cmp bl, 0x72
jne 0x43fa50
mov esi, dword [ebp + 0x64]
cmp byte [esi], 0x73
jne 0x43fa4d
mov edi, dword [ebp + 0x5c]
cmp edx, 1
jne 0x43f9ab
test ecx, ecx
je 0x43ed95
mov eax, dword [ebp + 0x5c]
mov ecx, esi
mov edi, dword [edi + 0x104]
mov ebx, dword [0x4e6724]
mov dword [ebp + 8], edi
mov dword [eax + 0x104], 0
mov eax, dword [0x4e6720]
mov dword [ebp + 0x50], eax
lea eax, [ebp - 0x38]
push eax
push 0
push 3
mov dword [0x4e6724], 0
mov dword [0x4e6720], 0
call fcn.0043e9f0
mov esi, eax
test ebx, ebx
je 0x43fa2b
mov eax, dword [0x4e6724]
test eax, eax
je 0x43fa1d
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
cmp dword [0x4e6720], 0x400000
jbe 0x43fa1d
dec dword [0x4e671c]
mov eax, dword [ebp + 0x50]
mov dword [0x4e6724], ebx
mov dword [0x4e6720], eax
cmp esi, 1
jne 0x443270
cmp dword [ebp - 0x38], 0
jne 0x443270
mov eax, dword [ebp + 0x5c]
mov edx, dword [ebp + 0x60]
mov dword [eax + 0x104], edi
mov ecx, dword [ebp + 0x58]
mov edi, dword [ebp + 0x64]
cmp dword [ebp + 0x74], 3
je 0x44310f
cmp edx, 1
jne 0x44310f
test ecx, ecx
je 0x4430da
mov eax, dword [ecx + 0x1c]
cmp eax, dword [edi + 0x1c]
jmp 0x43ed87
cmp dword [esi + 0xc], 1
jne 0x43fa8c
mov esi, dword [esi + 0x18]
test esi, esi
mov edi, dword [ebp + 0x5c]
mov dword [ebp + 0x64], esi
jmp 0x43ea46
mov ecx, dword [esi + 0x14]
lea eax, [ebp + 0x58]
push eax
push edi
push 2
call fcn.0043e9f0
mov ecx, dword [ebp + 0x58]
mov dword [ebp + 0x60], eax
cmp ecx, esi
je 0x43ed92
cmp dword [ebp + 0x74], 3
je 0x4432c6
cmp eax, 1
jne 0x4432c6
test ecx, ecx
je 0x43fa7c
mov eax, dword [esi + 0x1c]
cmp eax, dword [ecx + 0x1c]
jmp 0x43ed87
mov esi, dword fs:[0x24]
add ecx, 1
mov ebx, dword [0x4e73b0]
mov edi, dword [0x4e30fc]
adc edx, 0
mov dword [0x4e8854], edx
mov edx, dword [ebp + 0x64]
mov dword [0x4e8850], ecx
mov dword [ebp + 0x68], ebx
mov dword [ebp + 0x44], edi
mov cl, byte [edx]
movzx eax, cl
dec eax
cmp eax, 0xe1
ja case.0x43fb11.8
movzx eax, byte [eax + 0x443a00]
jmp dword [eax*4 + 0x443778]
mov ecx, edx
call fcn.00456050
mov ecx, eax
jmp 0x4430af
cmp byte [edx + 1], 1
mov edx, dword [0x4e7404]
jbe 0x43fbb6
mov eax, dword [ebp + 0x64]
mov eax, dword [eax + 8]
cmp byte [eax + 0x11], 0
je 0x43fb55
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x43fb6f
push dword [eax + 4]
mov ecx, ebx
push dword [eax]
call fcn.00426590
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e73b4]
test ecx, ecx
je 0x43fbb6
cmp word [edx], 0
jne 0x43fbb6
mov al, byte [ecx + 0x17]
test al, al
jne 0x43fb8c
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
movzx eax, al
sub eax, 1
je 0x43fba7
sub eax, 2
jne 0x43fbb6
mov ecx, ebx
call fcn.0049ffc0
mov ecx, eax
jmp 0x4430af
push ecx
mov ecx, ebx
call fcn.0049fd50
mov ecx, eax
jmp 0x4430af
push 1
push 0
push 0xffffffffffffffff
push edx
mov ecx, ebx
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
mov eax, dword [edx + 8]
cmp dword [eax + 0x1c], 0
je 0x43fbea
cmp byte [eax + 0x11], 0
jne 0x43fbea
mov dword [ebp + 0x44], 1
mov edi, 1
xor esi, esi
jmp 0x43fc3e
mov esi, dword [0x4e73b4]
mov ecx, dword [0x4e7404]
mov dword [ebp + 0x44], 0
test esi, esi
je 0x43fc27
cmp word [ecx], 0
jne 0x43fc27
mov al, byte [esi + 0x17]
test al, al
jne 0x43fc14
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x43fc27
test esi, esi
je 0x43fc29
push 1
mov ecx, esi
call fcn.004265e0
jmp 0x43fc3c
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.0049c490
add esp, 0xc
mov edi, eax
push 1
mov ecx, ebx
call fcn.004265e0
mov ecx, dword [0x4e7408]
mov ebx, eax
movzx ecx, word [ecx]
test cx, cx
je 0x43fdda
call fcn.00413080
movzx ecx, ax
push ecx
push str.SMHD
call dword [sym.imp.VCRUNTIME140.dll_wcschr]
add esp, 8
test eax, eax
je 0x43fdda
test edi, edi
jne 0x43fc91
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
cmp dword [ebp + 0x44], 0
je 0x43fcac
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.004b7950
jmp 0x43fcc6
test esi, esi
je 0x43fcbb
push 0
mov ecx, esi
call fcn.004266f0
jmp 0x43fcc6
mov ecx, dword [0x4e7404]
call fcn.00426540
mov ebx, dword [ebp + 0x68]
mov ecx, ebx
push 0
push 1
movsd qword [ebp + 0x4c], xmm0
call fcn.00401670
cmp word [eax], 0
je 0x43fd23
push 0
push 1
mov ecx, ebx
call fcn.00401670
push 0
lea edx, [ebp - 0x70]
mov ecx, eax
call fcn.0049c0f0
add esp, 4
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x70]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
test eax, eax
jne 0x43fd3b
push 1
push eax
push 0xffffffffffffffff
push 0x4b9c10
mov ecx, ebx
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
lea eax, [ebp - 0x60]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x60]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov eax, dword [0x4e7408]
mov cx, word [eax]
call fcn.00413080
movzx eax, ax
add eax, 0xffffffbc
cmp eax, 0xf
ja case.0x43fd5a.69
movzx eax, byte [eax + 0x443af8]
jmp dword [eax*4 + 0x443ae4]
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4dcb00]
jmp 0x43fda2
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4dcb10]
jmp 0x43fda2
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4dcb20]
jmp 0x43fda2
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4dcb28]
jmp 0x43fda2
movsd xmm0, qword [ebp + 0x4c]
mov edi, dword [ebp - 0x14]
call fcn.004b77ff
add dword [ebp - 0x18], eax
lea ecx, [ebp - 0x8c4]
push 0
adc edi, edx
lea edx, [ebp - 0x18]
mov dword [ebp - 0x14], edi
call fcn.0049c2e0
add esp, 4
mov ecx, ebx
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
cmp edi, 2
je 0x43fe37
cmp ebx, 2
je 0x43fe37
cmp dword [ebp + 0x44], 0
je 0x43fdfa
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 0x43fe18
test esi, esi
je 0x43fe09
push 0
mov ecx, esi
call fcn.00426660
jmp 0x43fe14
mov ecx, dword [0x4e7404]
call fcn.00404b50
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00426660
mov ecx, dword [ebp + 0x68]
add eax, esi
adc edx, edi
push edx
push eax
call fcn.00426590
mov ecx, eax
jmp 0x4430af
cmp dword [ebp + 0x44], 0
je 0x43fe52
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.004b7950
jmp 0x43fe6c
test esi, esi
je 0x43fe61
push 0
mov ecx, esi
call fcn.004266f0
jmp 0x43fe6c
mov ecx, dword [0x4e7404]
call fcn.00426540
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.004266f0
addsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.004265b0
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7408]
movzx ecx, word [eax]
test cx, cx
je 0x43ff89
call fcn.00413080
movzx eax, ax
push eax
push str.SMHD
call dword [sym.imp.VCRUNTIME140.dll_wcschr]
add esp, 8
test eax, eax
je 0x43ff86
mov ecx, dword [0x4e73b4]
mov esi, dword [0x4e7404]
test ecx, ecx
je 0x43fef8
cmp word [esi], 0
jne 0x43fef8
mov al, byte [ecx + 0x17]
test al, al
jne 0x43fee5
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x43fef8
test ecx, ecx
je 0x43fef8
push 0
push 1
call fcn.00401670
mov esi, eax
lea eax, [ebp + 0x2f]
mov ecx, ebx
push eax
push 0
push 1
call fcn.00401670
mov edx, eax
mov ecx, esi
call fcn.0049c3b0
add esp, 4
mov esi, eax
cmp byte [ebp + 0x2f], 0
mov edi, edx
je 0x43ff36
push 1
push 0
push 0xffffffffffffffff
push 0x4b9c10
mov ecx, ebx
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7408]
mov cx, word [eax]
call fcn.00413080
movzx eax, ax
cmp eax, 0x44
je 0x43ff64
cmp eax, 0x48
je 0x43ff5b
cmp eax, 0x4d
jne 0x43ff76
push 0
push 0x3c
jmp 0x43ff6b
push 0
push 0xe10
jmp 0x43ff6b
push 0
push 0x15180
push edi
push esi
call fcn.004b7310
mov esi, eax
mov edi, edx
push edi
push esi
mov ecx, ebx
call fcn.00426590
mov ecx, eax
jmp 0x4430af
mov edx, dword [ebp + 0x64]
mov eax, dword [edx + 8]
cmp dword [eax + 0x1c], 0
je 0x43ffa3
cmp byte [eax + 0x11], 0
jne 0x43ffa3
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x43fff1
mov esi, dword [0x4e73b4]
xor ebx, ebx
mov ecx, dword [0x4e7404]
test esi, esi
je 0x43ffda
cmp word [ecx], bx
jne 0x43ffda
mov al, byte [esi + 0x17]
test al, al
jne 0x43ffc7
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x43ffda
test esi, esi
je 0x43ffdc
push 1
mov ecx, esi
call fcn.004265e0
jmp 0x43ffef
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.0049c490
add esp, 0xc
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.004265e0
cmp edi, 2
je 0x440056
cmp eax, 2
je 0x440056
test ebx, ebx
je 0x440019
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 0x440037
test esi, esi
je 0x440028
push 0
mov ecx, esi
call fcn.00426660
jmp 0x440033
mov ecx, dword [0x4e7404]
call fcn.00404b50
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00426660
mov ecx, dword [ebp + 0x68]
sub eax, esi
sbb edx, edi
push edx
push eax
call fcn.00426590
mov ecx, eax
jmp 0x4430af
test ebx, ebx
je 0x44006f
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.004b7950
jmp 0x440089
test esi, esi
je 0x44007e
push 0
mov ecx, esi
call fcn.004266f0
jmp 0x440089
mov ecx, dword [0x4e7404]
call fcn.00426540
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.004266f0
subsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.004265b0
mov ecx, eax
jmp 0x4430af
mov eax, dword [edx + 8]
cmp dword [eax + 0x1c], 0
je 0x4400c9
cmp byte [eax + 0x11], 0
jne 0x4400c9
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x440117
mov esi, dword [0x4e73b4]
xor ebx, ebx
mov ecx, dword [0x4e7404]
test esi, esi
je 0x440100
cmp word [ecx], bx
jne 0x440100
mov al, byte [esi + 0x17]
test al, al
jne 0x4400ed
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x440100
test esi, esi
je 0x440102
push 1
mov ecx, esi
call fcn.004265e0
jmp 0x440115
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.0049c490
ret
add eax, 0xcc48300
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.004265e0
cmp edi, 2
je 0x440181
cmp eax, 2
je 0x440181
test ebx, ebx
je 0x44013f
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 0x44015d
test esi, esi
je 0x44014e
push 0
mov ecx, esi
call fcn.00426660
jmp 0x440159
mov ecx, dword [0x4e7404]
call fcn.00404b50
mov esi, edx
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00426660
push esi
push edi
push edx
push eax
call fcn.004b73c0
mov ecx, dword [ebp + 0x68]
push edx
push eax
call fcn.00426590
mov ecx, eax
jmp 0x4430af
test ebx, ebx
je 0x44019a
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.004b7950
jmp 0x4401b4
test esi, esi
je 0x4401a9
push 0
mov ecx, esi
call fcn.004266f0
jmp 0x4401b4
mov ecx, dword [0x4e7404]
call fcn.00426540
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.004266f0
mulsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.004265b0
mov ecx, eax
jmp 0x4430af
mov eax, dword [edx + 8]
cmp dword [eax + 0x1c], 0
je 0x4401f4
cmp byte [eax + 0x11], 0
jne 0x4401f4
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x440242
mov esi, dword [0x4e73b4]
xor ebx, ebx
mov ecx, dword [0x4e7404]
test esi, esi
je 0x44022b
cmp word [ecx], bx
jne 0x44022b
mov al, byte [esi + 0x17]
test al, al
jne 0x440218
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x44022b
test esi, esi
je 0x44022d
push 1
mov ecx, esi
call fcn.004265e0
jmp 0x440240
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.0049c490
add esp, 0xc
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.004265e0
cmp edi, 2
je 0x4402ce
cmp eax, 2
je 0x4402ce
test ebx, ebx
je 0x440272
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 0x440290
test esi, esi
je 0x440281
push 0
mov ecx, esi
call fcn.00426660
jmp 0x44028c
mov ecx, dword [0x4e7404]
call fcn.00404b50
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
mov eax, esi
or eax, edi
jne 0x4402ad
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
push 0
call fcn.00426660
push edi
push esi
push edx
push eax
call fcn.004b7310
mov ecx, dword [ebp + 0x68]
push edx
push eax
call fcn.00426590
mov ecx, eax
jmp 0x4430af
test ebx, ebx
je 0x4402e7
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.004b7950
jmp 0x440301
test esi, esi
je 0x4402f6
push 0
mov ecx, esi
call fcn.004266f0
jmp 0x440301
mov ecx, dword [0x4e7404]
call fcn.00426540
mov ecx, dword [ebp + 0x68]
xorps xmm1, xmm1
ucomisd xmm0, xmm1
movsd qword [ebp + 0x4c], xmm0
lahf
test ah, 0x44
jp 0x44032a
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
push 0
call fcn.004266f0
divsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.004265b0
mov ecx, eax
jmp 0x4430af
push 2
mov ecx, edx
call fcn.0043ae30
mov esi, eax
test esi, esi
jns 0x44035b
xor esi, esi
jmp 0x44036a
mov ecx, dword [ebp + 0x64]
push 1
call fcn.0043adb0
cmp esi, eax
cmovg esi, eax
sub esp, 8
mov ecx, ebx
push esi
push dword [0x4e7404]
call fcn.00401630
mov ecx, eax
jmp 0x4430af
push 2
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.0043adb0
mov ecx, eax
mov eax, dword [0x4e7404]
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.00401630
mov ecx, eax
jmp 0x4430af
cmp byte [edx + 1], 4
jb 0x4403f8
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x34]
cmp word [eax], 0
je 0x4403f8
push 3
mov ecx, edx
call fcn.0043ae30
mov edi, eax
cmp edi, 1
jge 0x4403ff
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, ebx
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
mov edi, SysReAllocString
jmp 0x440402
mov edx, dword [ebp + 0x64]
push 2
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [0x4e7410]
mov esi, eax
mov cx, word [ecx]
call fcn.00413080
cmp ax, 0x4c
jne 0x440437
cmp esi, 1
jl 0x4403e2
mov eax, 1
sub eax, edi
add esi, eax
cmp esi, 1
jge 0x440442
dec edi
add edi, esi
cmp esi, 1
mov eax, 1
cmovl esi, eax
mov ecx, dword [ebp + 0x64]
push 1
call fcn.0043adb0
mov ecx, eax
cmp ecx, esi
jb 0x4403e2
mov eax, 1
sub eax, esi
add ecx, eax
mov eax, dword [0x4e7404]
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.00401630
mov ecx, eax
jmp 0x4430af
push 2
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.0043adb0
cmp esi, eax
mov ecx, ebx
cmova esi, eax
sub esp, 8
sub eax, esi
push eax
mov eax, dword [0x4e7404]
lea eax, [eax + esi*2]
push eax
call fcn.00401630
mov ecx, eax
jmp 0x4430af
push 2
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.0043adb0
cmp esi, eax
mov ecx, ebx
cmova esi, eax
sub esp, 8
sub eax, esi
push eax
push dword [0x4e7404]
call fcn.00401630
mov ecx, eax
jmp 0x4430af
push 1
push 1
mov ecx, ebx
call fcn.00401670
mov esi, eax
cmp esi, dword [0x4e7404]
jne 0x44051a
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x440515
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x440565
mov edi, dword [ebp + 0x64]
mov ecx, edi
push 1
push 0
push 1
call fcn.0043adb0
push eax
push 0
mov ecx, ebx
call fcn.004a05c0
cmp eax, 1
jne 0x4431a8
push 0
push eax
mov ecx, ebx
call fcn.00401670
mov ecx, dword [0x4e7404]
mov esi, eax
mov edx, esi
sub edx, ecx
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x440553
jmp 0x440568
mov edi, dword [ebp + 0x64]
mov eax, dword [0x4e7408]
movzx ecx, word [eax]
test cx, cx
je 0x4405a3
call fcn.00413080
cmp ax, 0x54
jne 0x4405a3
mov eax, dword [0x4e7408]
cmp word [eax + 2], 0
jne 0x4405a3
mov ecx, esi
call fcn.00426250
push 0
mov ecx, ebx
call fcn.00426980
mov ecx, eax
jmp 0x4430af
cmp byte [edi], 0x31
push esi
jne 0x4405bf
call dword [sym.imp.USER32.dll_CharLowerW]
push 0
mov ecx, ebx
call fcn.00426980
mov ecx, eax
jmp 0x4430af
call dword [sym.imp.USER32.dll_CharUpperW]
push 0
mov ecx, ebx
call fcn.00426980
mov ecx, eax
jmp 0x4430af
mov esi, dword [0x4e73b4]
test esi, esi
je 0x440642
cmp byte [esi + 0x17], 0
jne 0x4405ed
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x15]
jmp 0x4405f0
mov al, byte [esi + 0x15]
test al, 1
je 0x440642
cmp byte [esi + 0x17], 0
jne 0x4405fd
mov esi, dword [esi + 0xc]
cmp byte [esi + 0x17], 1
jne 0x440628
test byte [esi + 0x15], 8
je 0x440610
mov ecx, esi
call fcn.00401590
lea eax, [esi + 0xc]
mov ecx, ebx
mov eax, dword [eax]
shr eax, 1
push 0
push eax
call fcn.00426590
mov ecx, eax
jmp 0x4430af
mov eax, 0x4e9cf8
mov ecx, ebx
push 0
mov eax, dword [eax]
shr eax, 1
push eax
call fcn.00426590
mov ecx, eax
jmp 0x4430af
push 1
mov ecx, edx
call fcn.0043adb0
push 0
push eax
mov ecx, ebx
call fcn.00426590
mov ecx, eax
jmp 0x4430af
mov ebx, dword [0x4e740c]
mov dword [ebp + 0x18], 0xffffffff
movzx ecx, word [ebx]
test cx, cx
je 0x4406aa
call fcn.00413080
movzx eax, ax
push eax
push 0x4d6448
call dword [sym.imp.VCRUNTIME140.dll_wcschr]
add esp, 8
test eax, eax
je 0x4406aa
cmp word [ebx + 2], 0
lea ecx, [ebx + 2]
je 0x4406aa
call fcn.00416fe0
mov ecx, eax
mov dword [ebp + 0x38], ecx
test ecx, ecx
jle 0x4407a6
jmp 0x4406b1
mov dword [ebp + 0x38], 1
mov eax, dword [0x4e7408]
mov dword [ebp + 0x34], eax
cmp word [eax], 0
jne 0x4406cb
mov dword [ebp + 0x18], 0
jmp 0x4407a6
mov eax, dword [0x4e7404]
mov ecx, dword [ebp + 0x64]
push 4
mov dword [ebp + 0x1c], eax
call fcn.0043ae30
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.0043adb0
mov edi, eax
cmp esi, edi
jge 0x4407a6
movzx ecx, word [ebx]
cmp ecx, 0x31
je 0x440773
call fcn.00413080
cmp ax, 0x52
je 0x440773
mov ecx, dword [ebp + 0x64]
push 2
call fcn.0043adb0
mov ebx, dword [ebp + 0x34]
mov edi, 1
mov dword [ebp + 0x50], eax
mov eax, dword [ebp + 0x1c]
lea ecx, [eax + esi*2]
mov esi, dword [ebp + 0x38]
nop dword [eax]
mov edx, dword [0x4e30fc]
mov dl, byte [edx + 0xf2]
test dl, dl
jne 0x440749
mov edx, ebx
call fcn.0049ca30
jmp 0x440762
cmp dl, 2
jne 0x440757
mov edx, ebx
call fcn.0049cc80
jmp 0x440762
push ebx
push ecx
call dword [sym.imp.VCRUNTIME140.dll_wcsstr]
add esp, 8
test eax, eax
je 0x4407a6
cmp edi, esi
je 0x440798
mov ecx, dword [ebp + 0x50]
inc edi
lea ecx, [eax + ecx*2]
jmp 0x440730
mov eax, dword [ebp + 0x44]
sub edi, esi
push dword [ebp + 0x38]
mov ebx, dword [ebp + 0x34]
mov edx, edi
movzx eax, byte [eax + 0xf2]
push eax
push ebx
mov ebx, dword [ebp + 0x1c]
mov ecx, ebx
call fcn.0049c800
add esp, 0xc
jmp 0x44079b
mov ebx, dword [ebp + 0x1c]
test eax, eax
je 0x4407a6
sub eax, ebx
sar eax, 1
mov dword [ebp + 0x18], eax
mov esi, dword [ebp + 0x18]
mov ecx, 0x4b9cc4
push 1
push 0
test esi, esi
mov eax, 0x4cffc4
push 0xffffffffffffffff
cmovns eax, ecx
mov ecx, dword [0x4e5b90]
push eax
call fcn.004a05c0
mov ecx, dword [ebp + 0x68]
push esi
call fcn.00404b80
mov ecx, eax
jmp 0x4430af
mov ecx, edx
call fcn.004564c0
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, edx
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.0044b050
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, edx
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.00456640
mov ecx, eax
jmp 0x4430af
push dword [0x4e7400]
mov ecx, edx
call fcn.00456f60
mov ecx, eax
jmp 0x4430af
push dword [0x4e7404]
mov ecx, edx
push dword [0x4e7400]
call fcn.004575f0
mov ecx, eax
jmp 0x4430af
push 0
push dword [0x4e7420]
mov ecx, edx
push 7
call fcn.0043ae30
mov ebx, dword [ebp + 0x64]
mov ecx, ebx
push eax
push 6
call fcn.0043ae30
push eax
push 5
mov ecx, ebx
call fcn.0043ae30
push eax
push 4
mov ecx, ebx
call fcn.0043ae30
push eax
push 3
mov ecx, ebx
call fcn.0043ae30
push eax
push 2
mov ecx, ebx
call fcn.0043ae30
push eax
mov ecx, ebx
call fcn.00451e20
mov ecx, eax
jmp 0x4430af
push dword [0x4e7418]
mov ecx, edx
push 5
call fcn.0043ae30
mov ebx, dword [ebp + 0x64]
mov ecx, ebx
push eax
push 4
call fcn.0043ae30
push eax
push 3
mov ecx, ebx
call fcn.0043ae30
push eax
push 2
mov ecx, ebx
call fcn.0043ae30
push eax
mov ecx, ebx
call fcn.00452600
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, edx
push 2
call fcn.0043ae30
mov ecx, dword [ebp + 0x64]
push eax
push 1
call fcn.0043ae30
mov ecx, dword [ebp + 0x64]
push eax
call fcn.0046ef80
mov ecx, eax
jmp 0x4430af
xor edx, edx
cmp cl, 0x42
push 0
push dword [edi + 0xd4]
sete dl
mov ecx, dword [0x4e7400]
call fcn.00417330
add esp, 8
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
xor eax, eax
cmp dword [edi + 0xd4], 3
push 0
sete al
xor edx, edx
lea eax, [eax*2 + 1]
push eax
jmp 0x44092a
push 0
push 2
xor edx, edx
jmp 0x44092a
push 0
push 0
xor edx, edx
jmp 0x44092a
mov ecx, dword [0x4e7400]
call fcn.00418fa0
mov ecx, eax
jmp 0x4430af
push 0x4b9c10
push 0x4b9c10
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
mov edx, dword [0x4e7400]
push dword [0x4e7404]
call fcn.00419290
add esp, 0x20
mov ecx, eax
jmp 0x4430af
push dword [0x4e7414]
push dword [0x4e740c]
push dword [0x4e7418]
push dword [0x4e7410]
push 0x4b9c10
push 0x4b9c10
jmp 0x4409a9
push 0x4b9c10
push 0x4b9c10
push dword [0x4e740c]
mov edx, 0x4b9c10
push dword [0x4e7408]
push 0x4b9c10
push 0x4b9c10
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.00419290
add esp, 0x20
mov ecx, eax
jmp 0x4430af
push 4
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [ebp + 0x64]
push eax
call fcn.00455460
mov ecx, eax
jmp 0x4430af
mov edx, dword [0x4e7400]
cmp cl, 0x78
push 0
push 0
sete al
mov ecx, edi
movzx eax, al
push eax
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.004a1280
add esp, 0x18
test eax, eax
je case.0x43fb11.3
mov eax, dword [0x4e30fc]
cmp dword [eax + 0x54], 0xffffffff
jle case.0x43fb11.3
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [0x4e7484], eax
jne 0x440ac2
mov ecx, dword [0x4e30fc]
mov edx, 1
mov ecx, dword [ecx + 0x54]
call fcn.00401a20
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov eax, dword [0x4e30fc]
push dword [eax + 0x54]
call dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push 9
push str.ahk_group
push dword [0x4e7400]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
mov edx, dword [0x4e740c]
add esp, 0xc
test eax, eax
jne 0x440b18
mov eax, dword [0x4e7404]
cmp word [eax], 0
jne 0x440b18
cmp word [edx], 0
jne 0x440b18
mov bl, 1
jmp 0x440b1a
xor bl, bl
xor ecx, ecx
mov eax, 0x14
test bl, bl
cmovne eax, ecx
mov ecx, dword [ebp + 0x64]
mov dword [ebp + 0x18], eax
mov al, byte [ecx]
cmp al, 0x84
je 0x440b3d
cmp al, 0x85
je 0x440b3d
mov eax, dword [0x4e7408]
jmp 0x440b73
mov eax, dword [0x4e7408]
cmp word [eax], 0
je 0x440b6e
push 2
call fcn.0043aee0
mulsd xmm0, qword [0x4dcad8]
mov eax, 0x1f4
mov edx, dword [0x4e740c]
cvttsd2si ecx, xmm0
test ecx, ecx
cmove ecx, eax
mov dword [ebp + 0x18], ecx
mov eax, dword [0x4e7410]
cmp word [eax], 0
jne 0x440bd1
test bl, bl
je 0x440bd1
mov edi, dword [0x4e7400]
add edi, 0x12
movzx eax, word [edi]
cmp eax, 0x20
je 0x440b93
cmp eax, 9
jne 0x440b98
add edi, 2
jmp 0x440b86
test ax, ax
je 0x440bce
mov esi, dword [0x4e7d64]
test esi, esi
je 0x440bce
nop word [eax + eax]
push edi
push dword [esi + 4]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
je 0x440bfe
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x440bb0
mov edx, dword [0x4e740c]
mov edi, dword [ebp + 0x44]
mov ecx, dword [ebp + 0x64]
mov al, byte [ecx]
cmp al, 0x84
je 0x440c16
cmp al, 0x85
je 0x440c18
push edx
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
push eax
call fcn.0044cee0
mov ecx, eax
jmp 0x4430af
mov eax, dword [ebp + 0x64]
mov ecx, esi
push dword [ebp + 0x18]
movzx eax, byte [eax]
push eax
call fcn.004a3370
mov ecx, eax
jmp 0x4430af
cmp al, 0x85
sete al
mov ecx, edi
movzx eax, al
push eax
push dword [0x4e7410]
push edx
push dword [ebp + 0x18]
mov edx, dword [0x4e7400]
push dword [0x4e7404]
call fcn.004a1580
add esp, 0x14
jmp 0x440a77
push dword [0x4e7404]
mov ecx, edx
call fcn.00451670
mov ecx, eax
jmp 0x4430af
push dword [0x4e7404]
push dword [0x4e7400]
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
test eax, eax
mov ecx, dword [ebp + 0x64]
sete al
movzx eax, al
push eax
call fcn.004476e0
mov ecx, eax
jmp 0x4430af
lea eax, [ebp - 0x58]
push eax
push 0x3a98
push 1
push str.Environment
push 0
push 0x1a
push 0xffff
call dword [sym.imp.USER32.dll_SendMessageTimeoutW]
jmp 0x440c6a
push dword [0x4e7404]
mov ecx, edx
push dword [0x4e7400]
call fcn.004706e0
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e7400]
mov edx, 0x4e8868
push 0xffffffffffffffff
call fcn.00499ec0
mov ecx, dword [0x4e7404]
mov edx, 0x4e8874
push 0xffffffffffffffff
call fcn.00499ec0
mov ecx, dword [0x4e7408]
mov edx, 0x4e8880
push 0xffffffffffffffff
call fcn.00499ec0
add esp, 0xc
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [0x4e7408]
mov edx, str.UseErrorLevel
call fcn.0049ca30
test eax, eax
mov cl, 3
mov eax, dword [ebp + 0x64]
setne bl
mov byte [ebp - 0x3c], bl
cmp cl, byte [eax + 1]
mov ecx, 0x4e7d50
sbb eax, eax
and eax, dword [0x4e73bc]
push eax
push 1
push dword [ebp - 0x3c]
mov al, bl
push 0
push dword [0x4e7408]
xor al, 1
movzx eax, al
push eax
push dword [0x4e7404]
push 0
push dword [0x4e7400]
call fcn.00448b80
mov ecx, eax
mov dword [ebp + 0x68], ecx
test bl, bl
je 0x4430b2
push 1
test ecx, ecx
mov eax, 0x4b9cc4
push 0
mov ecx, str.ERROR
cmove eax, ecx
mov ecx, dword [0x4e5b90]
push 0xffffffffffffffff
push eax
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
mov ecx, edx
call fcn.0044d000
mov ecx, eax
jmp 0x4430af
cmp byte [edx + 1], 2
mov ecx, edx
jbe 0x440de6
push dword [0x4e741c]
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044d7b0
mov ecx, eax
jmp 0x4430af
push 0x4b9c10
push 0x4b9c10
push 0x4b9c10
push 0x4b9c10
push dword [0x4e7404]
push dword [0x4e7400]
push 0x4b9c10
push 0x4b9c10
call fcn.0044d7b0
mov ecx, eax
jmp 0x4430af
push dword [0x4e7428]
mov ecx, edx
push dword [0x4e7424]
push dword [0x4e7420]
push dword [0x4e741c]
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0046f370
mov ecx, eax
jmp 0x4430af
xor eax, eax
cmp cl, 0x47
mov ecx, edx
sete al
push eax
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044d910
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e740c]
mov dl, 1
push 0
call fcn.00417010
add esp, 4
mov byte [ebp - 0x40], al
test al, al
jne 0x440edc
push dword [0x4e740c]
mov ecx, dword [ebp + 0x64]
push 0
push str.Parameter_4_invalid.
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7410]
cmp word [eax], 0
je 0x440ef3
mov ecx, dword [ebp + 0x64]
push 4
call fcn.0043ae30
jmp 0x440ef8
mov eax, 1
push dword [0x4e741c]
mov ecx, dword [ebp + 0x64]
push dword [0x4e7418]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
push dword [0x4e7414]
push eax
push dword [ebp - 0x40]
call fcn.0044d9d0
mov ecx, eax
jmp 0x4430af
push dword [0x4e7420]
mov ecx, edx
push dword [0x4e741c]
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044e070
mov ecx, eax
jmp 0x4430af
push dword [0x4e7420]
mov ecx, edx
push dword [0x4e741c]
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
call fcn.0044e2d0
mov ecx, eax
jmp 0x4430af
push dword [0x4e7410]
mov ecx, edx
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.0044e440
mov ecx, eax
jmp 0x4430af
push dword [0x4e7410]
mov ecx, edx
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044e620
mov ecx, eax
jmp 0x4430af
push dword [0x4e7414]
mov ecx, edx
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044e770
mov ecx, eax
jmp 0x4430af
push dword [0x4e7414]
mov ecx, edx
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.0044e860
mov ecx, eax
jmp 0x4430af
push dword [0x4e7418]
mov ecx, edx
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0046f650
mov ecx, eax
jmp 0x4430af
push dword [0x4e741c]
mov ecx, edx
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.0046fe40
mov ecx, eax
jmp 0x4430af
push dword [0x4e7414]
mov ecx, edx
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.0044f040
mov ecx, eax
jmp 0x4430af
push dword [0x4e741c]
mov ecx, edx
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044f0c0
mov ecx, eax
jmp 0x4430af
cmp cl, 0x92
mov ecx, edx
sete al
movzx eax, al
push eax
call fcn.0044f210
mov ecx, eax
jmp 0x4430af
push dword [0x4e7408]
mov ecx, edx
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044f520
mov ecx, eax
jmp 0x4430af
push dword [0x4e7414]
mov ecx, edx
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.004502d0
mov ecx, eax
jmp 0x4430af
cmp byte [edx + 1], 1
mov ecx, edx
jbe 0x4411bb
push dword [0x4e7410]
mov esi, dword [0x4e7408]
push dword [0x4e740c]
push dword [0x4e7404]
push dword [0x4e7400]
jmp 0x4411d5
mov esi, dword [0x4e7400]
push 0x4b9c10
push 0x4b9c10
push 0x4b9c10
push 0x4b9c10
call fcn.0045c310
test eax, eax
je case.0x43fb11.3
push esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push dword [0x4e7410]
mov ecx, edx
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.00450760
mov ecx, eax
jmp 0x4430af
push dword [0x4e7410]
mov ecx, edx
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.004508b0
mov ecx, eax
jmp 0x4430af
push dword [0x4e7414]
mov ecx, edx
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.004509b0
mov ecx, eax
jmp 0x4430af
push dword [0x4e7410]
mov ecx, edx
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.00451240
mov ecx, eax
jmp 0x4430af
push dword [0x4e741c]
mov ecx, edx
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
call fcn.00451500
mov ecx, eax
jmp 0x4430af
push dword [0x4e7408]
mov ecx, edx
push dword [0x4e7404]
call fcn.00451760
mov ecx, eax
jmp 0x4430af
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 0x440a7f
push 0
push 0x1a0
jmp 0x4412e2
mov eax, dword [edx + 0xc]
test eax, eax
jne 0x441345
mov ecx, dword [0x4e7400]
cmp word [ecx], ax
je 0x441345
push ecx
mov ecx, 0x4e7d50
call fcn.00431370
test eax, eax
jne 0x441345
push dword [0x4e7400]
mov ecx, dword [ebp + 0x64]
push eax
push str.Target_label_does_not_exist.
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
mov dword [0x4e87f4], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [0x4e7400]
mov al, 1
cmp al, byte [edx + 1]
sbb eax, eax
and eax, dword [0x4e73b4]
push eax
push dword [edx + 0xc]
mov edx, dword [0x4e7404]
push dword [0x4e7408]
call fcn.004141c0
add esp, 0xc
mov ecx, eax
jmp 0x4430af
mov esi, dword [edx + 0xc]
test esi, esi
jne 0x44143e
push esi
push dword [0x4e73b0]
mov ecx, 0x4e7d50
push dword [0x4e7400]
call fcn.004313c0
mov esi, eax
test esi, esi
jne 0x44143e
mov eax, dword [0x4e7400]
cmp word [eax], si
je 0x4413db
mov ecx, dword [ebp + 0x64]
push eax
push esi
push str.Target_label_does_not_exist.
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
mov ebx, dword [ebp + 0x64]
cmp byte [ebx + 1], 0
jbe 0x44140a
mov eax, dword [ebx + 8]
mov eax, dword [eax + 4]
cmp word [eax], 0
je 0x44140a
push 0x4b9c10
push 0
push str.Parameter_1_invalid.
mov ecx, ebx
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
mov esi, dword [edi + 0xbc]
test esi, esi
jne 0x441441
mov esi, dword [edi + 0xc0]
test esi, esi
je 0x441424
mov esi, dword [esi]
test esi, esi
jne 0x441441
push 0x4b9c10
push 0
push str.Parameter_1_must_not_be_blank_in_this_case.
mov ecx, ebx
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
mov ebx, dword [ebp + 0x64]
mov ecx, dword [0x4e7404]
mov edx, 1
push 0
push 1
push 1
call fcn.0049c490
add esp, 0xc
test eax, eax
jne 0x4414c2
mov ecx, dword [0x4e7404]
xor edx, edx
call fcn.00413160
mov ecx, eax
test ecx, ecx
jne 0x4414c4
push str.Delete
push dword [0x4e7404]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
jne 0x4414a7
push esi
mov ecx, 0x4e7d50
call fcn.00431230
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push dword [0x4e7404]
mov ecx, ebx
push 0
push str.Parameter_2_invalid.
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
xor ecx, ecx
lea eax, [ecx - 1]
cmp eax, 1
ja 0x441501
cmp ecx, 1
mov ecx, 0x4e7d50
push 0
sete al
movzx eax, al
push eax
push dword [0x4e7408]
push 0x4b9c10
push esi
call fcn.00431020
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov edx, dword [0x4e7404]
mov ecx, dword [0x4e7408]
cmp word [edx], 0
jne 0x44151d
cmp word [ecx], 0
je 0x44151d
mov al, 1
jmp 0x44151f
xor al, al
push eax
push 1
push ecx
push edx
push esi
mov ecx, 0x4e7d50
call fcn.00431020
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov eax, dword [0x4e7400]
mov esi, 0x10
cmp word [eax], 0
je 0x441579
push 0x4d6488
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
je 0x441579
mov ecx, dword [ebp + 0x64]
push 0
call fcn.0043ae30
mov esi, eax
test esi, esi
jne 0x441579
xor cl, cl
jmp 0x44157b
mov cl, 1
mov byte [edi + 0xee], cl
test cl, cl
je 0x4415b9
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 0x4430bd
mov dword [edi + 0xd8], 5
mov byte [edi + 0xec], 1
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [0x4e7400]
call fcn.00428500
sub eax, 1
je 0x44169a
sub eax, 1
je 0x44164e
sub eax, 1
jne case.0x4428f4.69
mov eax, dword [0x4e7404]
cmp word [eax], 0
je 0x441633
mov ecx, dword [ebp + 0x64]
push 1
call fcn.0043ae30
or eax, edx
jne 0x441633
mov al, 1
mov dword [ebp + 0x68], 1
mov byte [edi + 0xed], al
mov dword [ebp + 0x60], 1
jmp 0x4430bd
xor al, al
mov dword [ebp + 0x68], 1
mov byte [edi + 0xed], al
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov eax, dword [0x4e7404]
mov ebx, dword [ebp + 0x64]
cmp word [eax], 0
je 0x44166a
push 1
mov ecx, ebx
call fcn.0043ae30
mov dword [0x4e885c], eax
mov eax, dword [0x4e7408]
cmp word [eax], 0
je case.0x4428f4.69
push 2
mov ecx, ebx
call fcn.0043ae30
mov dword [0x4e8858], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [ebp + 0x64]
push 1
call fcn.0043ae30
mov dword [edi + 0x2c], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov esi, dword [edx + 0xc]
test esi, esi
jne 0x4416e0
push 1
push dword [0x4e7400]
mov ecx, 0x4e7d50
call fcn.0043bd90
mov esi, eax
test esi, esi
je 0x4431a8
mov edx, dword [ebp + 0x64]
mov ecx, dword [0x4e740c]
cmp word [ecx], 0
je 0x441720
mov eax, dword [edx + 0x18]
test eax, eax
jne 0x44171d
push ecx
mov ecx, 0x4e7d50
call fcn.00431370
test eax, eax
jne 0x44171d
push dword [0x4e740c]
mov ecx, dword [ebp + 0x64]
push eax
push str.Target_label_does_not_exist.
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
mov dword [esi + 0x10], eax
push dword [0x4e7414]
mov ecx, esi
push dword [0x4e7410]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.004a3010
mov ecx, eax
jmp 0x4430af
mov esi, dword [edx + 0xc]
test esi, esi
jne 0x441797
mov edi, dword [0x4e7400]
cmp word [edi], si
je case.0x43fb11.3
mov esi, dword [0x4e7d64]
test esi, esi
je case.0x43fb11.3
mov ebx, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
push edi
push dword [esi + 4]
call ebx
add esp, 8
test eax, eax
je 0x44179d
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x441770
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ebx, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
mov eax, dword [0x4e7404]
cmp word [eax], 0
je 0x4417d4
push 0x4d0888
push eax
call ebx
add esp, 8
test eax, eax
jne 0x4417d4
mov al, 1
mov ecx, esi
push eax
call fcn.004a36b0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
xor al, al
mov ecx, esi
push eax
call fcn.004a36b0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov esi, dword [edx + 0xc]
test esi, esi
jne 0x441847
mov edi, dword [0x4e7400]
cmp word [edi], si
je case.0x43fb11.3
mov esi, dword [0x4e7d64]
test esi, esi
je case.0x43fb11.3
mov ebx, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
nop dword [eax + eax]
push edi
push dword [esi + 4]
call ebx
add esp, 8
test eax, eax
je 0x44184d
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x441820
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ebx, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
mov eax, dword [0x4e7404]
cmp word [eax], 0
je 0x4418be
push 0x4d3c98
push eax
call ebx
add esp, 8
test eax, eax
jne 0x441887
push eax
push 0x84
mov ecx, esi
call fcn.004a3370
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov eax, dword [0x4e7404]
cmp word [eax], 0
je 0x4418be
push 0x4d0888
push eax
call ebx
add esp, 8
test eax, eax
jne 0x4418be
mov al, 1
mov ecx, esi
push eax
call fcn.004a3420
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
xor al, al
mov ecx, esi
push eax
call fcn.004a3420
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push dword [0x4e7408]
mov ecx, edx
push dword [0x4e7404]
call fcn.00457e60
mov ecx, eax
jmp 0x4430af
test ebx, ebx
jne 0x44191f
mov esi, dword [ebp + 0x64]
mov ecx, esi
push 1
call fcn.0043ae30
mov ecx, eax
call fcn.00425fb0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
mov ecx, dword [0x4e7404]
mov esi, 1
push 0
push 1
push 0
mov edx, esi
call fcn.0049c490
add esp, 0xc
cmp eax, 2
je 0x4419e1
mov ecx, dword [0x4e7408]
mov edx, esi
push 0
push esi
push 0
call fcn.0049c490
add esp, 0xc
cmp eax, 2
je 0x4419e1
mov eax, dword [0x4e7404]
mov ebx, dword [ebp + 0x64]
cmp word [eax], 0
je 0x44197b
push esi
mov ecx, ebx
call fcn.0043ae30
mov edi, eax
jmp 0x44197d
xor edi, edi
mov eax, dword [0x4e7408]
mov dword [ebp + 0x34], edi
cmp word [eax], 0
je 0x441998
push 2
mov ecx, ebx
call fcn.0043ae30
mov esi, eax
jmp 0x44199d
mov esi, SysReAllocString
cmp edi, esi
mov ebx, esi
cmovle ebx, edi
call fcn.004260f0
mov edi, eax
mov eax, dword [ebp + 0x34]
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.004b7460
mov ecx, dword [ebp + 0x68]
add eax, ebx
push eax
call fcn.00404b80
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7404]
mov esi, dword [ebp + 0x64]
cmp word [eax], 0
je 0x4419ff
push 1
mov ecx, esi
call fcn.0043aee0
movsd qword [ebp + 0x4c], xmm0
jmp 0x441a07
xorps xmm2, xmm2
movsd qword [ebp + 0x4c], xmm2
mov eax, dword [0x4e7408]
cmp word [eax], 0
je 0x441a25
push 2
mov ecx, esi
call fcn.0043aee0
movaps xmm1, xmm0
movsd qword [ebp + 4], xmm0
jmp 0x441a32
movsd xmm1, qword [0x4dcb18]
movsd qword [ebp + 4], xmm1
movsd xmm2, qword [ebp + 0x4c]
comisd xmm2, xmm1
jbe 0x441a4d
movaps xmm0, xmm2
movaps xmm2, xmm1
movsd qword [ebp + 0x4c], xmm2
movsd qword [ebp + 4], xmm0
call fcn.00426140
movsd xmm1, qword [ebp + 4]
mov ecx, ebx
subsd xmm1, qword [ebp + 0x4c]
mulsd xmm0, xmm1
addsd xmm0, qword [ebp + 0x4c]
movaps xmm1, xmm0
call fcn.004265b0
mov ecx, eax
jmp 0x4430af
push 1
push dword [0x4e7404]
mov ecx, edx
call fcn.00457f70
mov ecx, eax
jmp 0x4430af
push dword [0x4e7408]
mov ecx, edx
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.00458140
mov ecx, eax
jmp 0x4430af
push dword [0x4e7408]
mov ecx, edx
push dword [0x4e7404]
call fcn.00458430
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov eax, dword [0x4e7400]
xor esi, esi
push dword [0x4e7408]
cmp cl, 0x9d
mov ecx, edx
push dword [0x4e7404]
cmove eax, esi
push eax
call fcn.00458a00
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7404]
cmp word [eax], 0
je 0x441b10
push 1
mov ecx, edx
call fcn.0043ae30
mov ebx, dword [ebp + 0x64]
dec eax
mov cl, byte [ebx]
jmp 0x441b15
mov ebx, dword [ebp + 0x64]
xor eax, eax
cdq
test edx, edx
jg 0x441b2b
jl 0x441b20
test eax, eax
jae 0x441b2b
xorps xmm0, xmm0
movlpd qword [ebp + 0x4c], xmm0
mov eax, dword [ebp + 0x4c]
cmp cl, 0x9f
mov ecx, ebx
push eax
jne 0x441b3f
call fcn.00459a50
mov ecx, eax
jmp 0x4430af
push dword [0x4e7400]
call fcn.00459b50
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7404]
cmp word [eax], 0
je 0x441b6c
push 1
mov ecx, edx
call fcn.0043ae30
mov edx, dword [ebp + 0x64]
mov esi, eax
jmp 0x441b71
mov esi, 0x96
mov eax, dword [0x4e7400]
cmp word [eax], 0
je 0x441ba0
push 0
mov ecx, edx
call fcn.0043ae30
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
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 0x4430bd
mov eax, dword [0x4e7404]
cmp word [eax], 0
je 0x441be3
push str.wait
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
je 0x441c0e
mov eax, dword [0x4e7404]
push 0x4cffc4
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
test eax, eax
je 0x441c0e
mov ecx, dword [ebp + 0x64]
xor al, al
push eax
push dword [0x4e7400]
call fcn.00459ce0
mov ecx, eax
jmp 0x4430af
mov ecx, dword [ebp + 0x64]
mov al, 1
push eax
push dword [0x4e7400]
call fcn.00459ce0
mov ecx, eax
jmp 0x4430af
cmp byte [edx + 1], 2
jae 0x441c31
mov eax, dword [edi + 0x18]
jmp 0x441c33
xor eax, eax
push eax
push dword [0x4e7400]
mov ecx, edx
push dword [0x4e7404]
call fcn.0045b090
mov ecx, eax
jmp 0x4430af
push dword [0x4e7404]
mov ecx, edx
call fcn.0045a7d0
mov ecx, eax
jmp 0x4430af
push dword [0x4e7408]
mov ecx, edx
push dword [0x4e7404]
call fcn.0045adb0
mov ecx, eax
jmp 0x4430af
push dword [0x4e7400]
mov ecx, edx
call fcn.0045b420
mov ecx, eax
jmp 0x4430af
push dword [0x4e7400]
mov ecx, edx
call fcn.004713f0
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7400]
xor ecx, ecx
push 7
cmp word [eax], cx
cmovne ecx, eax
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHEmptyRecycleBinW]
mov ecx, dword [ebp + 0x64]
test eax, eax
setne al
movzx eax, al
push eax
call fcn.004476e0
mov ecx, eax
jmp 0x4430af
push dword [0x4e7408]
mov ecx, edx
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0045b4e0
mov ecx, eax
jmp 0x4430af
lea eax, [edi + 0x30]
mov ecx, edx
push eax
push 0
push 2
call fcn.0043ae30
mov edx, dword [0x4e7404]
cmp eax, 1
mov ecx, dword [0x4e7400]
sete al
movzx eax, al
push eax
call fcn.00471c70
add esp, 0xc
test eax, eax
jne 0x441d6e
mov ecx, dword [0x4e5b90]
push 1
push eax
push 0xffffffffffffffff
push 0x4b9cc4
call fcn.004a05c0
mov ecx, eax
jmp 0x4430af
lea eax, [edi + 0x30]
mov ecx, edx
push eax
push 1
push 2
call fcn.0043ae30
mov edx, dword [0x4e7404]
cmp eax, 1
mov ecx, dword [0x4e7400]
sete al
movzx eax, al
push eax
call fcn.00471c70
add esp, 0xc
mov ecx, dword [ebp + 0x64]
push eax
call fcn.00447790
mov ecx, eax
jmp 0x4430af
push 2
mov ecx, edx
call fcn.0043ae30
mov edx, dword [0x4e7404]
cmp eax, 1
mov ecx, dword [0x4e7400]
sete al
movzx eax, al
push eax
call fcn.004716c0
add esp, 4
test al, al
jmp 0x440c6c
mov eax, dword [0x4e7408]
mov cx, word [eax]
call fcn.00413080
cmp ax, 0x52
jne 0x441dd6
push dword [0x4e7404]
push dword [0x4e7400]
call dword [sym.imp.KERNEL32.dll_MoveFileW]
jmp 0x440c6a
mov ecx, dword [ebp + 0x64]
push 2
call fcn.0043ae30
mov edx, dword [0x4e7404]
mov ecx, dword [0x4e7400]
push eax
call fcn.00471870
add esp, 4
test al, al
jmp 0x440c6c
push dword [0x4e7400]
mov ecx, edx
call fcn.0045a670
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7400]
cmp word [eax], 0
je 0x441e4b
push 1
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [0x4e7400]
cmp eax, 1
sete dl
call fcn.00471b60
test al, al
je 0x441e4b
mov ecx, dword [ebp + 0x64]
xor al, al
push eax
call fcn.004476e0
mov ecx, eax
jmp 0x4430af
mov ecx, dword [ebp + 0x64]
mov al, 1
push eax
call fcn.004476e0
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7404]
cmp word [eax], 0
jne 0x441e86
mov eax, dword [edi + 0x10]
test eax, eax
je 0x441e81
add eax, 0x2c
mov ecx, edx
push eax
call fcn.0045b770
mov ecx, eax
jmp 0x4430af
mov eax, 0x4b9c10
push eax
mov ecx, edx
call fcn.0045b770
mov ecx, eax
jmp 0x4430af
mov esi, dword [0x4e7404]
cmp word [esi], 0
jne 0x441eb0
mov eax, dword [edi + 0x10]
lea esi, [eax + 0x2c]
test eax, eax
jne 0x441eb0
mov esi, 0x4b9c10
push 0
push 3
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [0x4e7408]
cmp eax, 1
sete al
movzx eax, al
push eax
call fcn.00428ff0
mov ecx, dword [ebp + 0x64]
push eax
push esi
push dword [0x4e7400]
call fcn.0045b830
xor ecx, ecx
cmp dword [edi + 0x104], ecx
sete cl
jmp 0x4430af
mov ecx, dword [0x4e7404]
cmp word [ecx], 0
jne 0x441f0b
mov eax, dword [edi + 0x10]
lea ecx, [eax + 0x2c]
test eax, eax
jne 0x441f0b
mov ecx, 0x4b9c10
mov eax, dword [0x4e7408]
movzx eax, word [eax]
push eax
push ecx
mov ecx, edx
call fcn.0045be30
mov ecx, eax
jmp 0x4430af
mov esi, dword [0x4e7404]
cmp word [esi], 0
jne 0x441f3e
mov eax, dword [edi + 0x10]
lea esi, [eax + 0x2c]
test eax, eax
jne 0x441f3e
mov esi, 0x4b9c10
push 0
push 4
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [0x4e740c]
cmp eax, 1
sete al
movzx eax, al
push eax
call fcn.00428ff0
mov ecx, dword [ebp + 0x64]
push eax
mov eax, dword [0x4e7408]
movzx eax, word [eax]
push eax
push esi
push dword [0x4e7400]
call fcn.0045bf40
xor ecx, ecx
cmp dword [edi + 0x104], ecx
sete cl
jmp 0x4430af
mov eax, dword [0x4e7404]
cmp word [eax], 0
jne 0x441fb6
mov eax, dword [edi + 0x10]
test eax, eax
je 0x441fb1
push dword [0x4e7408]
add eax, 0x2c
mov ecx, edx
push eax
call fcn.0045c0c0
mov ecx, eax
jmp 0x4430af
mov eax, 0x4b9c10
push dword [0x4e7408]
mov ecx, edx
push eax
call fcn.0045c0c0
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7404]
cmp word [eax], 0
jne 0x441ff4
mov eax, dword [edi + 0x10]
test eax, eax
je 0x441fef
add eax, 0x2c
mov ecx, edx
push eax
call fcn.00471510
mov ecx, eax
jmp 0x4430af
mov eax, 0x4b9c10
push eax
mov ecx, edx
call fcn.00471510
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e7400]
call fcn.00459f10
xor ecx, ecx
cmp dword [edi + 0x104], ecx
sete cl
jmp 0x4430af
push dword [0x4e7410]
mov ecx, edx
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.0045a040
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, edx
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.00470b00
mov ecx, eax
jmp 0x4430af
push dword [0x4e7400]
mov ecx, edx
call fcn.00470e40
mov ecx, eax
jmp 0x4430af
push dword [0x4e7420]
mov ecx, edx
push dword [0x4e741c]
push dword [0x4e7418]
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.004711a0
mov ecx, eax
jmp 0x4430af
xor dl, dl
mov ecx, 4
call fcn.00454780
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e7400]
mov edx, 7
call fcn.00413160
mov ecx, eax
cmp ecx, 7
jne 0x4420f7
xor dl, dl
lea ecx, [eax - 6]
call fcn.00454780
mov ecx, eax
jmp 0x4430af
cmp byte [edi + 0xf9], 0
je 0x442121
mov eax, dword [0x4e6728]
test eax, eax
jle 0x44210c
dec eax
jmp 0x442111
mov eax, 0x18f
mov dword [0x4e6728], eax
mov dword [eax*4 + 0x4e6d70], 0
cmp ecx, 1
mov dword [ebp + 0x68], 1
sete al
mov byte [edi + 0xf9], al
mov dword [ebp + 0x60], 1
jmp 0x4430bd
xor dl, dl
mov ecx, 2
call fcn.00454780
mov ecx, eax
jmp 0x4430af
xor dl, dl
mov ecx, 3
call fcn.00454780
mov ecx, eax
jmp 0x4430af
lea ecx, [edi + 0x4c]
call fcn.00479450
test eax, eax
je 0x44217f
mov eax, dword [0x4e30fc]
mov eax, dword [eax + 0x4c]
mov eax, dword [eax + 4]
jmp 0x442181
xor eax, eax
mov ebx, dword [ebp + 0x64]
push eax
mov cl, byte [ebx + 1]
test cl, cl
jne 0x44219d
push 0
xorps xmm3, xmm3
mov edx, 0x10000
mov ecx, str.Press_OK_to_continue.
jmp 0x4421de
cmp cl, 1
jne 0x4421b4
mov ecx, dword [0x4e7400]
xorps xmm3, xmm3
push 0
mov edx, 0x10000
jmp 0x4421de
push 3
mov ecx, ebx
call fcn.0043aee0
push dword [0x4e7404]
mov ecx, ebx
movsd qword [ebp + 0x4c], xmm0
push 0
call fcn.0043ae30
movsd xmm3, qword [ebp + 0x4c]
mov edx, eax
mov ecx, dword [0x4e7408]
call fcn.004a2130
mov esi, eax
add esp, 8
test esi, esi
jne 0x442213
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x59e
jne 0x442213
push dword [0x4e7400]
mov ecx, ebx
push esi
push str.Parameter_1_invalid.
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
xor ecx, ecx
test esi, esi
setne cl
jmp 0x4430af
mov eax, dword [0x4e741c]
cmp word [eax], 0
je 0x44223b
push 7
mov ecx, edx
call fcn.0043ae30
mov edx, dword [ebp + 0x64]
mov dword [ebp + 0x34], eax
jmp 0x442242
mov dword [ebp + 0x34], connect
mov eax, dword [0x4e7418]
cmp word [eax], 0
je 0x44225a
push 6
mov ecx, edx
call fcn.0043ae30
mov ebx, eax
jmp 0x44225f
mov ebx, connect
mov eax, dword [0x4e7414]
mov esi, dword [ebp + 0x64]
cmp word [eax], 0
je 0x44227a
push 5
mov ecx, esi
call fcn.0043ae30
mov edi, eax
jmp 0x44227f
mov edi, connect
mov eax, dword [0x4e7410]
cmp word [eax], 0
je 0x442297
push 4
mov ecx, esi
call fcn.0043ae30
mov esi, eax
jmp 0x44229c
mov esi, connect
push dword [0x4e7428]
mov ecx, dword [ebp + 0x64]
push 9
call fcn.0043aee0
mov eax, dword [0x4e740c]
sub esp, 8
mov cx, word [eax]
movsd qword [esp], xmm0
push dword [ebp + 0x34]
push ebx
push edi
push esi
call fcn.00413080
mov edx, dword [0x4e7404]
cmp ax, 0x48
mov ecx, dword [ebp + 0x68]
sete al
movzx eax, al
push eax
push dword [0x4e7408]
call fcn.004548e0
add esp, 0x24
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7404]
cmp word [eax], 0
je 0x44230b
push 1
mov ecx, edx
call fcn.0043ae30
mov edx, dword [ebp + 0x64]
mov esi, eax
jmp 0x44230d
xor esi, esi
mov eax, dword [0x4e7400]
cmp word [eax], 0
je 0x442323
push 0
mov ecx, edx
call fcn.0043ae30
jmp 0x442328
mov eax, 0xc8
push dword [0x4e740c]
mov ecx, dword [ebp + 0x64]
push dword [0x4e7408]
push esi
push eax
call fcn.0046f100
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e668c]
test eax, eax
je 0x442365
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x442365
push dword [0x4e668c]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [0x4e668c], 0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push 0
push 0x4b9c10
push dword [0x4e7410]
mov ecx, edx
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.00449840
mov ecx, eax
jmp 0x4430af
push 1
push dword [0x4e7400]
mov ecx, edx
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.00449840
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, edx
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044abf0
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, edx
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.0044af50
mov ecx, eax
jmp 0x4430af
mov ecx, edx
call fcn.0044c210
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e7404]
call fcn.004291b0
mov ecx, dword [0x4e7400]
movzx esi, ax
call fcn.00429220
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 0x4430bd
mov esi, dword [ebp + 0x64]
mov ecx, esi
push 0
call fcn.0043ae30
mov byte [edi + 0xef], al
cmp al, 0x64
jbe 0x4424ae
mov byte [edi + 0xef], 2
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
mov edx, dword [edi + 0xd4]
mov ecx, dword [0x4e7400]
call fcn.00428f60
mov dword [edi + 0xd4], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov esi, dword [ebp + 0x64]
mov ecx, esi
push 0
call fcn.0043ae30
test eax, eax
js 0x442504
cmp eax, 0x64
jg 0x442504
mov cl, 1
jmp 0x442506
xor cl, cl
test cl, cl
je 0x442510
mov byte [edi + 0xf6], al
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
push str.Play
push dword [0x4e7408]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
mov ebx, dword [ebp + 0x64]
add esp, 8
test eax, eax
mov eax, dword [0x4e7400]
jne 0x442583
cmp word [eax], 0
je 0x442555
push 0
mov ecx, ebx
call fcn.0043ae30
mov dword [edi + 0x60], eax
mov eax, dword [0x4e7404]
cmp word [eax], 0
je case.0x4428f4.69
push 1
mov ecx, ebx
call fcn.0043ae30
ret
mov bh, bh
dec dword [ecx + 0x45c76847]
push 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
cmp word [eax], 0
je 0x442595
push 0
mov ecx, ebx
call fcn.0043ae30
mov dword [edi + 0x5c], eax
mov eax, dword [0x4e7404]
cmp word [eax], 0
je case.0x4428f4.69
push 1
mov ecx, ebx
call fcn.0043ae30
mov dword [edi + 0x64], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push str.Play
push dword [0x4e7404]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
mov esi, dword [ebp + 0x64]
add esp, 8
mov ecx, esi
push 0
test eax, eax
jne 0x4425fd
call fcn.0043ae30
mov dword [edi + 0x70], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
call fcn.0043ae30
mov dword [edi + 0x6c], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
mov esi, dword [ebp + 0x64]
mov ecx, esi
push 0
call fcn.0043ae30
mov dword [edi + 0x54], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
mov esi, dword [ebp + 0x64]
mov ecx, esi
push 0
call fcn.0043ae30
mov dword [edi + 0x58], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
mov ecx, dword [0x4e7400]
mov edx, 0x4d0c34
call fcn.0049ca30
mov esi, dword [ebp + 0x64]
mov ecx, esi
push 0
test eax, eax
je 0x44269f
mov dword [edi], 0xffffffff
mov dword [edi + 4], 0xffffffff
call fcn.0043ae30
mov dword [edi + 0x24], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
mov dword [edi + 0x24], 0xffffffff
call fcn.0043ae30
mov dword [edi], eax
or eax, edx
mov dword [edi + 4], edx
jne 0x4426bd
mov dword [edi], 0xa
mov dword [edi + 4], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
mov ecx, dword [0x4e7400]
mov edx, 7
call fcn.00413160
cmp eax, 7
je case.0x4428f4.69
cmp eax, 1
mov dword [ebp + 0x68], 1
sete al
mov byte [edi + 0xf3], al
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [0x4e7400]
call fcn.004277c0
dec eax
cmp eax, 5
ja case.default.0x44271d
jmp dword [eax*4 + 0x443b08]
mov dword [edi + 0x20], 1
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov dword [edi + 0x20], 2
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov dword [edi + 0x20], 4
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov dword [edi + 0x20], 3
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov byte [edi + 0xe9], 1
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov byte [edi + 0xe9], 0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ebx, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
push 5
push str.Float
push dword [0x4e7400]
call ebx
add esp, 0xc
test eax, eax
jne 0x4428be
mov esi, dword [ebp + 0x64]
mov ecx, esi
push 1
call fcn.0043adb0
cmp eax, 0x1e
jb 0x442804
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430c0
push 1
mov ecx, esi
call fcn.0043ae30
push 0x2e
push dword [0x4e7404]
mov edi, eax
mov ebx, edx
call dword [sym.imp.VCRUNTIME140.dll_wcschr]
mov esi, eax
add esp, 8
test esi, esi
je 0x442832
lea ecx, [esi + 2]
call fcn.00404b50
jmp 0x442840
xorps xmm0, xmm0
movlpd qword [ebp + 0x4c], xmm0
mov edx, dword [ebp + 0x50]
mov eax, dword [ebp + 0x4c]
add eax, edi
adc edx, ebx
add eax, 2
adc edx, 0
mov dword [ebp + 0x50], edx
js 0x442860
jg case.0x43fb11.3
cmp eax, 0xff
ja case.0x4428f4.69
mov ecx, dword [0x4e7404]
mov edx, 1
push 0
push 1
push 1
call fcn.0049c490
test eax, eax
mov ecx, 0x4d64bc
mov eax, 0x4b9c10
cmove ecx, eax
test esi, esi
push ecx
mov ecx, 0x4d4f20
cmove eax, ecx
push eax
push dword [0x4e7404]
mov eax, dword [ebp + 0x44]
add eax, 0x74
push 0x4d64c0
push eax
call fcn.00405be0
add esp, 0x20
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push 7
push str.Integer
push dword [0x4e7400]
call ebx
add esp, 0xc
test eax, eax
jne case.0x4428f4.69
mov ecx, dword [0x4e7404]
movzx eax, word [ecx]
add eax, 0xffffffbc
cmp eax, 0x24
ja case.0x4428f4.69
movzx eax, byte [eax + 0x443b2c]
jmp dword [eax*4 + 0x443b20]
mov byte [edi + 0xf5], 0x44
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov al, byte [ecx]
mov byte [edi + 0xf5], al
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push dword [0x4e7408]
mov ecx, edx
push dword [0x4e7404]
call fcn.00455810
mov ecx, eax
jmp 0x4430af
mov al, byte [edx + 1]
mov cl, 4
cmp cl, al
mov dl, 3
sbb ecx, ecx
and ecx, dword [0x4e73c0]
cmp dl, al
push ecx
sbb eax, eax
mov ecx, 0x4e7d50
and eax, dword [0x4e73bc]
push eax
push dword [0x4e7414]
push dword [0x4e7410]
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.00489d40
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, 0x4e7d50
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.004794d0
mov ecx, eax
jmp 0x4430af
mov al, 2
mov ecx, edx
cmp al, byte [edx + 1]
sbb eax, eax
and eax, dword [0x4e73b8]
push eax
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.00479dc0
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, edx
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.0047aec0
mov ecx, eax
jmp 0x4430af
mov esi, dword [0x4e7400]
xor edx, edx
mov ecx, esi
call fcn.00413230
test eax, eax
je 0x442a31
cmp eax, 7
ja case.0x43fb11.3
jmp 0x442a4a
push str.Permit
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffa
add eax, 6
jmp dword [eax*4 + 0x443b54]
push 1
mov ecx, edx
call fcn.0043ae30
mov ecx, dword [0x4e7400]
test eax, eax
setne al
xor edx, edx
movzx eax, al
push eax
call fcn.00413230
mov ecx, dword [ebp + 0x64]
push eax
call fcn.00447370
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e7400]
mov edx, 7
call fcn.00413160
cmp eax, 7
je case.0x4428f4.69
cmp eax, 1
mov dword [ebp + 0x68], 1
sete al
mov byte [edi + 0xf4], al
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [0x4e7400]
call fcn.00428de0
mov byte [edi + 0xf2], al
cmp al, 4
jne case.0x4428f4.69
mov byte [edi + 0xf2], 0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [0x4e7400]
mov edx, 7
call fcn.00413160
cmp eax, 7
je case.0x4428f4.69
cmp eax, 1
mov dword [ebp + 0x68], 1
sete al
mov byte [edi + 0xea], al
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [0x4e7400]
mov edx, 7
call fcn.00413160
cmp eax, 7
je case.0x4428f4.69
cmp eax, 1
mov dword [ebp + 0x68], 1
sete al
mov byte [edi + 0xeb], al
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov ecx, dword [0x4e7400]
call fcn.00428eb0
lea ecx, [eax - 1]
cmp ecx, 0xc
ja case.0x4428f4.69
movzx ecx, byte [ecx + 0x443b8c]
jmp dword [ecx*4 + 0x443b74]
mov cl, 1
call fcn.00447460
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
xor cl, cl
call fcn.00447460
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov dword [0x4e359c], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov byte [0x4e5c21], 1
call fcn.00415920
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov byte [0x4e5c21], 0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push dword [0x4e7400]
mov edx, 0x4e4250
mov cl, 0x90
call fcn.0045c220
add esp, 4
mov ecx, eax
jmp 0x4430af
push dword [0x4e7400]
mov edx, 0x4e424c
mov cl, 0x14
call fcn.0045c220
add esp, 4
mov ecx, eax
jmp 0x4430af
push dword [0x4e7400]
mov edx, 0x4e4248
mov cl, 0x91
call fcn.0045c220
add esp, 4
mov ecx, eax
jmp 0x4430af
mov ecx, 0x4e7d50
call fcn.0042ad70
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push 1
mov ecx, 0x4e7d50
call fcn.0042af20
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push 0
mov ecx, edx
call fcn.0043ae30
cmp dword [0x4e7484], esi
je 0x442d0f
cmp eax, 0xffffffff
jle 0x442d0f
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
mov edx, 1
mov ecx, eax
call fcn.00401a20
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push dword [0x4e7410]
mov ecx, edx
push dword [0x4e740c]
push dword [0x4e7408]
push dword [0x4e7404]
call fcn.004945d0
mov ecx, eax
jmp 0x4430af
push dword [0x4e740c]
mov ecx, edx
push dword [0x4e7408]
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.004946d0
mov ecx, eax
jmp 0x4430af
mov eax, dword [0x4e7408]
xor ecx, ecx
cmp byte [edx + 1], 3
cmovb eax, ecx
mov ecx, edx
push eax
push dword [0x4e7404]
push dword [0x4e7400]
call fcn.004948e0
mov ecx, eax
jmp 0x4430af
cmp byte [edx + 1], 2
jae 0x442dcc
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x442dcc
lea eax, [ecx + 0x808]
push eax
lea eax, [ecx + 8]
push eax
push dword [ecx + 4]
mov ecx, edx
call fcn.00494950
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e7404]
lea eax, [ebp + 0x57]
push eax
lea eax, [ebp + 0x3c]
mov edx, 2
push eax
call fcn.004270d0
mov ecx, dword [ebp + 0x3c]
add esp, 8
mov esi, eax
test ecx, ecx
jne 0x442e00
mov ecx, dword [0x4e7408]
mov eax, dword [0x4e740c]
mov dword [ebp + 0x3c], ecx
jmp 0x442e05
mov eax, dword [0x4e7408]
push eax
push ecx
mov ecx, dword [ebp + 0x64]
push esi
call fcn.00494950
cmp byte [ebp + 0x57], 0
mov ecx, eax
mov dword [ebp + 0x68], ecx
je 0x4430b2
test esi, esi
je 0x4430b2
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp + 0x68]
jmp 0x4430b2
cmp byte [edx + 1], 2
jae 0x442e6b
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x442e6b
push dword [0x4e7400]
lea eax, [ecx + 0x808]
push eax
lea eax, [ecx + 8]
push eax
push dword [ecx + 4]
push dword [ecx + 0x1008]
mov ecx, edx
call fcn.00494d00
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e7404]
lea eax, [ebp + 0x57]
push eax
lea eax, [ebp + 0x3c]
mov edx, 2
push eax
call fcn.004270d0
mov ecx, dword [ebp + 0x3c]
add esp, 8
mov esi, eax
test ecx, ecx
jne 0x442ea5
mov ecx, dword [0x4e7408]
mov eax, dword [0x4e740c]
mov edx, dword [0x4e7410]
mov dword [ebp + 0x3c], ecx
jmp 0x442eb0
mov eax, dword [0x4e7408]
mov edx, dword [0x4e740c]
push edx
push eax
push ecx
mov ecx, dword [0x4e7400]
push esi
call fcn.004272b0
mov ecx, dword [ebp + 0x64]
push eax
call fcn.00494d00
jmp 0x442e10
cmp byte [edx + 1], 1
jae 0x442f44
mov eax, dword [edi + 0x14]
test eax, eax
je 0x442f44
cmp dword [eax + 0x1008], 0xfffffffe
lea ecx, [eax + 8]
jne 0x442f27
cmp word [ecx], 0
je 0x442f1d
add eax, 0x808
push eax
push ecx
push 0x4d641c
lea eax, [ebp - 0x8c4]
push 0x400
push eax
call fcn.0049c640
mov eax, dword [edi + 0x14]
lea ecx, [ebp - 0x8c4]
add esp, 0x14
xor edx, edx
jmp 0x442f2d
lea ecx, [eax + 0x808]
xor edx, edx
jmp 0x442f2d
lea edx, [eax + 0x808]
push edx
push ecx
push dword [eax + 4]
mov dword [ebp + 0x3c], ecx
mov ecx, dword [ebp + 0x64]
call fcn.004950f0
mov ecx, eax
jmp 0x4430af
mov ecx, dword [0x4e7400]
lea eax, [ebp + 0x57]
push eax
lea eax, [ebp + 0x3c]
mov edx, 2
push eax
call fcn.004270d0
mov edi, dword [ebp + 0x3c]
add esp, 8
mov ebx, eax
test edi, edi
jne 0x442f79
mov edi, dword [0x4e7404]
mov esi, dword [0x4e7408]
mov dword [ebp + 0x3c], edi
jmp 0x442f7f
mov esi, dword [0x4e7404]
cmp word [esi], 0
jne 0x442f89
xor ecx, ecx
jmp 0x442fa2
push str.ahk_default
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
add esp, 8
mov ecx, 0x4b9c10
test eax, eax
cmovne ecx, esi
push ecx
mov ecx, dword [ebp + 0x64]
push edi
push ebx
call fcn.004950f0
cmp byte [ebp + 0x57], 0
mov ecx, eax
mov dword [ebp + 0x68], ecx
je 0x4430b2
test ebx, ebx
je 0x4430b2
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp + 0x68]
jmp 0x4430b2
mov ecx, dword [0x4e7400]
call fcn.00427330
mov esi, eax
cmp esi, 0xffffffff
jne 0x443001
push dword [0x4e7400]
mov ecx, dword [ebp + 0x64]
push 0
push str.Parameter_1_invalid.
call fcn.004478f0
mov ecx, eax
jmp 0x4430af
cmp dword [0x4e8a60], 0
je case.0x4428f4.69
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [0x4e8a60]
test eax, eax
je case.0x4428f4.69
cmp dword [ebp - 0x44], 0
je case.0x4428f4.69
mov dword [edi + 0xd0], esi
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push dword [0x4e7400]
mov ecx, 0x4e4ac8
call fcn.0040aee0
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
push 0
mov ecx, edx
call fcn.0043ae30
mov ecx, eax
call fcn.00472430
xor ecx, ecx
test al, al
setne cl
jmp 0x4430af
mov ecx, dword [0x4e7400]
call fcn.004293f0
cmp eax, 0xffffffff
je case.default.0x44271d
mov dword [edi + 0xfc], eax
mov dword [ebp + 0x68], 1
mov dword [ebp + 0x60], 1
jmp 0x4430bd
xor ecx, ecx
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x60], ecx
test ecx, ecx
je 0x4435d8
mov esi, dword [ebp + 0x64]
cmp dword [ebp + 0x74], 3
je 0x4435d8
mov esi, dword [esi + 0x14]
test esi, esi
mov edi, dword [ebp + 0x5c]
mov dword [ebp + 0x64], esi
jmp 0x43ea46
mov esi, dword [ebp + 0x64]
test esi, esi
mov edi, dword [ebp + 0x5c]
jmp 0x43ea46
mov esi, dword [ebp + 0x64]
test esi, esi
jmp 0x43ea46
mov esi, dword [ebp + 0x48]
mov dword [esi], ecx
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 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
mov eax, dword [esi + 0x18]
test eax, eax
je 0x443139
mov esi, dword [ebp + 0x48]
mov eax, dword [eax + 0x18]
mov dword [esi], eax
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 0x44315e
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 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 ecx, dword [ebp + 0x64]
push esi
push 0
push str.Target_label_does_not_exist.
call fcn.004478f0
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 esi, dword [ebp + 0x48]
mov eax, dword [edx + 8]
pop edi
mov dword [esi], eax
mov eax, 1
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 [ebp + 0x60]
mov ecx, 1
pop edi
cmp eax, 7
pop esi
cmove eax, ecx
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
push dword [0x4e7404]
mov ecx, esi
push 0
push str.Parameter_2_invalid.
call fcn.004478f0
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 [0x4e7408]
mov ecx, esi
push 0
push str.Parameter_3_invalid.
call fcn.004478f0
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 + 0x58]
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
test edi, edi
je 0x44327c
lea ecx, [ebp + 8]
call fcn.00448310
test esi, esi
je 0x4432b0
cmp esi, 8
je 0x4432b0
mov ecx, dword [0x4e8398]
push 0x4b9c10
push 0
push str.Jumps_cannot_exit_a_FINALLY_block.
call fcn.004478f0
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]
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
test edi, edi
je 0x44331d
cmp dword [edi + 8], 0
jne 0x44331d
mov ecx, dword [0x4e73b0]
test ecx, ecx
je 0x44330e
cmp byte [ecx + 0x17], 0
jne 0x4432fe
mov eax, dword [ecx + 0xc]
jmp 0x443300
mov eax, ecx
test byte [eax + 0x15], 2
je 0x44330e
push edi
call fcn.004267b0
jmp 0x44331d
mov ecx, dword [0x4e7400]
mov dword [edi + 8], 0
mov dword [edi], ecx
cmp dword [ebp + 0x74], 1
mov eax, 1
pop edi
mov ecx, 7
pop esi
cmovne 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 + 0x18]
test eax, eax
je 0x443139
mov esi, dword [ebp + 0x48]
pop edi
mov dword [esi], eax
mov eax, 1
pop esi
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 0x443398
push 0x4b9c10
push 0
push str.An_exception_was_thrown.
mov ecx, esi
call fcn.00447640
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 0x10
call fcn.004b64c6
mov ecx, dword [0x4e6724]
add esp, 4
mov ebx, dword [ebp + 0x64]
mov esi, eax
mov dword [ebp + 0x78], esi
test ecx, ecx
jne 0x443420
mov ecx, dword [ebx + 8]
movzx eax, word [ecx + 2]
mov ecx, 0xff
cmp ax, cx
jae 0x4433cb
mov eax, ecx
inc eax
mov dword [0x4e6720], eax
add eax, eax
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov ecx, eax
add esp, 4
mov dword [0x4e6724], ecx
test ecx, ecx
jne 0x443420
push 0x10
push esi
mov dword [0x4e6720], eax
call fcn.004b6495
add esp, 8
mov ecx, ebx
push 0x4b9c10
push 0
push 0x4cdaa4
call fcn.004478f0
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 [0x4e6720]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x54]
push 0
push eax
lea eax, [ebp - 0x1c]
mov dword [ebp + 0xc], ecx
push eax
lea eax, [ebp + 0xc]
mov dword [ebp - 0x48], ecx
push eax
lea eax, [ebp - 0x48]
mov dword [ebp - 0x54], 0
push eax
push esi
lea eax, [ebp + 0x60]
mov dword [ebp - 0x50], 0
push eax
push 0
mov ecx, ebx
mov dword [0x4e6724], 0
mov dword [0x4e6720], 0
mov dword [esi + 8], 0x41
call fcn.00475c00
mov edi, eax
cmp edi, dword [ebp + 0xc]
jne 0x443483
mov dword [esi + 0xc], edi
jmp 0x4434c5
mov dword [esi + 0xc], 0
cmp dword [ebp + 0xc], 0
je 0x4434c5
mov eax, dword [0x4e6724]
test eax, eax
je 0x4434b5
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
cmp dword [0x4e6720], 0x400000
jbe 0x4434b5
dec dword [0x4e671c]
mov eax, dword [ebp + 0xc]
mov dword [0x4e6724], eax
mov eax, dword [ebp - 0x1c]
mov dword [0x4e6720], eax
test edi, edi
jne 0x4434eb
push 0x10
push esi
call fcn.004b6495
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 0x4434fa
mov dword [esi + 8], 0
mov dword [esi], edi
mov eax, dword [ebp + 0x5c]
test byte [eax + 0x100], 2
mov dword [eax + 0x104], esi
jne 0x4431a8
mov ecx, ebx
call fcn.00447f10
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
cmp byte [0x4e5bbb], 1
je 0x443564
cmp word [0x4e66f8], 0
jne 0x443564
cmp dword [0x4e66e0], 0
jne 0x443564
cmp dword [0x4e5bc8], 0
jne 0x443564
cmp dword [0x4e5bc4], 0
jne 0x443564
cmp byte [0x4e5bb9], 0
je case.0x43edc8.224
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.0043ae30
push eax
push 9
mov ecx, 0x4e7d50
call fcn.0042b020
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 0x4430f6
push 0x4b9c10
push 0
push str.A__return__must_be_encountered_prior_to_this___.
mov ecx, esi
call fcn.004478f0
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 [ebp + 0x68]
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, ebx
ret
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc