Function at 0x42c440
Capabilities:
Check for time delay via gettickcount
Find taskbar
Move file
Set environment variable

Disassembly:
push ebp
lea ebp, [esp - 0x6c]
sub esp, 0x6c
push 0xffffffffffffffff
push 0x4ace58
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x874
mov eax, dword [ebp + 0x7c]
mov edx, ecx
test eax, eax
mov dword [ebp - 0x10], edx
lea ecx, [ebp + 0xc]
mov dword [ebp + 0x64], edx
cmovne ecx, eax
test edx, edx
push ebx
mov ebx, dword [0x4d89c0]
push esi
push edi
mov dword [ebp + 0x48], ecx
mov dword [ecx], 0
mov dword [ebp + 0x5c], ebx
mov edi, 1
je 0x42c7e4
cmp dword [0x4dec28], 0
je 0x42c4da
cmp dword [0x4dec18], 0
je 0x42c4c0
push dword [0x4dec10]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [0x4dec18], 0
call dword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x4dec28], 0
mov dword [0x4dec10], 0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov eax, dword [0x4d89c0]
mov ecx, esi
sub ecx, dword [0x4debcc]
cmp ecx, dword [eax + 0xd8]
jbe 0x42c525
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x80]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x42c517
mov edx, edi
or ecx, 0xffffffff
call fcn.004016e0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov dword [0x4debcc], esi
cmp byte [ebx + 0xec], 0
jne 0x42c557
cmp byte [ebx + 0xee], 0
jne 0x42c557
mov eax, dword [0x4debc0]
cmp eax, 0xffffffff
jle 0x42c557
mov ecx, dword [ebx + 0x28]
cmp ecx, eax
jle 0x42c551
mov byte [ebx + 0xec], 1
jmp 0x42c557
lea eax, [ecx + 1]
mov dword [ebx + 0x28], eax
mov eax, dword [ebx + 4]
mov edi, dword [ebx]
mov ecx, dword [0x4debb8]
mov edx, dword [0x4debbc]
cmp eax, 0xffffffff
jl 0x42c57e
jg 0x42c574
cmp edi, 0xffffffff
jbe 0x42c57e
cmp edx, eax
jg 0x42c590
jl 0x42c57e
cmp ecx, edi
jae 0x42c590
mov eax, dword [ebx + 0x24]
cmp eax, 0xffffffff
jle 0x42c5ad
sub esi, dword [0x4debc8]
cmp esi, eax
jb 0x42c5ad
mov edi, 1
mov edx, edi
lea ecx, [edi + 9]
call fcn.004016e0
mov edx, dword [0x4debbc]
mov ecx, dword [0x4debb8]
jmp 0x42c5b2
mov edi, 1
cmp byte [ebx + 0xf8], 0
je 0x42c5e1
nop dword [eax + eax]
mov edx, edi
mov ecx, 0x8000012f
call fcn.004016e0
cmp byte [ebx + 0xf8], 0
jne 0x42c5c0
mov edx, dword [0x4debbc]
mov ecx, dword [0x4debb8]
mov esi, dword [ebp + 0x64]
mov dword [0x4de700], esi
cmp byte [ebx + 0xf9], 0
je 0x42c630
mov eax, dword [0x4dd290]
mov dword [eax*4 + 0x4dd8d8], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x4dd290]
mov edx, dword [0x4debbc]
mov dword [ecx*4 + 0x4dd298], eax
inc ecx
xor eax, eax
cmp ecx, 0x190
cmovge ecx, eax
mov dword [0x4dd290], ecx
mov ecx, dword [0x4debb8]
cmp dword [0x4de028], 0xffffffff
je 0x42c650
cmp byte [esi], 0x6b
je 0x42c650
push esi
call fcn.00405f42
mov edx, dword [0x4debbc]
mov ecx, dword [0x4debb8]
mov al, byte [esi]
cmp al, 1
je 0x42c684
cmp al, 0x6b
je 0x42c684
cmp al, 0x72
je 0x42c684
push 0
push 0xffffffffffffffff
push dword [ebp + 0x78]
mov ecx, esi
call fcn.0045ec60
mov dword [ebp + 0x60], eax
cmp eax, 1
jne 0x4306f2
mov edx, dword [0x4debbc]
mov ecx, dword [0x4debb8]
mov bl, byte [esi]
mov dword [ebp + 0x14], ebx
cmp bl, 9
jb 0x42c7fa
cmp bl, 0x20
ja 0x42c7fa
add ecx, 1
mov dword [0x4debb8], ecx
mov ecx, esi
adc edx, 0
mov dword [0x4debbc], edx
call fcn.00431000
cmp eax, 3
jne 0x42c757
mov eax, dword [esi + 0x14]
cmp byte [eax], 0x73
jne 0x42c6e7
lea ecx, [ebp + 0x58]
push ecx
push dword [ebp + 0x78]
mov ecx, dword [eax + 0x14]
push 2
call fcn.0042c440
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x42c6c5
jmp 0x42c6ff
lea ecx, [ebp + 0x58]
push ecx
push dword [ebp + 0x78]
mov ecx, eax
push 3
call fcn.0042c440
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
cmp ecx, esi
je 0x42d1e0
cmp dword [ebp + 0x74], 3
je 0x4305f8
cmp edx, 1
jne 0x4305f8
test ecx, ecx
je 0x42c739
mov eax, dword [ecx + 0x1c]
cmp eax, dword [esi + 0x1c]
jne 0x4305ee
mov ebx, dword [ebp + 0x5c]
mov edi, ecx
mov dword [ebp + 0x64], edi
test edi, edi
jmp 0x42c48d
mov esi, dword [esi + 0x18]
mov ebx, dword [ebp + 0x5c]
mov dword [ebp + 0x64], esi
cmp byte [esi], 0x21
jne 0x42c74d
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x64], esi
mov edi, dword [ebp + 0x64]
test edi, edi
jmp 0x42c48d
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x64], esi
cmp byte [esi], 0x21
jne 0x42c7da
mov ecx, dword [esi + 0x14]
cmp byte [ecx], 0x73
jne 0x42c790
nop word [eax + eax]
mov ecx, dword [ecx + 0x14]
lea eax, [ebp + 0x58]
push eax
push dword [ebp + 0x78]
push 2
call fcn.0042c440
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x60], eax
mov ecx, dword [esi + 0x14]
cmp edx, ecx
je 0x42c770
jmp 0x42c7a4
lea eax, [ebp + 0x58]
push eax
push dword [ebp + 0x78]
push 3
call fcn.0042c440
mov edx, dword [ebp + 0x58]
mov dword [ebp + 0x60], eax
cmp dword [ebp + 0x74], 3
je 0x43061d
cmp eax, 1
jne 0x43061d
test edx, edx
je 0x42d1f3
mov eax, dword [edx + 0x1c]
cmp eax, dword [esi + 0x1c]
jne 0x430613
mov ebx, dword [ebp + 0x5c]
mov edi, edx
mov dword [ebp + 0x64], edi
test edi, edi
jmp 0x42c48d
cmp dword [ebp + 0x74], 3
jne 0x42d1e0
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
movzx eax, bl
add eax, 0xffffffa0
cmp eax, 0x7e
ja case.0x42c810.98
movzx eax, byte [eax + 0x430b28]
jmp dword [eax*4 + 0x430aec]
add ecx, 1
mov dword [0x4debb8], ecx
adc edx, 0
mov dword [0x4debbc], edx
mov esi, dword [esi + 0x18]
test esi, esi
je 0x42c84f
mov edx, dword [ebp + 0x64]
xor ebx, ebx
mov edi, dword [ebp + 0x5c]
mov dword [ebp + 0x20], esi
cmp dword [edx + 0xc], 1
sete bl
test ebx, ebx
je 0x42c931
jmp 0x42c917
mov edi, dword [0x4ddf68]
test edi, edi
je 0x42c887
cmp word [edi], 0
je 0x42c887
mov esi, dword [0x4de0e0]
test esi, esi
je 0x42c887
nop dword [eax]
push edi
push dword [esi + 4]
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42c8ad
mov esi, dword [esi + 0x10]
test esi, esi
jne 0x42c870
mov ecx, dword [ebp + 0x64]
push edi
push 0
push 0x4c8744
call fcn.004351a0
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov eax, dword [esi + 8]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x42c8e1
mov edx, dword [ebp + 0x64]
mov eax, dword [edx + 0x1c]
test eax, eax
je 0x42c8cc
cmp ecx, eax
je 0x42c8e1
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x42c8c1
push 0x4c602c
push 0
push str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
mov ecx, edx
call fcn.004351a0
xor esi, esi
mov dword [ebp + 0x20], esi
test esi, esi
je 0x42c897
mov edi, dword [ebp + 0x5c]
cmp dword [edi + 0xb4], 0
je 0x42c92f
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x42c912
nop
cmp dword [eax + 0xc], 1
jne 0x42c90b
cmp byte [eax], 0x73
je 0x42c92f
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x42c900
mov ebx, 1
mov eax, dword [edi + 0xb4]
mov dword [edi + 0xb8], eax
mov dword [edi + 0xb4], 0
jmp 0x42c931
xor ebx, ebx
mov ecx, esi
call fcn.00401500
mov ecx, eax
mov dword [ebp + 0x60], ecx
test ebx, ebx
je 0x42c957
mov eax, dword [edi + 0xb8]
mov dword [edi + 0xb4], eax
mov dword [edi + 0xb8], 0
test ecx, ecx
je 0x430641
cmp ecx, 8
je 0x430641
cmp dword [ebp + 0x74], 3
je 0x430636
mov edi, dword [ebp + 0x64]
mov ebx, dword [ebp + 0x5c]
mov edi, dword [edi + 0x14]
test edi, edi
mov dword [ebp + 0x64], edi
jmp 0x42c48d
add ecx, 1
mov dword [0x4debb8], ecx
adc edx, 0
mov dword [0x4debbc], edx
mov esi, dword [esi + 0x18]
mov dword [ebp + 0x20], esi
test esi, esi
jne 0x42ca2b
mov edi, dword [0x4ddf68]
test edi, edi
je 0x42c887
cmp word [edi], si
je 0x42c887
mov esi, dword [0x4de0e0]
test esi, esi
je 0x42c887
nop word [eax + eax]
push edi
push dword [esi + 4]
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42c9ec
mov esi, dword [esi + 0x10]
test esi, esi
jne 0x42c9d0
jmp 0x42c887
mov eax, dword [esi + 8]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
je 0x42ca20
mov edx, dword [ebp + 0x64]
mov eax, dword [edx + 0x1c]
test eax, eax
je 0x42ca0b
cmp ecx, eax
je 0x42ca20
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x42ca00
push 0x4c602c
push 0
push str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
mov ecx, edx
call fcn.004351a0
xor esi, esi
mov dword [ebp + 0x20], esi
test esi, esi
je 0x42c897
cmp dword [ebp + 0x74], 3
mov ebx, dword [ebp + 0x5c]
mov dword [ebx + 0xbc], esi
je 0x430657
mov eax, dword [ebp + 0x64]
mov ecx, dword [esi + 8]
mov eax, dword [eax + 0x1c]
cmp eax, dword [ecx + 0x1c]
jne 0x430657
mov edi, ecx
mov dword [ebp + 0x64], edi
test edi, edi
jmp 0x42c48d
mov esi, dword [ebp - 0x10]
add ecx, 1
mov dword [0x4debb8], ecx
adc edx, 0
mov dword [0x4debbc], edx
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x42cab9
mov edi, dword [0x4ddf68]
cmp word [edi], si
jne 0x42ca91
mov dword [ebp + 0x60], 1
xor ebx, ebx
jmp 0x42cb96
mov esi, dword [0x4de108]
test esi, esi
je 0x42cab7
nop dword [eax + eax]
push edi
push dword [esi + 4]
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42cab9
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x42caa0
xor esi, esi
xor ebx, ebx
mov dword [ebp + 0x60], 1
test esi, esi
je 0x42cb96
mov eax, dword [0x4ddf6c]
cmp word [eax], bx
je 0x42caea
push 0x4c8d98
push eax
call fcn.0049466a
add esp, 8
test eax, eax
jne 0x42caea
mov al, 1
jmp 0x42caec
xor al, al
lea ecx, [ebp + 0x20]
push ecx
push 0
push eax
mov ecx, esi
call fcn.0047e100
mov edi, dword [ebp + 0x20]
mov ebx, eax
test edi, edi
je 0x42cb96
mov ecx, dword [ebp + 0x64]
push 0
push edi
call fcn.00448830
test eax, eax
je 0x42c897
mov edx, dword [ebp + 0x5c]
mov ecx, dword [edx + 0xb4]
test ecx, ecx
je 0x42cb5a
mov eax, dword [edi + 8]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x42cb43
cmp dword [eax + 0xc], 1
jne 0x42cb3c
cmp byte [eax], 0x73
je 0x42cb5a
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x42cb31
mov esi, 1
mov dword [edx + 0xb8], ecx
mov dword [edx + 0xb4], 0
jmp 0x42cb5c
xor esi, esi
mov ecx, edi
call fcn.00401500
mov ecx, eax
mov dword [ebp + 0x60], ecx
test esi, esi
je 0x42cb85
mov edx, dword [ebp + 0x5c]
mov eax, dword [edx + 0xb8]
mov dword [edx + 0xb4], eax
mov dword [edx + 0xb8], 0
test ecx, ecx
je 0x430641
cmp ecx, 8
je 0x430641
mov ecx, dword [ebp - 0x10]
test ebx, ebx
sete al
movzx eax, al
push eax
call fcn.00434f60
cmp dword [ebp + 0x74], 3
je 0x430678
mov edi, dword [ebp + 0x64]
mov ebx, dword [ebp + 0x5c]
mov edi, dword [edi + 0x14]
test edi, edi
mov dword [ebp + 0x64], edi
jmp 0x42c48d
mov ebx, dword [esi + 0xc]
mov eax, ebx
sub eax, 1
je 0x42cc0f
sub eax, 3
je 0x42cbf6
sub eax, 5
jne 0x42cc7b
mov ecx, dword [0x4ddf6c]
mov edx, edi
push eax
push eax
call fcn.00418ab0
add esp, 8
mov dword [ebp + 0x30], eax
jmp 0x42cc7b
mov ecx, dword [0x4ddf68]
xor edx, edx
push 0
push 0
call fcn.00418ab0
add esp, 8
mov dword [ebp + 0x30], eax
jmp 0x42cc7b
movzx eax, byte [esi + 1]
sub eax, 0
je 0x42cc76
sub eax, 1
je 0x42cc39
push str.Read
push dword [0x4ddf68]
call fcn.0049466a
add esp, 8
test eax, eax
jne 0x42cc53
lea ebx, [eax + 5]
jmp 0x42cc7b
mov ecx, dword [0x4ddf68]
mov edx, edi
push 0
push 1
push 1
call fcn.00478130
add esp, 0xc
test eax, eax
jne 0x42cc76
mov ecx, dword [0x4ddf68]
xor edx, edx
push 0
push 0
call fcn.00418ab0
xor ebx, ebx
mov dword [ebp + 0x30], eax
add esp, 8
cmp eax, ebx
setne bl
add ebx, 3
jmp 0x42cc7b
mov ebx, 2
lea eax, [ebx - 3]
cmp eax, 7
ja case.0x42cc8e.5
movzx eax, byte [eax + 0x430bb4]
jmp dword [eax*4 + 0x430ba8]
mov ecx, dword [0x4ddf6c]
call fcn.0041ab60
mov edi, eax
mov dword [ebp + 0x1c], edi
test edi, edi
je 0x43069a
mov ecx, dword [0x4ddf70]
cmp word [ecx], 0x31
jne 0x42ccc6
cmp word [ecx + 2], 0
jne 0x42ccc6
mov byte [ebp + 0x2c], 1
jmp 0x42cd27
mov byte [ebp + 0x2c], 0
jmp 0x42cd27
mov ecx, dword [0x4ddf70]
cmp ebx, 4
jne 0x42ccff
call fcn.0041ab60
mov edi, eax
mov eax, dword [0x4ddf74]
mov dword [ebp + 0x1c], edi
cmp word [eax], 0x31
jne 0x42ccf9
cmp word [eax + 2], 0
jne 0x42ccf9
mov byte [ebp + 0x2c], 1
jmp 0x42cd19
mov byte [ebp + 0x2c], 0
jmp 0x42cd19
call fcn.0041abb0
mov edi, eax
mov dword [ebp + 0x1c], eax
shr eax, 2
and al, 1
mov byte [ebp + 0x2c], al
je 0x42cd19
and edi, 0xfffffffb
mov dword [ebp + 0x1c], edi
test edi, edi
je 0x4306c2
mov ecx, dword [0x4ddf70]
mov byte [ebp + 0x7f], 0
mov dword [ebp + 0x58], 0
mov edx, dword [esi + 0x18]
mov dword [ebp + 0x68], edx
cmp byte [edx], 0x6c
jne 0x42cd47
mov edi, edx
mov edx, dword [edx + 0x14]
mov dword [ebp + 0x68], edx
jmp 0x42cd49
xor edi, edi
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 8]
mov dword [ebp + 0x44], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0xc]
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0x10]
mov dword [ebp + 0x38], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0x14]
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0x18]
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0x1c]
mov dword [ebp + 0x50], eax
cmp ebx, 8
je 0x42cd95
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.0x42cda1
jmp dword [eax*4 + 0x430bbc]
cmp byte [esi + 1], 0
jbe 0x42cdbd
push 0
mov ecx, esi
call fcn.004289f0
mov byte [ebp - 0x14], 0
jmp 0x42cdcf
xorps xmm0, xmm0
mov byte [ebp - 0x14], 1
movlpd qword [ebp + 0x24], xmm0
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0x24]
push dword [ebp - 0x14]
mov ecx, esi
push edx
push eax
push edi
lea eax, [ebp + 0x58]
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.00432740
mov dword [ebp + 0x60], eax
jmp 0x42cfa1
lea eax, [ebp + 0x58]
mov ecx, esi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.00432830
mov dword [ebp + 0x60], eax
jmp 0x42cfa1
push edi
lea eax, [ebp + 0x58]
mov ecx, esi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.00432a50
mov dword [ebp + 0x60], eax
jmp 0x42cfa1
push 0x4ce23c
push ecx
call fcn.0049466a
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 0x42ce51
call fcn.00433870
mov dword [ebp + 0x60], eax
jmp 0x42cfa1
call fcn.00433b60
mov dword [ebp + 0x60], eax
jmp 0x42cfa1
lea ecx, [ebp - 0x64]
call fcn.00403f80
mov dword [ebp - 4], 0
mov ecx, dword [0x4ddf6c]
cmp word [ecx], 0
je 0x42ced6
mov eax, dword [ebp + 0x5c]
mov eax, dword [eax + 0xfc]
and eax, 0x7fffffff
push eax
push 0x30c
push ecx
lea ecx, [ebp - 0x64]
call fcn.00476110
test al, al
je 0x42ced6
push dword [0x4ddf70]
lea eax, [ebp - 0x64]
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.00433e70
lea ecx, [ebp - 0x64]
mov dword [ebp + 0x60], eax
call fcn.00403ee0
lea ecx, [ebp - 0x64]
mov dword [ebp - 4], 0xffffffff
call fcn.00403ff0
jmp 0x42cfa1
lea ecx, [ebp - 0x64]
mov dword [ebp + 0x60], 1
mov dword [ebp - 4], 0xffffffff
call fcn.00403ff0
jmp 0x42cfa1
mov eax, dword [0x4ddf6c]
cmp ebx, 3
mov ecx, esi
cmove eax, dword [0x4ddf68]
push eax
push dword [ebp + 0x2c]
lea eax, [ebp + 0x58]
push dword [ebp + 0x1c]
push edi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.00432fc0
mov dword [ebp + 0x60], eax
jmp 0x42cfa1
lea eax, [ebp + 0x43]
push eax
cmp ebx, 4
jne 0x42cf46
mov ecx, dword [0x4ddf68]
xor edx, edx
push 0
call fcn.00418ab0
mov esi, eax
mov eax, dword [0x4ddf6c]
mov dword [ebp - 0x18], eax
jmp 0x42cf5f
mov ecx, dword [0x4ddf6c]
lea eax, [ebp - 0x18]
push eax
mov edx, 1
call fcn.00418ab0
mov esi, eax
mov eax, dword [ebp - 0x18]
add esp, 8
test esi, esi
je 0x42cf97
mov ecx, dword [ebp + 0x64]
push eax
push esi
push dword [ebp + 0x30]
lea eax, [ebp + 0x58]
push dword [ebp + 0x2c]
push dword [ebp + 0x1c]
push edi
push eax
lea eax, [ebp + 0x7f]
push eax
push dword [ebp + 0x78]
call fcn.004333e0
cmp byte [ebp + 0x43], 0
mov dword [ebp + 0x60], eax
je 0x42cf9e
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x42cf9e
mov dword [ebp + 0x60], 1
mov esi, dword [ebp + 0x64]
mov edx, dword [ebp + 0x68]
mov ebx, dword [ebp + 0x5c]
mov eax, dword [ebp + 0x44]
mov dword [ebx + 8], eax
mov eax, dword [ebp + 0x18]
mov dword [ebx + 0xc], eax
mov eax, dword [ebp + 0x38]
mov dword [ebx + 0x10], eax
mov eax, dword [ebp + 8]
mov dword [ebx + 0x14], eax
mov eax, dword [ebp + 0x14]
mov dword [ebx + 0x18], eax
mov eax, dword [ebp + 0x50]
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp + 0x60]
test eax, eax
je 0x4306f2
cmp eax, 7
je 0x4306f2
cmp eax, 8
je 0x4306f2
cmp byte [ebp + 0x7f], 0
jne 0x42c74d
mov ecx, dword [ebp + 0x58]
test ecx, ecx
je 0x42d011
mov eax, dword [ecx + 0x1c]
cmp eax, dword [esi + 0x1c]
jne 0x4306ea
mov edi, ecx
mov dword [ebp + 0x64], edi
test edi, edi
jmp 0x42c48d
cmp dword [ebp + 0x74], 3
je 0x43065f
mov edi, edx
mov dword [ebp + 0x64], edi
test edi, edi
jmp 0x42c48d
mov edx, dword [ebp + 0x5c]
mov esi, dword [edx + 0x100]
mov dword [ebp + 8], esi
cmp bl, 0x70
jne 0x42d07b
mov ecx, dword [0x4ddf18]
mov eax, dword [edx + 0x104]
mov dword [ebp + 0x50], eax
mov dword [edx + 0x104], 0
test ecx, ecx
je 0x42d060
push eax
call fcn.0047abe0
mov dword [ebp + 0x60], eax
jmp 0x42d067
mov dword [ebp + 0x60], 1
lea ecx, [ebp + 0x50]
call fcn.00435970
cmp dword [ebp + 0x60], 0
je 0x42c897
jmp 0x42d09a
mov eax, dword [ebp + 0x64]
mov ecx, esi
or ecx, 1
mov dword [edx + 0x100], ecx
mov eax, dword [eax + 0x18]
cmp byte [eax], 0x71
je 0x42d09a
or ecx, 2
mov dword [edx + 0x100], ecx
mov eax, dword [ebp + 0x64]
mov dword [ebp + 0x58], 0
mov eax, dword [eax + 0x14]
cmp byte [eax], 0x73
jne 0x42d0d8
mov esi, dword [ebp + 0x64]
mov ebx, dword [ebp + 0x78]
lea ecx, [ebp + 0x58]
push ecx
mov ecx, dword [eax + 0x14]
push ebx
push 2
call fcn.0042c440
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
mov eax, dword [esi + 0x14]
cmp ecx, eax
je 0x42d0b2
mov ebx, dword [ebp + 0x14]
mov esi, dword [ebp + 8]
jmp 0x42d0f0
lea ecx, [ebp + 0x58]
push ecx
push dword [ebp + 0x78]
mov ecx, eax
push 3
call fcn.0042c440
mov ecx, dword [ebp + 0x58]
mov edx, eax
mov dword [ebp + 0x60], edx
mov edi, dword [ebp + 0x64]
mov edi, dword [edi + 0x18]
mov dword [ebp + 0x64], edi
cmp bl, 0x6f
jne 0x42d14a
mov ebx, dword [ebp + 0x5c]
xor al, al
mov dword [ebx + 0x100], esi
cmp byte [edi], 0x70
jne 0x42d123
cmp dword [ebx + 0x104], 0
mov al, 1
jne 0x42d1e6
mov edi, dword [edi + 0x18]
mov dword [ebp + 0x64], edi
cmp byte [edi], 0x71
je 0x42d157
test al, al
jne 0x42d1ab
cmp dword [ebx + 0x104], 0
je 0x42d1ab
lea ecx, [ebx + 0x104]
call fcn.00435970
mov edx, 1
mov dword [ebp + 0x60], edx
jmp 0x42d1a8
cmp bl, 0x70
mov ebx, dword [ebp + 0x5c]
jne 0x42d1ab
cmp byte [edi], 0x71
jne 0x42d1ab
cmp edx, 1
jne 0x42d164
test ecx, ecx
je 0x42d1e6
mov edi, dword [ebx + 0x104]
lea eax, [ebp - 0x20]
mov ecx, dword [ebp + 0x64]
push eax
push 0
push 3
mov dword [ebp + 0x50], edi
mov dword [ebx + 0x104], 0
call fcn.0042c440
mov esi, eax
cmp esi, 1
jne 0x430709
cmp dword [ebp - 0x20], 0
jne 0x430709
mov edx, dword [ebp + 0x60]
mov dword [ebx + 0x104], edi
mov edi, dword [ebp + 0x64]
mov ecx, dword [ebp + 0x58]
cmp dword [ebp + 0x74], 3
je 0x4305f8
cmp edx, 1
jne 0x4305f8
test ecx, ecx
je 0x42d1e6
mov eax, dword [ecx + 0x1c]
cmp eax, dword [edi + 0x1c]
jne 0x43075f
mov edi, ecx
mov dword [ebp + 0x64], edi
test edi, edi
jmp 0x42c48d
mov esi, dword [esi + 0x14]
mov dword [ebp + 0x64], esi
mov edi, dword [ebp + 0x64]
mov ebx, dword [ebp + 0x5c]
test edi, edi
jmp 0x42c48d
cmp dword [esi + 0xc], 1
jne 0x42d205
mov esi, dword [esi + 0x18]
mov edi, esi
mov ebx, dword [ebp + 0x5c]
test edi, edi
mov dword [ebp + 0x64], esi
jmp 0x42c48d
mov ecx, dword [esi + 0x14]
lea eax, [ebp + 0x58]
push eax
push dword [ebp + 0x78]
push 2
call fcn.0042c440
mov ecx, dword [ebp + 0x58]
mov dword [ebp + 0x60], eax
cmp ecx, esi
je 0x42d1e0
cmp dword [ebp + 0x74], 3
je 0x43077d
cmp eax, 1
jne 0x43077d
test ecx, ecx
je 0x42d1f3
mov eax, dword [esi + 0x1c]
cmp eax, dword [ecx + 0x1c]
jne 0x4305ee
mov ebx, dword [ebp + 0x5c]
mov edi, ecx
mov dword [ebp + 0x64], edi
test edi, edi
jmp 0x42c48d
mov ebx, dword [0x4ddf18]
add ecx, 1
mov edi, dword [0x4d89c0]
adc edx, 0
mov dword [0x4debb8], ecx
mov dword [0x4debbc], edx
mov cl, byte [esi]
movzx eax, cl
dec eax
mov dword [ebp + 0x68], ebx
cmp eax, 0xdf
ja case.0x42d28b.8
movzx eax, byte [eax + 0x430e68]
jmp dword [eax*4 + 0x430be0]
mov ecx, esi
call fcn.00442470
mov ecx, eax
jmp 0x4305c3
cmp byte [esi + 1], 1
mov edx, dword [0x4ddf6c]
jbe 0x42d326
mov eax, dword [esi + 8]
cmp byte [eax + 0x11], 0
je 0x42d2c5
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x42d2df
push dword [eax + 4]
mov ecx, ebx
push dword [eax]
call fcn.00417e70
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf1c]
test ecx, ecx
je 0x42d326
cmp word [edx], 0
jne 0x42d326
mov al, byte [ecx + 0x17]
test al, al
jne 0x42d2fc
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
movzx eax, al
sub eax, 1
je 0x42d317
sub eax, 2
jne 0x42d326
mov ecx, ebx
call fcn.0047acf0
mov ecx, eax
jmp 0x4305c3
push ecx
mov ecx, ebx
call fcn.0047aa90
mov ecx, eax
jmp 0x4305c3
push 1
push 0
push 0xffffffffffffffff
push edx
mov ecx, ebx
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x42d35a
cmp byte [eax + 0x11], 0
jne 0x42d35a
mov dword [ebp + 0x38], 1
mov edi, 1
xor esi, esi
jmp 0x42d3ae
mov esi, dword [0x4ddf1c]
mov ecx, dword [0x4ddf6c]
mov dword [ebp + 0x38], 0
test esi, esi
je 0x42d397
cmp word [ecx], 0
jne 0x42d397
mov al, byte [esi + 0x17]
test al, al
jne 0x42d384
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x42d397
test esi, esi
je 0x42d399
push 1
mov ecx, esi
call fcn.00417ec0
jmp 0x42d3ac
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.00478130
add esp, 0xc
mov edi, eax
push 1
mov ecx, ebx
call fcn.00417ec0
mov ecx, dword [0x4ddf70]
mov ebx, eax
movzx ecx, word [ecx]
test cx, cx
je 0x42d533
call fcn.0040e460
movzx ecx, ax
push ecx
push str.SMHD
call fcn.00492ca4
add esp, 8
test eax, eax
je 0x42d533
test edi, edi
jne 0x42d3fd
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
cmp dword [ebp + 0x38], 0
je 0x42d418
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.004ac090
jmp 0x42d432
test esi, esi
je 0x42d427
push 0
mov ecx, esi
call fcn.00417fd0
jmp 0x42d432
mov ecx, dword [0x4ddf6c]
call fcn.00417e30
mov ebx, dword [ebp + 0x68]
mov ecx, ebx
push 0
push 1
movsd qword [ebp + 0x4c], xmm0
call fcn.00401490
cmp word [eax], 0
je 0x42d47c
push 0
push 1
mov ecx, ebx
call fcn.00401490
lea edx, [ebp]
mov ecx, eax
call fcn.00477cd0
test eax, eax
jne 0x42d494
push 1
push eax
push 0xffffffffffffffff
push 0x4c602c
mov ecx, ebx
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea eax, [ebp]
push eax
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov eax, dword [0x4ddf70]
mov cx, word [eax]
call fcn.0040e460
movzx eax, ax
add eax, 0xffffffbc
cmp eax, 0xf
ja case.0x42d4b3.69
movzx eax, byte [eax + 0x430f5c]
jmp dword [eax*4 + 0x430f48]
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4d3130]
jmp 0x42d4fb
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4d3140]
jmp 0x42d4fb
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4d3150]
jmp 0x42d4fb
movsd xmm0, qword [ebp + 0x4c]
mulsd xmm0, qword [0x4d3158]
jmp 0x42d4fb
movsd xmm0, qword [ebp + 0x4c]
mov edi, dword [ebp + 4]
call fcn.004abf3f
add dword [ebp], eax
lea ecx, [ebp - 0x880]
push 0
adc edi, edx
lea edx, [ebp]
mov dword [ebp + 4], edi
call fcn.00477f80
add esp, 4
mov ecx, ebx
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
cmp edi, 2
je 0x42d590
cmp ebx, 2
je 0x42d590
cmp dword [ebp + 0x38], 0
je 0x42d553
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 0x42d571
test esi, esi
je 0x42d562
push 0
mov ecx, esi
call fcn.00417f40
jmp 0x42d56d
mov ecx, dword [0x4ddf6c]
call fcn.00403e60
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00417f40
mov ecx, dword [ebp + 0x68]
add eax, esi
adc edx, edi
push edx
push eax
call fcn.00417e70
mov ecx, eax
jmp 0x4305c3
cmp dword [ebp + 0x38], 0
je 0x42d5ab
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.004ac090
jmp 0x42d5c5
test esi, esi
je 0x42d5ba
push 0
mov ecx, esi
call fcn.00417fd0
jmp 0x42d5c5
mov ecx, dword [0x4ddf6c]
call fcn.00417e30
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.00417fd0
addsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.00417e90
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf70]
movzx ecx, word [eax]
test cx, cx
je 0x42d6de
call fcn.0040e460
movzx eax, ax
push eax
push str.SMHD
call fcn.00492ca4
add esp, 8
test eax, eax
je 0x42d6de
mov ecx, dword [0x4ddf1c]
mov esi, dword [0x4ddf6c]
test ecx, ecx
je 0x42d650
cmp word [esi], 0
jne 0x42d650
mov al, byte [ecx + 0x17]
test al, al
jne 0x42d63d
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x42d650
test ecx, ecx
je 0x42d650
push 0
push 1
call fcn.00401490
mov esi, eax
lea eax, [ebp + 0x37]
mov ecx, ebx
push eax
push 0
push 1
call fcn.00401490
mov edx, eax
mov ecx, esi
call fcn.00478050
add esp, 4
mov esi, eax
cmp byte [ebp + 0x37], 0
mov edi, edx
je 0x42d68e
push 1
push 0
push 0xffffffffffffffff
push 0x4c602c
mov ecx, ebx
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf70]
mov cx, word [eax]
call fcn.0040e460
movzx eax, ax
cmp eax, 0x44
je 0x42d6bc
cmp eax, 0x48
je 0x42d6b3
cmp eax, 0x4d
jne 0x42d6ce
push 0
push 0x3c
jmp 0x42d6c3
push 0
push 0xe10
jmp 0x42d6c3
push 0
push 0x15180
push edi
push esi
call fcn.004abb30
mov esi, eax
mov edi, edx
push edi
push esi
mov ecx, ebx
call fcn.00417e70
mov ecx, eax
jmp 0x4305c3
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x42d6f8
cmp byte [eax + 0x11], 0
jne 0x42d6f8
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x42d746
mov esi, dword [0x4ddf1c]
xor ebx, ebx
mov ecx, dword [0x4ddf6c]
test esi, esi
je 0x42d72f
cmp word [ecx], bx
jne 0x42d72f
mov al, byte [esi + 0x17]
test al, al
jne 0x42d71c
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x42d72f
test esi, esi
je 0x42d731
push 1
mov ecx, esi
call fcn.00417ec0
jmp 0x42d744
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.00478130
add esp, 0xc
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.00417ec0
cmp edi, 2
je 0x42d7ab
cmp eax, 2
je 0x42d7ab
test ebx, ebx
je 0x42d76e
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 0x42d78c
test esi, esi
je 0x42d77d
push 0
mov ecx, esi
call fcn.00417f40
jmp 0x42d788
mov ecx, dword [0x4ddf6c]
call fcn.00403e60
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00417f40
mov ecx, dword [ebp + 0x68]
sub eax, esi
sbb edx, edi
push edx
push eax
call fcn.00417e70
mov ecx, eax
jmp 0x4305c3
test ebx, ebx
je 0x42d7c4
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.004ac090
jmp 0x42d7de
test esi, esi
je 0x42d7d3
push 0
mov ecx, esi
call fcn.00417fd0
jmp 0x42d7de
mov ecx, dword [0x4ddf6c]
call fcn.00417e30
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.00417fd0
subsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.00417e90
mov ecx, eax
jmp 0x4305c3
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x42d81e
cmp byte [eax + 0x11], 0
jne 0x42d81e
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x42d86c
mov esi, dword [0x4ddf1c]
xor ebx, ebx
mov ecx, dword [0x4ddf6c]
test esi, esi
je 0x42d855
cmp word [ecx], bx
jne 0x42d855
mov al, byte [esi + 0x17]
test al, al
jne 0x42d842
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x42d855
test esi, esi
je 0x42d857
push 1
mov ecx, esi
call fcn.00417ec0
jmp 0x42d86a
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.00478130
add esp, 0xc
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.00417ec0
cmp edi, 2
je 0x42d8d6
cmp eax, 2
je 0x42d8d6
test ebx, ebx
je 0x42d894
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 0x42d8b2
test esi, esi
je 0x42d8a3
push 0
mov ecx, esi
call fcn.00417f40
jmp 0x42d8ae
mov ecx, dword [0x4ddf6c]
call fcn.00403e60
mov esi, edx
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 0
call fcn.00417f40
push esi
push edi
push edx
push eax
call fcn.004ab170
mov ecx, dword [ebp + 0x68]
push edx
push eax
call fcn.00417e70
mov ecx, eax
jmp 0x4305c3
test ebx, ebx
je 0x42d8ef
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.004ac090
jmp 0x42d909
test esi, esi
je 0x42d8fe
push 0
mov ecx, esi
call fcn.00417fd0
jmp 0x42d909
mov ecx, dword [0x4ddf6c]
call fcn.00417e30
mov ecx, dword [ebp + 0x68]
push 0
movsd qword [ebp + 0x4c], xmm0
call fcn.00417fd0
mulsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.00417e90
mov ecx, eax
jmp 0x4305c3
mov eax, dword [esi + 8]
cmp dword [eax + 0x1c], 0
je 0x42d949
cmp byte [eax + 0x11], 0
jne 0x42d949
mov ebx, 1
xor esi, esi
mov edi, ebx
jmp 0x42d997
mov esi, dword [0x4ddf1c]
xor ebx, ebx
mov ecx, dword [0x4ddf6c]
test esi, esi
je 0x42d980
cmp word [ecx], bx
jne 0x42d980
mov al, byte [esi + 0x17]
test al, al
jne 0x42d96d
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x42d980
test esi, esi
je 0x42d982
push 1
mov ecx, esi
call fcn.00417ec0
jmp 0x42d995
xor esi, esi
push 1
push 1
push 0
mov edx, 1
call fcn.00478130
add esp, 0xc
mov edi, eax
mov ecx, dword [ebp + 0x68]
push 1
call fcn.00417ec0
cmp edi, 2
je 0x42da1b
cmp eax, 2
je 0x42da1b
test ebx, ebx
je 0x42d9bf
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 0x42d9dd
test esi, esi
je 0x42d9ce
push 0
mov ecx, esi
call fcn.00417f40
jmp 0x42d9d9
mov ecx, dword [0x4ddf6c]
call fcn.00403e60
mov edi, edx
mov esi, eax
mov ecx, dword [ebp + 0x68]
mov eax, esi
or eax, edi
jne 0x42d9fa
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
push 0
call fcn.00417f40
push edi
push esi
push edx
push eax
call fcn.004abb30
mov ecx, dword [ebp + 0x68]
push edx
push eax
call fcn.00417e70
mov ecx, eax
jmp 0x4305c3
test ebx, ebx
je 0x42da34
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.004ac090
jmp 0x42da4e
test esi, esi
je 0x42da43
push 0
mov ecx, esi
call fcn.00417fd0
jmp 0x42da4e
mov ecx, dword [0x4ddf6c]
call fcn.00417e30
mov ecx, dword [ebp + 0x68]
xorps xmm1, xmm1
ucomisd xmm0, xmm1
movsd qword [ebp + 0x4c], xmm0
lahf
test ah, 0x44
jp 0x42da77
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
push 0
call fcn.00417fd0
divsd xmm0, qword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
movaps xmm1, xmm0
call fcn.00417e90
mov ecx, eax
jmp 0x4305c3
push 2
mov ecx, esi
call fcn.004289f0
mov esi, eax
test esi, esi
jns 0x42daa8
xor esi, esi
jmp 0x42dab7
mov ecx, dword [ebp + 0x64]
push 1
call fcn.00428950
cmp esi, eax
cmovg esi, eax
sub esp, 8
mov ecx, ebx
push esi
push dword [0x4ddf6c]
call fcn.00401450
mov ecx, eax
jmp 0x4305c3
push 2
mov ecx, esi
call fcn.004289f0
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.00428950
mov ecx, eax
mov eax, dword [0x4ddf6c]
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.00401450
mov ecx, eax
jmp 0x4305c3
cmp byte [esi + 1], 4
jb 0x42db45
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x34]
cmp word [eax], 0
je 0x42db45
push 3
mov ecx, esi
call fcn.004289f0
mov edi, eax
cmp edi, 1
jge 0x42db4a
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, ebx
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
mov edi, closesocket
push 2
mov ecx, esi
call fcn.004289f0
mov ecx, dword [0x4ddf78]
mov esi, eax
mov cx, word [ecx]
call fcn.0040e460
cmp ax, 0x4c
jne 0x42db82
cmp esi, 1
jl 0x42db2f
mov edx, 1
mov eax, edx
sub eax, edi
add esi, eax
cmp esi, edx
jge 0x42db8d
dec edi
add edi, esi
jmp 0x42db87
mov edx, 1
cmp esi, 1
cmovl esi, edx
mov ecx, dword [ebp + 0x64]
push 1
call fcn.00428950
mov ecx, eax
cmp ecx, esi
jb 0x42db2f
mov eax, 1
sub eax, esi
add ecx, eax
mov eax, dword [0x4ddf6c]
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.00401450
mov ecx, eax
jmp 0x4305c3
push 2
mov ecx, esi
call fcn.004289f0
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.00428950
cmp esi, eax
mov ecx, ebx
cmova esi, eax
sub esp, 8
sub eax, esi
push eax
mov eax, dword [0x4ddf6c]
lea eax, [eax + esi*2]
push eax
call fcn.00401450
mov ecx, eax
jmp 0x4305c3
push 2
mov ecx, esi
call fcn.004289f0
mov ecx, dword [ebp + 0x64]
xor esi, esi
test eax, eax
push 1
cmovns esi, eax
call fcn.00428950
cmp esi, eax
mov ecx, ebx
cmova esi, eax
sub esp, 8
sub eax, esi
push eax
push dword [0x4ddf6c]
call fcn.00401450
mov ecx, eax
jmp 0x4305c3
push 1
push 1
mov ecx, ebx
call fcn.00401490
mov esi, eax
cmp esi, dword [0x4ddf6c]
jne 0x42dc65
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x42dc60
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x42dcb3
mov ebx, dword [ebp + 0x64]
mov ecx, ebx
push 1
push 0
push 1
call fcn.00428950
mov edi, dword [ebp + 0x68]
mov ecx, edi
push eax
push 0
call fcn.0047b2f0
cmp eax, 1
jne 0x42c897
push 0
push eax
mov ecx, edi
call fcn.00401490
mov ecx, dword [0x4ddf6c]
mov esi, eax
mov edx, esi
sub edx, ecx
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [ecx + edx - 2], ax
test ax, ax
jne 0x42dca1
jmp 0x42dcb9
mov ebx, dword [ebp + 0x64]
mov edi, dword [ebp + 0x68]
mov eax, dword [0x4ddf70]
movzx ecx, word [eax]
test cx, cx
je 0x42dce6
call fcn.0040e460
cmp ax, 0x54
jne 0x42dce6
mov eax, dword [0x4ddf70]
cmp word [eax + 2], 0
jne 0x42dce6
mov ecx, esi
call fcn.00417ba0
jmp 0x42dcfa
cmp byte [ebx], 0x31
push esi
jne 0x42dcf4
call dword [sym.imp.USER32.dll_CharLowerW]
jmp 0x42dcfa
call dword [sym.imp.USER32.dll_CharUpperW]
cmp byte [edi + 0x17], 0
jne 0x42dd03
mov edi, dword [edi + 0xc]
cmp byte [edi + 0x17], 2
jne 0x42dd24
cmp dword [0x4dec1c], 0
je 0x42dd24
push ecx
mov ecx, 0x4dec10
call fcn.00404e90
mov ecx, eax
jmp 0x4305c3
and byte [edi + 0x15], 0x86
mov ecx, 1
jmp 0x4305c3
mov ecx, dword [0x4ddf1c]
test ecx, ecx
je 0x42dd67
cmp byte [ecx + 0x17], 0
jne 0x42dd4a
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x15]
jmp 0x42dd4d
mov al, byte [ecx + 0x15]
test al, 1
je 0x42dd67
call fcn.004182d0
push 0
push eax
mov ecx, ebx
call fcn.00417e70
mov ecx, eax
jmp 0x4305c3
push 1
mov ecx, esi
call fcn.00428950
push 0
push eax
mov ecx, ebx
call fcn.00417e70
mov ecx, eax
jmp 0x4305c3
mov ebx, dword [0x4ddf74]
mov dword [ebp + 0x50], ebx
mov dword [ebp + 0x44], 0xffffffff
movzx ecx, word [ebx]
test cx, cx
je 0x42ddcf
call fcn.0040e460
movzx eax, ax
push eax
push 0x4ce318
call fcn.00492ca4
add esp, 8
test eax, eax
je 0x42ddcf
cmp word [ebx + 2], 0
lea ecx, [ebx + 2]
je 0x42ddcf
call fcn.004124b0
mov dword [ebp + 0x38], eax
test eax, eax
jle 0x42ded0
jmp 0x42ddd6
mov dword [ebp + 0x38], 1
mov esi, dword [0x4ddf70]
cmp word [esi], 0
jne 0x42ddee
mov dword [ebp + 0x44], 0
jmp 0x42ded0
mov eax, dword [0x4ddf6c]
mov ecx, dword [ebp + 0x64]
push 4
mov dword [ebp + 0x18], eax
call fcn.004289f0
mov ecx, dword [ebp + 0x64]
xor ebx, ebx
test eax, eax
push 1
cmovns ebx, eax
call fcn.00428950
mov edx, eax
mov dword [ebp + 0x14], edx
cmp ebx, edx
jge 0x42ded0
mov eax, dword [ebp + 0x50]
movzx ecx, word [eax]
cmp ecx, 0x31
je 0x42dea5
call fcn.0040e460
cmp ax, 0x52
je 0x42dea2
mov ecx, dword [ebp + 0x64]
push 2
call fcn.00428950
mov dword [ebp + 0x50], eax
mov edi, 1
mov eax, dword [ebp + 0x18]
lea ecx, [eax + ebx*2]
mov ebx, dword [ebp + 0x38]
nop dword [eax]
nop word [eax + eax]
mov edx, dword [0x4d89c0]
mov dl, byte [edx + 0xf2]
test dl, dl
jne 0x42de79
mov edx, esi
call fcn.004786c0
jmp 0x42de91
cmp dl, 2
jne 0x42de87
mov edx, esi
call fcn.00478940
jmp 0x42de91
push esi
push ecx
call fcn.004930fb
add esp, 8
test eax, eax
je 0x42ded0
cmp edi, ebx
je 0x42dec2
mov ecx, dword [ebp + 0x50]
inc edi
lea ecx, [eax + ecx*2]
jmp 0x42de60
mov edx, dword [ebp + 0x14]
push dword [ebp + 0x38]
movzx eax, byte [edi + 0xf2]
sub edx, ebx
mov ebx, dword [ebp + 0x18]
mov ecx, ebx
push eax
push esi
call fcn.00478480
add esp, 0xc
jmp 0x42dec5
mov ebx, dword [ebp + 0x18]
test eax, eax
je 0x42ded0
sub eax, ebx
sar eax, 1
mov dword [ebp + 0x44], eax
mov esi, dword [ebp + 0x44]
mov ecx, 0x4b41e8
push 1
push 0
test esi, esi
mov eax, 0x4c8740
push 0xffffffffffffffff
cmovns eax, ecx
mov ecx, dword [0x4db768]
push eax
call fcn.0047b2f0
mov ecx, dword [ebp + 0x68]
push esi
call fcn.00403e90
mov ecx, eax
jmp 0x4305c3
mov ecx, esi
call fcn.00442870
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.00438800
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
mov ecx, esi
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00442a60
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf68]
mov ecx, esi
call fcn.00443210
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf6c]
mov ecx, esi
push dword [0x4ddf68]
call fcn.00443820
mov ecx, eax
jmp 0x4305c3
push 0
push dword [0x4ddf88]
mov ecx, esi
push 7
call fcn.004289f0
push eax
push 6
mov ecx, esi
call fcn.004289f0
push eax
push 5
mov ecx, esi
call fcn.004289f0
push eax
push 4
mov ecx, esi
call fcn.004289f0
push eax
push 3
mov ecx, esi
call fcn.004289f0
push eax
push 2
mov ecx, esi
call fcn.004289f0
push eax
mov ecx, esi
call fcn.0043e840
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf80]
mov ecx, esi
push 5
call fcn.004289f0
push eax
push 4
mov ecx, esi
call fcn.004289f0
push eax
push 3
mov ecx, esi
call fcn.004289f0
push eax
push 2
mov ecx, esi
call fcn.004289f0
push eax
mov ecx, esi
call fcn.0043f030
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
mov ecx, esi
push 2
call fcn.004289f0
push eax
push 1
mov ecx, esi
call fcn.004289f0
push eax
mov ecx, esi
call fcn.00455760
mov ecx, eax
jmp 0x4305c3
xor edx, edx
cmp cl, 0x42
push 0
push dword [edi + 0xd4]
sete dl
mov ecx, dword [0x4ddf68]
call fcn.004127a0
add esp, 8
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
xor eax, eax
cmp dword [edi + 0xd4], 3
push 0
sete al
xor edx, edx
lea eax, [eax*2 + 1]
push eax
jmp 0x42e04a
push 0
push 2
xor edx, edx
jmp 0x42e04a
push 0
push 0
xor edx, edx
jmp 0x42e04a
mov ecx, dword [0x4ddf68]
call fcn.004144f0
mov ecx, eax
jmp 0x4305c3
push 0x4c602c
push 0x4c602c
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
mov edx, dword [0x4ddf68]
push dword [0x4ddf6c]
call fcn.004147b0
add esp, 0x20
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf7c]
push dword [0x4ddf74]
push dword [0x4ddf80]
push dword [0x4ddf78]
push 0x4c602c
push 0x4c602c
jmp 0x42e0c6
push 0x4c602c
push 0x4c602c
push dword [0x4ddf74]
mov edx, 0x4c602c
push dword [0x4ddf70]
push 0x4c602c
push 0x4c602c
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.004147b0
add esp, 0x20
mov ecx, eax
jmp 0x4305c3
push 4
mov ecx, esi
call fcn.004289f0
push eax
mov ecx, esi
call fcn.004418d0
mov ecx, eax
jmp 0x4305c3
mov edx, dword [0x4ddf68]
cmp cl, 0x76
push 0
push 0
sete al
mov ecx, edi
movzx eax, al
push eax
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0047c010
add esp, 0x18
test eax, eax
je case.0x42d28b.3
mov eax, dword [0x4d89c0]
mov ecx, dword [eax + 0x54]
cmp ecx, 0xffffffff
jle case.0x42d28b.3
mov edx, 1
call fcn.004016e0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 9
push str.exk_group
push dword [0x4ddf68]
call fcn.00495d63
mov edx, dword [0x4ddf74]
add esp, 0xc
test eax, eax
jne 0x42e1fa
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
jne 0x42e1fa
cmp word [edx], 0
jne 0x42e1fa
mov bl, 1
jmp 0x42e1fc
xor bl, bl
xor ecx, ecx
mov eax, 0x14
test bl, bl
cmovne eax, ecx
mov dword [ebp + 0x44], eax
mov al, byte [esi]
cmp al, 0x82
je 0x42e21f
cmp al, 0x83
je 0x42e21f
mov eax, dword [0x4ddf70]
cmp word [eax], cx
jmp 0x42e25a
mov eax, dword [0x4ddf70]
cmp word [eax], cx
je 0x42e251
push 2
mov ecx, esi
call fcn.00428ab0
mulsd xmm0, qword [0x4d3108]
mov eax, 0x1f4
mov edx, dword [0x4ddf74]
cvttsd2si ecx, xmm0
test ecx, ecx
cmove ecx, eax
mov dword [ebp + 0x44], ecx
mov eax, dword [0x4ddf78]
cmp word [eax], 0
jne 0x42e2a0
test bl, bl
je 0x42e2a0
mov ecx, dword [0x4ddf68]
lea ecx, [ecx + 0x12]
call fcn.0040e490
mov ebx, eax
cmp word [ebx], 0
je 0x42e2a0
mov esi, dword [0x4de108]
test esi, esi
je 0x42e29d
push ebx
push dword [esi + 4]
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42e2ca
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x42e280
mov edx, dword [0x4ddf74]
mov esi, dword [ebp + 0x64]
mov al, byte [esi]
cmp al, 0x82
je 0x42e2e2
cmp al, 0x83
je 0x42e2e4
push edx
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
push eax
call fcn.0043a360
mov ecx, eax
jmp 0x4305c3
mov eax, dword [ebp + 0x64]
mov ecx, esi
push dword [ebp + 0x44]
movzx eax, byte [eax]
push eax
call fcn.0047dfc0
mov ecx, eax
jmp 0x4305c3
cmp al, 0x83
sete al
mov ecx, edi
movzx eax, al
push eax
push dword [0x4ddf78]
push edx
push dword [ebp + 0x44]
mov edx, dword [0x4ddf68]
push dword [0x4ddf6c]
call fcn.0047c2f0
add esp, 0x14
jmp 0x42e193
push dword [0x4ddf6c]
call fcn.0043e050
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf6c]
push dword [0x4ddf68]
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
test eax, eax
sete al
mov ecx, esi
movzx eax, al
push eax
call fcn.00434f60
mov ecx, eax
jmp 0x4305c3
lea eax, [ebp - 0x24]
push eax
push 0x3a98
push 1
push str.Environment
push 0
push 0x1a
push 0xffff
call dword [sym.imp.USER32.dll_SendMessageTimeoutW]
jmp 0x42e334
push dword [0x4ddf6c]
mov ecx, esi
push dword [0x4ddf68]
call fcn.00456ec0
mov ecx, eax
jmp 0x4305c3
push ecx
mov ecx, dword [0x4ddf68]
mov edx, 0x4debd0
call fcn.00475b30
mov ecx, dword [0x4ddf6c]
mov edx, 0x4debdc
call fcn.00475b30
mov ecx, dword [0x4ddf70]
mov edx, 0x4debe8
call fcn.00475b30
mov eax, 1
add esp, 4
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf70]
mov edx, str.UseErrorLevel
call fcn.004786c0
test eax, eax
mov ecx, 0x4de0d0
mov al, 3
setne bl
cmp al, byte [esi + 1]
mov byte [ebp - 0x1c], bl
sbb eax, eax
and eax, dword [0x4ddf24]
push eax
push 1
push dword [ebp - 0x1c]
mov al, bl
push 0
push dword [0x4ddf70]
xor al, 1
movzx eax, al
push eax
push dword [0x4ddf6c]
push 0
push dword [0x4ddf68]
call fcn.00436160
mov ecx, eax
mov dword [ebp + 0x68], ecx
test bl, bl
je 0x4305c6
push 1
test ecx, ecx
mov eax, 0x4b41e8
push 0
mov ecx, str.ERROR
cmove eax, ecx
mov ecx, dword [0x4db768]
push 0xffffffffffffffff
push eax
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
mov ecx, esi
call fcn.0043a450
mov ecx, eax
jmp 0x4305c3
cmp byte [esi + 1], 2
jbe 0x42e4a2
push dword [0x4ddf84]
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043ab30
mov ecx, eax
jmp 0x4305c3
push 0x4c602c
push 0x4c602c
push 0x4c602c
push 0x4c602c
push dword [0x4ddf6c]
push dword [0x4ddf68]
push 0x4c602c
push 0x4c602c
call fcn.0043ab30
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf90]
mov ecx, esi
push dword [0x4ddf8c]
push dword [0x4ddf88]
push dword [0x4ddf84]
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00455b60
mov ecx, eax
jmp 0x4305c3
xor eax, eax
cmp cl, 0x47
mov ecx, esi
sete al
push eax
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043ac60
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf74]
mov dl, 1
push 0
call fcn.004124e0
add esp, 4
mov byte [ebp + 0xc], al
test al, al
jne 0x42e597
push dword [0x4ddf74]
mov ecx, esi
push 0
push str.Parameter_4_invalid.
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf78]
cmp word [eax], 0
je 0x42e5ad
push 4
mov ecx, esi
call fcn.004289f0
jmp 0x42e5b2
mov eax, 1
push dword [0x4ddf84]
mov ecx, esi
push dword [0x4ddf80]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
push dword [0x4ddf7c]
push eax
push dword [ebp + 0xc]
call fcn.0043ad20
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf88]
mov ecx, esi
push dword [0x4ddf84]
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043b350
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf88]
mov ecx, esi
push dword [0x4ddf84]
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
call fcn.0043b580
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf78]
mov ecx, esi
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0043b6f0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf78]
mov ecx, esi
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043b8e0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf7c]
mov ecx, esi
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043ba00
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf7c]
mov ecx, esi
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0043bac0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf80]
mov ecx, esi
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00455e70
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf84]
mov ecx, esi
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.004566b0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0043c250
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf84]
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043c2d0
mov ecx, eax
jmp 0x4305c3
cmp cl, 0x90
mov ecx, esi
sete al
movzx eax, al
push eax
call fcn.0043c410
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf70]
mov ecx, esi
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043c710
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf7c]
mov ecx, esi
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043ccd0
mov ecx, eax
jmp 0x4305c3
cmp byte [esi + 1], 1
jbe 0x42e878
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0043d110
mov ecx, eax
jmp 0x4305c3
mov esi, dword [0x4ddf68]
push 0x4c602c
push 0x4c602c
push 0x4c602c
push 0x4c602c
call fcn.004486e0
test eax, eax
jne 0x42e8a3
lea ecx, [eax + 1]
jmp 0x4305c3
push esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov ecx, 1
jmp 0x4305c3
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0043d140
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0043d2a0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf7c]
mov ecx, esi
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0043d3a0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf78]
mov ecx, esi
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0043dc50
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf84]
mov ecx, esi
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
call fcn.0043dee0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf70]
mov ecx, esi
push dword [0x4ddf6c]
call fcn.0043e140
mov ecx, eax
jmp 0x4305c3
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 0x42e19b
push 0
push 0x1a0
jmp 0x42e996
mov eax, dword [esi + 0xc]
test eax, eax
jne 0x42e9f8
mov ecx, dword [0x4ddf68]
cmp word [ecx], ax
je 0x42e9f8
push ecx
mov ecx, 0x4de0d0
call fcn.00420320
test eax, eax
jne 0x42e9f8
push dword [0x4ddf68]
mov ecx, esi
push eax
push 0x4c8744
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
mov dword [0x4deb5c], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov edx, dword [0x4ddf6c]
mov al, 1
cmp al, byte [esi + 1]
mov ecx, dword [0x4ddf68]
sbb eax, eax
and eax, dword [0x4ddf1c]
push eax
push dword [esi + 0xc]
push dword [0x4ddf70]
call fcn.0040f7d0
add esp, 0xc
mov ecx, eax
jmp 0x4305c3
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x42eae9
push esi
push ebx
push dword [0x4ddf68]
mov ecx, 0x4de0d0
call fcn.00420370
mov esi, eax
test esi, esi
jne 0x42eae9
mov eax, dword [0x4ddf68]
cmp word [eax], si
je 0x42ea86
mov ecx, dword [ebp + 0x64]
push eax
push esi
push 0x4c8744
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
mov ebx, dword [ebp + 0x64]
cmp byte [ebx + 1], 0
jbe 0x42eab5
mov eax, dword [ebx + 8]
mov eax, dword [eax + 4]
cmp word [eax], 0
je 0x42eab5
push 0x4c602c
push 0
push str.Parameter_1_invalid.
mov ecx, ebx
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
mov esi, dword [edi + 0xbc]
test esi, esi
jne 0x42eaec
mov esi, dword [edi + 0xc0]
test esi, esi
je 0x42eacf
mov esi, dword [esi]
test esi, esi
jne 0x42eaec
push 0x4c602c
push 0
push str.Parameter_1_must_not_be_blank_in_this_case.
mov ecx, ebx
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
mov ebx, dword [ebp + 0x64]
mov ecx, dword [0x4ddf6c]
cmp word [ecx], 0
je 0x42eb7c
xor edx, edx
call fcn.0041a830
mov edi, eax
test edi, edi
jne 0x42eb74
mov ecx, dword [0x4ddf6c]
lea edx, [eax + 1]
push eax
push 1
push 1
call fcn.00478130
add esp, 0xc
test eax, eax
jne 0x42eb74
push str.Delete
push dword [0x4ddf6c]
call fcn.0049466a
add esp, 8
test eax, eax
jne 0x42eb59
push esi
mov ecx, 0x4de0d0
call fcn.004201e0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push dword [0x4ddf6c]
mov ecx, ebx
push 0
push str.Parameter_2_invalid.
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf6c]
jmp 0x42eb7e
xor edi, edi
lea eax, [edi - 1]
cmp eax, 1
ja 0x42ebb8
cmp edi, 1
mov ecx, 0x4de0d0
push 0
sete al
movzx eax, al
push eax
push dword [0x4ddf70]
push 0x4c602c
push esi
call fcn.0041ffd0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
cmp word [ecx], 0
mov edx, dword [0x4ddf70]
jne 0x42ebce
cmp word [edx], 0
je 0x42ebce
mov al, 1
jmp 0x42ebd0
xor al, al
push eax
push 1
push edx
push ecx
push esi
mov ecx, 0x4de0d0
call fcn.0041ffd0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, dword [0x4ddf68]
mov esi, 0x10
cmp word [eax], 0
je 0x42ec26
push 0x4c9ca4
push eax
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42ec26
mov ecx, dword [ebp + 0x64]
push 0
call fcn.004289f0
mov esi, eax
test esi, esi
jne 0x42ec26
xor ecx, ecx
jmp 0x42ec2b
mov ecx, 1
mov byte [edi + 0xee], cl
test cl, cl
je 0x42ec66
mov eax, 1
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], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, 1
mov dword [edi + 0xd8], 5
mov byte [edi + 0xec], 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf68]
call fcn.00419f10
sub eax, 1
je 0x42ed35
sub eax, 1
je 0x42ecef
sub eax, 1
jne case.0x42febe.69
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42ecd7
push 1
mov ecx, esi
call fcn.004289f0
or eax, edx
jne 0x42ecd7
mov eax, 1
mov byte [edi + 0xed], al
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
xor eax, eax
mov byte [edi + 0xed], al
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42ed08
push 1
mov ecx, esi
call fcn.004289f0
mov dword [0x4debc4], eax
mov eax, dword [0x4ddf70]
cmp word [eax], 0
je case.0x42febe.69
push 2
mov ecx, esi
call fcn.004289f0
mov dword [0x4debc0], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 1
mov ecx, esi
call fcn.004289f0
mov dword [edi + 0x2c], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x42ed74
push 1
push dword [0x4ddf68]
mov ecx, 0x4de0d0
call fcn.00429670
mov esi, eax
test esi, esi
je 0x42c897
mov ecx, dword [0x4ddf74]
cmp word [ecx], 0
je 0x42edb6
mov ebx, dword [ebp + 0x64]
mov eax, dword [ebx + 0x18]
test eax, eax
jne 0x42edb3
push ecx
mov ecx, 0x4de0d0
call fcn.00420320
test eax, eax
jne 0x42edb3
push dword [0x4ddf74]
mov ecx, ebx
push eax
push 0x4c8744
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
mov dword [esi + 0x10], eax
push dword [0x4ddf7c]
mov ecx, esi
push dword [0x4ddf78]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.0047dcb0
mov ecx, eax
jmp 0x4305c3
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x42ee27
mov edi, dword [0x4ddf68]
cmp word [edi], si
je case.0x42d28b.3
mov esi, dword [0x4de108]
test esi, esi
je case.0x42d28b.3
push edi
push dword [esi + 4]
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42ee27
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x42ee00
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42ee5e
push 0x4c8d98
push eax
call fcn.0049466a
add esp, 8
test eax, eax
jne 0x42ee5e
mov al, 1
mov ecx, esi
push eax
call fcn.0047e290
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
xor al, al
mov ecx, esi
push eax
call fcn.0047e290
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x42eec7
mov edi, dword [0x4ddf68]
cmp word [edi], si
je case.0x42d28b.3
mov esi, dword [0x4de108]
test esi, esi
je case.0x42d28b.3
nop dword [eax]
push edi
push dword [esi + 4]
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42eec7
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x42eea0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42ef3c
push 0x4cbf90
push eax
call fcn.0049466a
add esp, 8
test eax, eax
jne 0x42ef05
push eax
push 0x82
mov ecx, esi
call fcn.0047dfc0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42ef3c
push 0x4c8d98
push eax
call fcn.0049466a
add esp, 8
test eax, eax
jne 0x42ef3c
mov al, 1
mov ecx, esi
push eax
call fcn.0047e040
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
xor al, al
mov ecx, esi
push eax
call fcn.0047e040
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.00444080
mov ecx, eax
jmp 0x4305c3
test ebx, ebx
jne 0x42ef92
push 1
mov ecx, esi
call fcn.004289f0
mov ecx, eax
call fcn.004177c0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf6c]
mov edi, 1
push 0
push 1
push 0
mov edx, edi
call fcn.00478130
add esp, 0xc
cmp eax, 2
je 0x42f04b
mov ecx, dword [0x4ddf70]
mov edx, edi
push 0
push edi
push 0
call fcn.00478130
add esp, 0xc
cmp eax, 2
je 0x42f04b
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42efeb
push edi
mov ecx, esi
call fcn.004289f0
mov ebx, eax
jmp 0x42efed
xor ebx, ebx
mov eax, dword [0x4ddf70]
cmp word [eax], 0
je 0x42f005
push 2
mov ecx, esi
call fcn.004289f0
mov esi, eax
jmp 0x42f00a
mov esi, closesocket
cmp ebx, esi
jle 0x42f014
mov eax, ebx
mov ebx, esi
mov esi, eax
call fcn.004178f0
mov edi, eax
mov 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.004abbe0
mov ecx, dword [ebp + 0x68]
add eax, ebx
push eax
call fcn.00403e90
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42f066
push 1
mov ecx, esi
call fcn.00428ab0
movsd qword [ebp + 0x4c], xmm0
jmp 0x42f06e
xorps xmm2, xmm2
movsd qword [ebp + 0x4c], xmm2
mov eax, dword [0x4ddf70]
cmp word [eax], 0
je 0x42f08c
push 2
mov ecx, esi
call fcn.00428ab0
movaps xmm1, xmm0
movsd qword [ebp + 0x10], xmm0
jmp 0x42f099
movsd xmm1, qword [0x4d3148]
movsd qword [ebp + 0x10], xmm1
movsd xmm2, qword [ebp + 0x4c]
comisd xmm2, xmm1
jbe 0x42f0b4
movaps xmm0, xmm2
movaps xmm2, xmm1
movsd qword [ebp + 0x4c], xmm2
movsd qword [ebp + 0x10], xmm0
call fcn.00417940
movsd xmm1, qword [ebp + 0x10]
mov ecx, ebx
subsd xmm1, qword [ebp + 0x4c]
mulsd xmm0, xmm1
addsd xmm0, qword [ebp + 0x4c]
movaps xmm1, xmm0
call fcn.00417e90
mov ecx, eax
jmp 0x4305c3
push 1
push dword [0x4ddf6c]
mov ecx, esi
call fcn.00444190
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf70]
mov ecx, esi
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00444380
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf70]
mov ecx, esi
push dword [0x4ddf6c]
call fcn.00444640
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
mov eax, dword [0x4ddf68]
xor edx, edx
push ecx
push dword [0x4ddf6c]
cmp cl, 0x9b
mov ecx, esi
cmove eax, edx
push eax
call fcn.00444c40
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42f16d
push 1
mov ecx, esi
call fcn.004289f0
dec eax
jmp 0x42f16f
xor eax, eax
cdq
test edx, edx
jg 0x42f185
jl 0x42f17a
test eax, eax
jae 0x42f185
xorps xmm0, xmm0
movlpd qword [ebp + 0x24], xmm0
mov eax, dword [ebp + 0x24]
cmp byte [esi], 0x9d
mov ecx, esi
push eax
jne 0x42f199
call fcn.00445d10
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf68]
call fcn.00445e10
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42f1c3
push 1
mov ecx, esi
call fcn.004289f0
mov esi, eax
jmp 0x42f1c8
mov esi, 0x96
mov eax, dword [0x4ddf68]
cmp word [eax], 0
je 0x42f1f5
mov ecx, dword [ebp + 0x64]
push 0
call fcn.004289f0
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, 0x20b
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42f234
push str.wait
push eax
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42f25d
mov eax, dword [0x4ddf6c]
push 0x4c8740
push eax
call fcn.0049466a
add esp, 8
test eax, eax
je 0x42f25d
xor al, al
mov ecx, esi
push eax
push dword [0x4ddf68]
call fcn.00445fb0
mov ecx, eax
jmp 0x4305c3
mov al, 1
mov ecx, esi
push eax
push dword [0x4ddf68]
call fcn.00445fb0
mov ecx, eax
jmp 0x4305c3
cmp byte [esi + 1], 2
jae 0x42f27f
mov eax, dword [edi + 0x18]
jmp 0x42f281
xor eax, eax
push eax
push dword [0x4ddf68]
mov ecx, esi
push dword [0x4ddf6c]
call fcn.004473a0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf6c]
mov ecx, esi
call fcn.00446aa0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf70]
mov ecx, esi
push dword [0x4ddf6c]
call fcn.00447020
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf68]
mov ecx, esi
call fcn.00447860
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf68]
mov ecx, esi
call fcn.00457bb0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf68]
mov ecx, esi
call fcn.00457cd0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf70]
mov ecx, esi
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00447930
mov ecx, eax
jmp 0x4305c3
lea eax, [edi + 0x30]
mov ecx, esi
push eax
push 0
push 2
call fcn.004289f0
mov edx, dword [0x4ddf6c]
cmp eax, 1
mov ecx, dword [0x4ddf68]
sete al
movzx eax, al
push eax
call fcn.004583c0
add esp, 0xc
test eax, eax
jne 0x42f3a0
mov ecx, dword [0x4db768]
push 1
push eax
push 0xffffffffffffffff
push 0x4b41e8
call fcn.0047b2f0
mov ecx, eax
jmp 0x4305c3
lea eax, [edi + 0x30]
mov ecx, esi
push eax
push 1
push 2
call fcn.004289f0
mov edx, dword [0x4ddf6c]
cmp eax, 1
mov ecx, dword [0x4ddf68]
sete al
movzx eax, al
push eax
call fcn.004583c0
add esp, 0xc
push eax
mov ecx, esi
call fcn.00435010
mov ecx, eax
jmp 0x4305c3
push 2
mov ecx, esi
call fcn.004289f0
mov edx, dword [0x4ddf6c]
cmp eax, 1
mov ecx, dword [0x4ddf68]
sete al
movzx eax, al
push eax
call fcn.00457f30
add esp, 4
test al, al
jmp 0x42e336
mov eax, dword [0x4ddf70]
mov cx, word [eax]
call fcn.0040e460
cmp ax, 0x52
jne 0x42f407
push dword [0x4ddf6c]
push dword [0x4ddf68]
call dword [sym.imp.KERNEL32.dll_MoveFileW]
jmp 0x42e334
push 2
mov ecx, esi
call fcn.004289f0
mov edx, dword [0x4ddf6c]
mov ecx, dword [0x4ddf68]
push eax
call fcn.004580e0
add esp, 4
test al, al
jmp 0x42e336
push dword [0x4ddf68]
mov ecx, esi
call fcn.00446930
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf68]
cmp word [eax], 0
je 0x42f47a
push 1
mov ecx, esi
call fcn.004289f0
mov ecx, dword [0x4ddf68]
cmp eax, 1
sete dl
call fcn.004582c0
test al, al
je 0x42f47a
xor al, al
mov ecx, esi
push eax
call fcn.00434f60
mov ecx, eax
jmp 0x4305c3
mov al, 1
mov ecx, esi
push eax
call fcn.00434f60
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
jne 0x42f4b4
mov eax, dword [edi + 0x10]
test eax, eax
je 0x42f4af
add eax, 0x2c
mov ecx, esi
push eax
call fcn.00447a30
mov ecx, eax
jmp 0x4305c3
mov eax, 0x4c602c
push eax
mov ecx, esi
call fcn.00447a30
mov ecx, eax
jmp 0x4305c3
mov esi, dword [0x4ddf6c]
cmp word [esi], 0
jne 0x42f4de
mov eax, dword [edi + 0x10]
lea esi, [eax + 0x2c]
test eax, eax
jne 0x42f4de
mov esi, 0x4c602c
push ecx
mov ecx, dword [ebp + 0x64]
push 3
call fcn.004289f0
mov ecx, dword [0x4ddf70]
cmp eax, 1
sete al
movzx eax, al
push eax
call fcn.0041ab60
mov ecx, dword [ebp + 0x64]
push eax
push esi
push dword [0x4ddf68]
call fcn.00447b70
xor ecx, ecx
cmp dword [edi + 0x104], ecx
sete cl
jmp 0x4305c3
mov ecx, dword [0x4ddf6c]
cmp word [ecx], 0
jne 0x42f539
mov eax, dword [edi + 0x10]
lea ecx, [eax + 0x2c]
test eax, eax
jne 0x42f539
mov ecx, 0x4c602c
mov eax, dword [0x4ddf70]
movzx eax, word [eax]
push eax
push ecx
mov ecx, esi
call fcn.00448180
mov ecx, eax
jmp 0x4305c3
mov esi, dword [0x4ddf6c]
cmp word [esi], 0
jne 0x42f56c
mov eax, dword [edi + 0x10]
lea esi, [eax + 0x2c]
test eax, eax
jne 0x42f56c
mov esi, 0x4c602c
push ecx
mov ecx, dword [ebp + 0x64]
push 4
call fcn.004289f0
mov ecx, dword [0x4ddf74]
cmp eax, 1
sete al
movzx eax, al
push eax
call fcn.0041ab60
mov ecx, dword [ebp + 0x64]
push eax
mov eax, dword [0x4ddf70]
movzx eax, word [eax]
push eax
push esi
push dword [0x4ddf68]
call fcn.004482e0
xor ecx, ecx
cmp dword [edi + 0x104], ecx
sete cl
jmp 0x4305c3
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
jne 0x42f5e4
mov eax, dword [edi + 0x10]
test eax, eax
je 0x42f5df
push dword [0x4ddf70]
add eax, 0x2c
mov ecx, esi
push eax
call fcn.00448490
mov ecx, eax
jmp 0x4305c3
mov eax, 0x4c602c
push dword [0x4ddf70]
mov ecx, esi
push eax
call fcn.00448490
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
jne 0x42f622
mov eax, dword [edi + 0x10]
test eax, eax
je 0x42f61d
add eax, 0x2c
mov ecx, esi
push eax
call fcn.00457d50
mov ecx, eax
jmp 0x4305c3
mov eax, 0x4c602c
push eax
mov ecx, esi
call fcn.00457d50
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf68]
call fcn.004461e0
xor ecx, ecx
cmp dword [edi + 0x104], ecx
sete cl
jmp 0x4305c3
push dword [0x4ddf78]
mov ecx, esi
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.00446310
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
mov ecx, esi
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.004572b0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf68]
mov ecx, esi
call fcn.004575d0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf88]
mov ecx, esi
push dword [0x4ddf84]
push dword [0x4ddf80]
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00457970
mov ecx, eax
jmp 0x4305c3
mov ecx, 4
call fcn.00440c00
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf68]
mov edx, 7
call fcn.0041a830
mov ecx, eax
cmp ecx, 7
jne 0x42f721
lea ecx, [eax - 6]
call fcn.00440c00
mov ecx, eax
jmp 0x4305c3
cmp byte [edi + 0xf9], 0
je 0x42f74b
mov eax, dword [0x4dd290]
test eax, eax
jle 0x42f736
dec eax
jmp 0x42f73b
mov eax, 0x18f
mov dword [0x4dd290], eax
mov dword [eax*4 + 0x4dd8d8], 0
cmp ecx, 1
sete al
mov byte [edi + 0xf9], al
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, 2
call fcn.00440c00
mov ecx, eax
jmp 0x4305c3
mov ecx, 3
call fcn.00440c00
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4d89c0]
add ecx, 0x4c
call fcn.0045f910
test eax, eax
je 0x42f7a8
mov eax, dword [0x4d89c0]
mov eax, dword [eax + 0x4c]
mov eax, dword [eax + 4]
jmp 0x42f7aa
xor eax, eax
mov cl, byte [esi + 1]
push eax
test cl, cl
jne 0x42f7c3
push 0
xorps xmm3, xmm3
mov edx, 0x10000
mov ecx, str.Press_OK_to_continue.
jmp 0x42f804
cmp cl, 1
jne 0x42f7da
mov ecx, dword [0x4ddf68]
xorps xmm3, xmm3
push 0
mov edx, 0x10000
jmp 0x42f804
push 3
mov ecx, esi
call fcn.00428ab0
push dword [0x4ddf6c]
mov ecx, esi
movsd qword [ebp + 0x24], xmm0
push 0
call fcn.004289f0
movsd xmm3, qword [ebp + 0x24]
mov edx, eax
mov ecx, dword [0x4ddf70]
call fcn.0047ce40
mov esi, eax
add esp, 8
test esi, esi
jne 0x42f83b
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x59e
jne 0x42f83b
mov ecx, dword [ebp + 0x64]
push dword [0x4ddf68]
push 0
push str.Parameter_1_invalid.
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
xor ecx, ecx
test esi, esi
setne cl
jmp 0x4305c3
mov eax, dword [0x4ddf84]
cmp word [eax], 0
je 0x42f860
push 7
mov ecx, esi
call fcn.004289f0
mov dword [ebp + 0x44], eax
jmp 0x42f867
mov dword [ebp + 0x44], closesocket
mov eax, dword [0x4ddf80]
cmp word [eax], 0
je 0x42f87f
push 6
mov ecx, esi
call fcn.004289f0
mov ebx, eax
jmp 0x42f884
mov ebx, closesocket
mov eax, dword [0x4ddf7c]
cmp word [eax], 0
je 0x42f89c
push 5
mov ecx, esi
call fcn.004289f0
mov edi, eax
jmp 0x42f8a1
mov edi, closesocket
mov eax, dword [0x4ddf78]
cmp word [eax], 0
je 0x42f8b9
push 4
mov ecx, esi
call fcn.004289f0
mov esi, eax
jmp 0x42f8be
mov esi, closesocket
push dword [0x4ddf90]
mov ecx, dword [ebp + 0x64]
push 9
call fcn.00428ab0
mov eax, dword [0x4ddf74]
sub esp, 8
mov cx, word [eax]
movsd qword [esp], xmm0
push dword [ebp + 0x44]
push ebx
push edi
push esi
call fcn.0040e460
mov edx, dword [0x4ddf6c]
cmp ax, 0x48
mov ecx, dword [ebp + 0x68]
sete al
movzx eax, al
push eax
push dword [0x4ddf70]
call fcn.00440de0
add esp, 0x24
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je 0x42f92a
push 1
mov ecx, esi
call fcn.004289f0
mov esi, eax
jmp 0x42f92c
xor esi, esi
mov eax, dword [0x4ddf68]
cmp word [eax], 0
je 0x42f943
mov ecx, dword [ebp + 0x64]
push 0
call fcn.004289f0
jmp 0x42f948
mov eax, 0xc8
push dword [0x4ddf74]
push dword [0x4ddf70]
push esi
push eax
call fcn.004558f0
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4dc224]
test eax, eax
je 0x42f982
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x42f982
push dword [0x4dc224]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov eax, 1
mov dword [0x4dc224], 0
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 0
push 0x4c602c
push dword [0x4ddf78]
mov ecx, esi
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.004371a0
mov ecx, eax
jmp 0x4305c3
push 1
push dword [0x4ddf68]
mov ecx, esi
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.004371a0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
mov ecx, esi
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00438400
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00438700
mov ecx, eax
jmp 0x4305c3
mov ecx, esi
call fcn.004399c0
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf6c]
call fcn.0041ae10
mov ecx, dword [0x4ddf68]
movzx esi, ax
call fcn.0041ae80
movzx ecx, ax
mov eax, 3
shl ax, cl
not ax
shl si, cl
and ax, word [edi + 0xf0]
or ax, si
mov word [edi + 0xf0], ax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 0
mov ecx, esi
call fcn.004289f0
mov byte [edi + 0xef], al
cmp al, 0x64
jbe case.0x42febe.69
mov eax, 1
mov byte [edi + 0xef], 2
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov edx, dword [edi + 0xd4]
mov ecx, dword [0x4ddf68]
call fcn.0041aad0
mov dword [edi + 0xd4], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 0
mov ecx, esi
call fcn.004289f0
cmp eax, 0x64
ja case.0x42febe.69
mov byte [edi + 0xf6], al
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push str.Play
push dword [0x4ddf70]
call fcn.0049466a
add esp, 8
test eax, eax
mov eax, dword [0x4ddf68]
jne 0x42fb7c
cmp word [eax], 0
je 0x42fb51
push 0
mov ecx, esi
call fcn.004289f0
mov dword [edi + 0x60], eax
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je case.0x42febe.69
push 1
mov ecx, esi
call fcn.004289f0
mov dword [edi + 0x68], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
cmp word [eax], 0
je 0x42fb8e
push 0
mov ecx, esi
call fcn.004289f0
mov dword [edi + 0x5c], eax
mov eax, dword [0x4ddf6c]
cmp word [eax], 0
je case.0x42febe.69
push 1
mov ecx, esi
call fcn.004289f0
mov dword [edi + 0x64], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push str.Play
push dword [0x4ddf6c]
call fcn.0049466a
add esp, 8
mov ecx, esi
push 0
test eax, eax
jne 0x42fbec
call fcn.004289f0
mov dword [edi + 0x70], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
call fcn.004289f0
mov dword [edi + 0x6c], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 0
mov ecx, esi
call fcn.004289f0
mov dword [edi + 0x54], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 0
mov ecx, esi
call fcn.004289f0
mov dword [edi + 0x58], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf68]
mov edx, 0x4cc4c4
call fcn.004786c0
mov ecx, esi
push 0
test eax, eax
je 0x42fc79
mov dword [edi], 0xffffffff
mov dword [edi + 4], 0xffffffff
call fcn.004289f0
mov dword [edi + 0x24], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov dword [edi + 0x24], 0xffffffff
call fcn.004289f0
mov dword [edi], eax
or eax, edx
mov dword [edi + 4], edx
jne case.0x42febe.69
mov dword [edi + 4], eax
mov eax, 1
mov dword [edi], 0xa
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf68]
mov edx, 7
call fcn.0041a830
cmp eax, 7
je case.0x42febe.69
cmp eax, 1
sete al
mov byte [edi + 0xf3], al
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf68]
call fcn.00419190
dec eax
cmp eax, 5
ja case.default.0x42fcf5
jmp dword [eax*4 + 0x430f6c]
mov eax, 1
mov dword [edi + 0x20], 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, 1
mov dword [edi + 0x20], 2
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, 1
mov dword [edi + 0x20], 4
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, 1
mov dword [edi + 0x20], 3
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, 1
mov byte [edi + 0xe9], 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, 1
mov byte [edi + 0xe9], 0
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push dword [0x4ddf68]
mov ecx, esi
push 0
push str.Parameter_1_invalid.
call fcn.004351a0
mov ecx, eax
jmp 0x4305c3
push 5
push str.Float
push dword [0x4ddf68]
call fcn.00495d63
add esp, 0xc
test eax, eax
jne 0x42fe85
push 1
mov ecx, esi
call fcn.00428950
cmp eax, 0x1e
jae case.0x42febe.69
push 1
mov ecx, esi
call fcn.004289f0
push 0x2e
push dword [0x4ddf6c]
mov ebx, eax
mov dword [ebp + 0x50], edx
call fcn.00492ca4
mov esi, eax
add esp, 8
test esi, esi
je 0x42fdfe
lea ecx, [esi + 2]
call fcn.00403e60
jmp 0x42fe0c
xorps xmm0, xmm0
movlpd qword [ebp + 0x24], xmm0
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0x24]
add eax, ebx
adc edx, dword [ebp + 0x50]
add eax, 2
adc edx, 0
mov dword [ebp + 0x28], edx
js 0x42fe2d
jg case.0x42d28b.3
cmp eax, 0xff
ja case.0x42febe.69
mov ecx, dword [0x4ddf6c]
mov edx, 1
push 0
push 1
push 1
call fcn.00478130
test eax, eax
mov ecx, 0x4ce384
mov eax, 0x4c602c
cmove ecx, eax
test esi, esi
push ecx
mov ecx, 0x4cd218
cmove eax, ecx
push eax
push dword [0x4ddf6c]
lea eax, [edi + 0x74]
push 0x4ce388
push eax
call fcn.00404b00
mov eax, 1
add esp, 0x20
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 7
push str.Integer
push dword [0x4ddf68]
call fcn.00495d63
add esp, 0xc
test eax, eax
jne case.0x42febe.69
mov ecx, dword [0x4ddf6c]
movzx eax, word [ecx]
add eax, 0xffffffbc
cmp eax, 0x24
ja case.0x42febe.69
movzx eax, byte [eax + 0x430f90]
jmp dword [eax*4 + 0x430f84]
mov eax, 1
mov byte [edi + 0xf5], 0x44
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov al, byte [ecx]
mov byte [edi + 0xf5], al
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.00441c80
mov ecx, eax
jmp 0x4305c3
mov cl, 4
mov dl, 3
cmp cl, byte [esi + 1]
sbb ecx, ecx
and ecx, dword [0x4ddf28]
cmp dl, byte [esi + 1]
push ecx
sbb eax, eax
mov ecx, 0x4de0d0
and eax, dword [0x4ddf24]
push eax
push dword [0x4ddf7c]
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0046d520
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
mov ecx, 0x4de0d0
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.0045f990
mov ecx, eax
jmp 0x4305c3
mov al, 2
mov ecx, esi
cmp al, byte [esi + 1]
sbb eax, eax
and eax, dword [0x4ddf20]
push eax
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00460250
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
mov ecx, esi
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.00461160
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf68]
call fcn.0041a960
cmp eax, 7
ja case.0x42d28b.3
jmp dword [eax*4 + 0x430fb8]
cmp byte [0x4dc0e5], 0
jne case.0x42d28b.3
call fcn.00434b80
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
cmp byte [0x4dc0e5], 0
je case.0x42d28b.3
call fcn.00434b80
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 1
mov ecx, esi
call fcn.004289f0
mov ecx, dword [0x4ddf68]
test eax, eax
setne al
movzx eax, al
push eax
call fcn.0040e540
push eax
mov ecx, esi
call fcn.00434bd0
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf68]
mov edx, 7
call fcn.0041a830
cmp eax, 7
je case.0x42febe.69
cmp eax, 1
sete al
mov byte [edi + 0xf4], al
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf68]
call fcn.0041a910
mov byte [edi + 0xf2], al
cmp al, 4
jne case.0x42febe.69
mov eax, 1
mov byte [edi + 0xf2], 0
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf68]
mov edx, 7
call fcn.0041a830
cmp eax, 7
je case.0x42febe.69
cmp eax, 1
sete al
mov byte [edi + 0xea], al
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf68]
mov edx, 7
call fcn.0041a830
cmp eax, 7
je case.0x42febe.69
cmp eax, 1
sete al
mov byte [edi + 0xeb], al
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov ecx, dword [0x4ddf68]
call fcn.0041a9e0
lea ecx, [eax - 1]
cmp ecx, 0xc
ja case.0x42febe.69
movzx ecx, byte [ecx + 0x430ff0]
jmp dword [ecx*4 + 0x430fd8]
mov cl, 1
call fcn.00434cc0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
xor cl, cl
call fcn.00434cc0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov dword [0x4d89cc], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
or byte [0x4dd212], 2
cmp dword [0x4db798], 0
mov byte [0x4db793], 1
jne case.0x42febe.69
movzx edx, word [0x4dd210]
sub esp, 8
call fcn.0040ce30
mov eax, 1
add esp, 8
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
mov eax, 1
mov byte [0x4db793], 0
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push dword [0x4ddf68]
mov edx, 0x4d9ac8
mov cl, 0x90
call fcn.00448640
add esp, 4
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf68]
mov edx, 0x4d9ac4
mov cl, 0x14
call fcn.00448640
add esp, 4
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf68]
mov edx, 0x4d8e64
mov cl, 0x91
call fcn.00448640
add esp, 4
mov ecx, eax
jmp 0x4305c3
mov ecx, 0x4de0d0
call fcn.0041c420
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 1
mov ecx, 0x4de0d0
call fcn.0041c5d0
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 0
mov ecx, esi
call fcn.004289f0
mov ecx, eax
jmp 0x42e1ac
push dword [0x4ddf78]
push dword [0x4ddf74]
push dword [0x4ddf70]
push dword [0x4ddf6c]
call fcn.004746e0
mov ecx, eax
jmp 0x4305c3
push dword [0x4ddf74]
mov ecx, esi
push dword [0x4ddf70]
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.004748d0
mov ecx, eax
jmp 0x4305c3
mov eax, dword [0x4ddf70]
xor ecx, ecx
cmp byte [esi + 1], 3
cmovb eax, ecx
mov ecx, esi
push eax
push dword [0x4ddf6c]
push dword [0x4ddf68]
call fcn.00474a20
mov ecx, eax
jmp 0x4305c3
cmp byte [esi + 1], 2
jae 0x430320
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x430320
lea eax, [ecx + 0x808]
push eax
lea eax, [ecx + 8]
push eax
push dword [ecx + 4]
mov ecx, esi
call fcn.00474af0
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf6c]
lea eax, [ebp + 0x57]
push eax
lea eax, [ebp + 0x3c]
mov edx, 2
push eax
call fcn.00418ab0
mov ecx, dword [ebp + 0x3c]
add esp, 8
mov esi, eax
test ecx, ecx
jne 0x430354
mov ecx, dword [0x4ddf70]
mov eax, dword [0x4ddf74]
mov dword [ebp + 0x3c], ecx
jmp 0x430359
mov eax, dword [0x4ddf70]
push eax
push ecx
mov ecx, dword [ebp + 0x64]
push esi
call fcn.00474af0
cmp byte [ebp + 0x57], 0
mov ecx, eax
mov dword [ebp + 0x68], ecx
je 0x4305c6
test esi, esi
je 0x4305c6
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp + 0x68]
jmp 0x4305c6
cmp byte [esi + 1], 2
jae 0x4303bf
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x4303bf
push dword [0x4ddf68]
lea eax, [ecx + 0x808]
push eax
lea eax, [ecx + 8]
push eax
push dword [ecx + 4]
push dword [ecx + 0x1008]
mov ecx, esi
call fcn.00474e30
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf6c]
lea eax, [ebp + 0x57]
push eax
lea eax, [ebp + 0x3c]
mov edx, 2
push eax
call fcn.00418ab0
mov ecx, dword [ebp + 0x3c]
add esp, 8
mov esi, eax
test ecx, ecx
jne 0x4303f9
mov ecx, dword [0x4ddf70]
mov eax, dword [0x4ddf74]
mov edx, dword [0x4ddf78]
mov dword [ebp + 0x3c], ecx
jmp 0x430404
mov eax, dword [0x4ddf70]
mov edx, dword [0x4ddf74]
push edx
push eax
push ecx
mov ecx, dword [0x4ddf68]
push esi
call fcn.00418c60
mov ecx, dword [ebp + 0x64]
push eax
call fcn.00474e30
jmp 0x430364
cmp byte [esi + 1], 1
jae 0x43049a
mov eax, dword [edi + 0x14]
test eax, eax
je 0x43049a
cmp dword [eax + 0x1008], 0xfffffffe
lea ecx, [eax + 8]
jne 0x43047c
cmp word [ecx], 0
je 0x430472
add eax, 0x808
push eax
push ecx
push 0x4ce30c
lea eax, [ebp - 0x880]
push 0x400
push eax
call fcn.004782d0
add esp, 0x14
lea ecx, [ebp - 0x880]
xor eax, eax
jmp 0x430481
lea ecx, [eax + 0x808]
xor eax, eax
jmp 0x430481
add eax, 0x808
push eax
mov eax, dword [edi + 0x14]
push ecx
mov dword [ebp + 0x3c], ecx
mov ecx, esi
push dword [eax + 4]
call fcn.00475230
mov ecx, eax
jmp 0x4305c3
mov ecx, dword [0x4ddf68]
lea eax, [ebp + 0x57]
push eax
lea eax, [ebp + 0x3c]
mov edx, 2
push eax
call fcn.00418ab0
mov edi, dword [ebp + 0x3c]
add esp, 8
mov ebx, eax
test edi, edi
jne 0x4304cf
mov edi, dword [0x4ddf6c]
mov esi, dword [0x4ddf70]
mov dword [ebp + 0x3c], edi
jmp 0x4304d5
mov esi, dword [0x4ddf6c]
cmp word [esi], 0
jne 0x4304df
xor ecx, ecx
jmp 0x4304f7
push str.exk_default
push esi
call fcn.0049466a
add esp, 8
mov ecx, 0x4c602c
test eax, eax
cmovne ecx, esi
push ecx
mov ecx, dword [ebp + 0x64]
push edi
push ebx
call fcn.00475230
cmp byte [ebp + 0x57], 0
mov ecx, eax
mov dword [ebp + 0x68], ecx
je 0x4305c6
test ebx, ebx
je 0x4305c6
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp + 0x68]
jmp 0x4305c6
mov ecx, dword [0x4ddf68]
call fcn.00418cf0
mov esi, eax
cmp esi, 0xffffffff
je 0x42f81f
call fcn.00479870
test eax, eax
je case.0x42febe.69
mov eax, 1
mov dword [edi + 0xd0], esi
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push dword [0x4ddf68]
mov ecx, 0x4de018
call fcn.00408534
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
push 0
mov ecx, esi
call fcn.004289f0
mov ecx, eax
call fcn.00458c20
xor ecx, ecx
test al, al
setne cl
jmp 0x4305c3
mov ecx, dword [0x4ddf68]
call fcn.0041b050
cmp eax, 0xffffffff
jne 0x4305ae
mov ecx, esi
jmp 0x42f822
mov dword [edi + 0xfc], eax
mov eax, 1
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x60], eax
jmp 0x4305d1
xor ecx, ecx
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x60], ecx
test ecx, ecx
je 0x430ad3
cmp dword [ebp + 0x74], 3
je 0x430ad3
mov edi, dword [ebp + 0x64]
mov ebx, dword [ebp + 0x5c]
mov edi, dword [edi + 0x14]
test edi, edi
mov dword [ebp + 0x64], edi
jmp 0x42c48d
mov esi, dword [ebp + 0x48]
mov dword [esi], ecx
jmp 0x42c7e4
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 esi, dword [ebp + 0x48]
mov dword [esi], edx
jmp 0x42c7e4
mov esi, dword [ebp + 0x48]
pop edi
mov dword [esi], edx
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp ecx, 7
mov eax, 1
cmove ecx, eax
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov eax, dword [esi + 8]
mov esi, dword [ebp + 0x48]
mov dword [esi], eax
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov eax, dword [ebp + 0x60]
mov edx, 1
pop edi
cmp eax, 7
pop esi
cmove eax, edx
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
push dword [0x4ddf6c]
mov ecx, esi
push 0
push str.Parameter_2_invalid.
call fcn.004351a0
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 [0x4ddf70]
mov ecx, esi
push 0
push str.Parameter_3_invalid.
call fcn.004351a0
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 0x430715
lea ecx, [ebp + 0x50]
call fcn.00435970
test esi, esi
je 0x430749
cmp esi, 8
je 0x430749
mov ecx, dword [0x4de700]
push 0x4c602c
push 0
push str.Jumps_cannot_exit_a_FINALLY_block.
call fcn.004351a0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
pop edi
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov esi, dword [ebp + 0x48]
mov eax, 1
pop edi
mov dword [esi], ecx
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov esi, dword [ebp + 0x48]
pop edi
mov dword [esi], ecx
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov edx, dword [ebp + 0x78]
test edx, edx
je 0x4307e6
cmp dword [edx + 8], 0
jne 0x4307e6
mov ecx, dword [0x4ddf18]
test ecx, ecx
je 0x4307d7
cmp byte [ecx + 0x17], 0
jne 0x4307b8
mov eax, dword [ecx + 0xc]
jmp 0x4307ba
mov eax, ecx
test byte [eax + 0x15], 2
je 0x4307d7
push edx
call fcn.00418090
cmp dword [ebp + 0x74], 1
mov eax, 7
cmovne edi, eax
jmp 0x42c7e4
mov ecx, dword [0x4ddf68]
mov dword [edx + 8], 0
mov dword [edx], ecx
cmp dword [ebp + 0x74], 1
mov eax, 7
cmovne edi, eax
jmp 0x42c7e4
mov eax, dword [esi + 0x18]
test eax, eax
je 0x430808
mov esi, dword [ebp + 0x48]
mov dword [esi], eax
jmp 0x42c7e4
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 0x43082d
mov esi, dword [ebp + 0x48]
mov dword [esi], eax
pop edi
pop esi
mov eax, 6
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
cmp byte [esi + 1], 0
jne 0x430873
push 0x4c602c
push 0
push str.An_exception_was_thrown.
mov ecx, esi
call fcn.00434ec0
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.00490a4f
mov esi, eax
add esp, 4
mov dword [ebp - 0x1c], esi
test esi, esi
jne 0x4308ad
mov ecx, dword [ebp + 0x64]
push 0x4c602c
push eax
push str.Out_of_memory.
call fcn.004351a0
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 [0x4dd28c]
mov ebx, dword [ebp + 0x64]
test ecx, ecx
jne 0x430925
mov eax, dword [ebx + 8]
mov ecx, 0xff
movzx eax, word [eax + 2]
cmp ax, cx
jae 0x4308d1
mov eax, ecx
inc eax
mov dword [0x4dd288], eax
add eax, eax
push eax
call fcn.00495d48
mov ecx, eax
add esp, 4
mov dword [0x4dd28c], ecx
test ecx, ecx
jne 0x430925
push 0x10
push esi
mov dword [0x4dd288], eax
call fcn.00490a1e
add esp, 8
mov ecx, ebx
push 0x4c602c
push 0
push str.Out_of_memory.
call fcn.004351a0
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 [0x4dd288]
mov dword [ebp + 0x74], eax
lea eax, [ebp + 0x24]
push 0
push eax
lea eax, [ebp + 0x74]
mov dword [ebp + 0x78], ecx
push eax
lea eax, [ebp + 0x78]
mov dword [ebp + 0xc], ecx
push eax
lea eax, [ebp + 0xc]
mov dword [ebp + 0x24], 0
push eax
push esi
lea eax, [ebp + 0x60]
mov dword [ebp + 0x28], 0
push eax
push 0
mov ecx, ebx
mov dword [0x4dd28c], 0
mov dword [0x4dd288], 0
mov dword [esi + 8], 0x41
call fcn.0045c470
mov edi, eax
cmp edi, dword [ebp + 0x78]
jne 0x430988
mov dword [esi + 0xc], edi
jmp 0x4309c9
mov dword [esi + 0xc], 0
cmp dword [ebp + 0x78], 0
je 0x4309c9
mov eax, dword [0x4dd28c]
test eax, eax
je 0x4309b9
push eax
call fcn.00495d53
add esp, 4
cmp dword [0x4dd288], 0x400000
jbe 0x4309b9
dec dword [0x4dd284]
mov eax, dword [ebp + 0x78]
mov dword [0x4dd28c], eax
mov eax, dword [ebp + 0x74]
mov dword [0x4dd288], eax
test edi, edi
jne 0x4309ef
push 0x10
push esi
call fcn.00490a1e
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 0x4309fe
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 0x42c897
mov ecx, ebx
call fcn.004356f0
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 word [0x4dd210], 0
jne 0x430a5f
cmp dword [0x4dc260], 0
jne 0x430a5f
cmp dword [0x4db79c], 0
jne 0x430a5f
cmp dword [0x4db798], 0
jne 0x430a5f
cmp byte [0x4db791], 0
je case.0x42c810.222
pop edi
pop esi
mov eax, 8
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
push 0
mov ecx, esi
call fcn.004289f0
push eax
push 9
mov ecx, 0x4de0d0
call fcn.0041c630
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 0x42c7e4
push 0x4c602c
push 0
push str.A__return__must_be_encountered_prior_to_this___.
mov ecx, esi
call fcn.004351a0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp + 0x68]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
lea esp, [ebp + 0x6c]
pop ebp
ret 0xc