Function at 0x41eec0
Capabilities:
Accept command line arguments
Create process on windows
Self delete

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x338
mov eax, dword [0x437b70]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
xor edi, edi
mov dword [ebp - 0xf0], edi
mov dword [ebp - 0x188], edi
mov dword [ebp - 0x110], edi
mov dword [ebp - 0x1f0], edi
mov dword [0x438c08], eax
mov byte [ebp - 0xdd], 1
call fcn.0041e428
mov byte [0x438c0c], al
call 0x41836d
call fcn.0041e428
lea ecx, [ebp - 0x1fc]
mov byte [0x438c0c], al
call fcn.0040efc9
lea ecx, [ebp - 0xec]
call fcn.0040efc9
lea ecx, [ebp - 0x1b8]
call fcn.0040efc9
lea ecx, [ebp - 0x194]
call fcn.0040efc9
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0xdc]
call fcn.0040f010
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0x1fc]
push eax
lea eax, [ebp - 0xdc]
push eax
call fcn.0040e7c4
push dword [ebp - 0xdc]
call fcn.0040f7b5
pop ecx
call fcn.0040103a
lea ecx, [ebp - 0x1a0]
mov word [0x4389a0], ax
call fcn.0040efc9
lea eax, [ebp - 0x1a0]
push eax
call fcn.00410269
lea ecx, [ebp - 0xec]
call fcn.0040f430
lea ecx, [ebp - 0xec]
call fcn.0040f3f9
push 0x42fa00
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xcf], 0
call fcn.0040ead4
test al, al
je 0x41f001
mov eax, dword [ebp - 0xec]
add eax, 4
push eax
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xcf], 1
call fcn.0040f0ba
lea ecx, [ebp - 0xec]
call fcn.0040f430
lea ecx, [ebp - 0xec]
call fcn.0040f3f9
mov esi, 0x42e35c
push esi
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 0x109], 0
mov byte [ebp - 0x10a], 0
call fcn.0040f010
push esi
lea ecx, [ebp - 0x1c4]
call fcn.0040f010
push 0x42f9f8
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push 2
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0xec]
call fcn.0041474e
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0xdc]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
je 0x41f32e
mov eax, dword [ebp - 0xec]
add eax, 4
push eax
lea ecx, [ebp - 0xec]
call fcn.0040f0ba
lea ecx, [ebp - 0xec]
call fcn.0040f430
lea ecx, [ebp - 0xec]
call fcn.0040f3f9
push esi
lea ecx, [ebp - 0x16c]
call fcn.0040f010
mov ebx, dword [ebp - 0xf0]
xor esi, esi
push 0x42f9f4
lea ecx, [ebp - 0xdc]
call fcn.0040f010
mov eax, dword [ebp - 0xec]
movzx eax, word [eax + esi*2]
push eax
lea ecx, [ebp - 0xfc]
or ebx, 3
call fcn.0040efed
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
test eax, eax
je 0x41f10b
mov byte [ebp - 0xce], 1
cmp esi, dword [ebp - 0xe8]
jb 0x41f112
mov byte [ebp - 0xce], 0
test bl, 2
je 0x41f126
push dword [ebp - 0xfc]
and ebx, 0xfffffffd
call fcn.0040f7b5
pop ecx
test bl, 1
je 0x41f13a
push dword [ebp - 0xdc]
and ebx, 0xfffffffe
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xce], 0
je 0x41f15f
mov eax, dword [ebp - 0xec]
movzx eax, word [eax + esi*2]
push eax
lea ecx, [ebp - 0x16c]
call fcn.0040e793
inc esi
jmp 0x41f0c2
xor esi, esi
push 0x42f9f0
lea ecx, [ebp - 0xdc]
call fcn.0040f010
mov eax, dword [ebp - 0x16c]
movzx eax, word [eax + esi*2]
push eax
lea ecx, [ebp - 0xfc]
or ebx, 0xc
call fcn.0040efed
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
test eax, eax
je 0x41f1aa
mov byte [ebp - 0xce], 1
cmp esi, dword [ebp - 0x168]
jb 0x41f1b1
mov byte [ebp - 0xce], 0
test bl, 8
je 0x41f1c5
push dword [ebp - 0xfc]
and ebx, 0xfffffff7
call fcn.0040f7b5
pop ecx
test bl, 4
je 0x41f1d9
push dword [ebp - 0xdc]
and ebx, 0xfffffffb
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xce], 0
je 0x41f1fe
mov eax, dword [ebp - 0x16c]
movzx eax, word [eax + esi*2]
push eax
lea ecx, [ebp - 0x1c4]
call fcn.0040e793
inc esi
jmp 0x41f161
add esi, 2
push 0x42f9ec
lea ecx, [ebp - 0xdc]
call fcn.0040f010
mov eax, dword [ebp - 0x16c]
movzx eax, word [eax + esi*2]
push eax
lea ecx, [ebp - 0xfc]
or ebx, 0x30
call fcn.0040efed
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
test eax, eax
je 0x41f24a
mov byte [ebp - 0xce], 1
cmp esi, dword [ebp - 0x168]
jb 0x41f251
mov byte [ebp - 0xce], 0
test bl, 0x20
je 0x41f265
push dword [ebp - 0xfc]
and ebx, 0xffffffdf
call fcn.0040f7b5
pop ecx
test bl, 0x10
je 0x41f279
push dword [ebp - 0xdc]
and ebx, 0xffffffef
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xce], 0
je 0x41f29e
mov eax, dword [ebp - 0x16c]
movzx eax, word [eax + esi*2]
push eax
lea ecx, [ebp - 0x1ac]
call fcn.0040e793
inc esi
jmp 0x41f201
push str.oslist
lea ecx, [ebp - 0xdc]
mov dword [ebp - 0xf0], ebx
call fcn.0040f010
push dword [ebp - 0xdc]
push dword [ebp - 0x1c4]
call fcn.0040f61a
push dword [ebp - 0xdc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
inc bl
pop ecx
je 0x41f2e4
mov byte [ebp - 0x109], 1
jmp 0x41f322
push str.osblock
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
push dword [ebp - 0x1c4]
call fcn.0040f61a
push dword [ebp - 0xdc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
inc bl
pop ecx
je 0x41f322
mov byte [ebp - 0x10a], 1
push dword [ebp - 0x16c]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x154]
call fcn.0040efc9
push 0x42f9c4
lea ecx, [ebp - 0x160]
call fcn.0040f010
mov esi, eax
push 2
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0xec]
call fcn.0041474e
push dword [esi]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0x160]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
mov esi, 0x42f9bc
je 0x41f428
mov eax, dword [ebp - 0xec]
add eax, 4
push eax
lea ecx, [ebp - 0xec]
call fcn.0040f0ba
push edi
push esi
lea ecx, [ebp - 0xec]
call fcn.0040f372
mov ebx, eax
cmp ebx, edi
jle 0x41f428
push ebx
push edi
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0xec]
call fcn.004011e9
push eax
lea ecx, [ebp - 0x154]
call fcn.0040f120
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x154]
call fcn.0040f430
lea ecx, [ebp - 0x154]
call fcn.0040f3f9
mov eax, dword [ebp - 0xec]
lea eax, [eax + ebx*2]
push eax
lea ecx, [ebp - 0xec]
call fcn.0040f0ba
lea ecx, [ebp - 0x154]
call fcn.0040f430
lea ecx, [ebp - 0x154]
call fcn.0040f3f9
lea ecx, [ebp - 0xec]
mov byte [ebp - 0xcd], 0
call fcn.0040f430
lea ecx, [ebp - 0xec]
call fcn.0040f3f9
push esi
lea ecx, [ebp - 0x160]
call fcn.0040f010
mov esi, eax
push 2
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0xec]
call fcn.0041474e
push dword [esi]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0x160]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
je 0x41f6da
mov eax, dword [ebp - 0xec]
add eax, 4
push eax
lea ecx, [ebp - 0xec]
call fcn.0040f0ba
lea ecx, [ebp - 0xec]
call fcn.0040f430
lea ecx, [ebp - 0xec]
call fcn.0040f3f9
push 0x42f9b8
lea ecx, [ebp - 0xdc]
mov byte [ebp - 0xcd], 1
call fcn.0040f010
push 1
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0xec]
call fcn.0041474e
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0xdc]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
je 0x41f526
mov dword [ebp - 0x110], edi
jmp 0x41f6da
lea ecx, [ebp - 0x1e8]
call fcn.0040efc9
xor esi, esi
mov byte [ebp - 0xce], 0
push 0x42f9f4
lea ecx, [ebp - 0xdc]
call fcn.0040f010
mov eax, dword [ebp - 0xec]
movzx eax, word [eax + esi*2]
or dword [ebp - 0xf0], 0xc0
push eax
lea ecx, [ebp - 0xfc]
call fcn.0040efed
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
test eax, eax
je 0x41f587
cmp esi, dword [ebp - 0xe8]
jae 0x41f587
mov bl, 1
jmp 0x41f589
xor bl, bl
test byte [ebp - 0xf0], 0x80
je 0x41f5a8
push dword [ebp - 0xfc]
and dword [ebp - 0xf0], 0xffffff7f
call fcn.0040f7b5
pop ecx
test byte [ebp - 0xf0], 0x40
je 0x41f5c4
push dword [ebp - 0xdc]
and dword [ebp - 0xf0], 0xffffffbf
call fcn.0040f7b5
pop ecx
test bl, bl
je 0x41f600
mov eax, dword [ebp - 0xec]
movzx eax, word [eax + esi*2]
push eax
lea ecx, [ebp - 0x1e8]
call fcn.0040e793
mov eax, dword [ebp - 0xec]
movzx eax, word [eax + esi*2]
push eax
call fcn.00424db4
pop ecx
test eax, eax
je 0x41f5fa
mov byte [ebp - 0xce], 1
inc esi
jmp 0x41f53a
cmp dword [ebp - 0x1e4], edi
jne 0x41f621
mov dword [ebp - 0x110], 2
mov dword [ebp - 0x1f0], 1
jmp 0x41f6ce
push str.default
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
push dword [ebp - 0x1e8]
call fcn.0040f61a
push dword [ebp - 0xdc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
inc bl
pop ecx
je 0x41f660
mov dword [ebp - 0x110], edi
jmp 0x41f6ce
push str.launch
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
push dword [ebp - 0x1e8]
call fcn.0040f61a
push dword [ebp - 0xdc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
inc bl
pop ecx
je 0x41f6a3
mov dword [ebp - 0x110], 1
jmp 0x41f6ce
cmp byte [ebp - 0xce], 0
mov dword [ebp - 0x110], edi
jne 0x41f6bc
mov dword [ebp - 0x110], 2
push dword [ebp - 0x1e8]
call fcn.00424ccc
pop ecx
mov dword [ebp - 0x1f0], eax
push dword [ebp - 0x1e8]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x108]
call fcn.0040efc9
lea ecx, [ebp - 0x148]
call fcn.0040efc9
lea ecx, [ebp - 0x1dc]
call fcn.0040efc9
push 0x42f990
lea ecx, [ebp - 0x160]
call fcn.0040f010
mov esi, eax
push 2
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0xec]
call fcn.0041474e
push dword [esi]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0x160]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
je 0x41f7ed
mov eax, dword [ebp - 0xec]
add eax, 4
push eax
lea ecx, [ebp - 0xec]
call fcn.0040f0ba
lea ecx, [ebp - 0xec]
call fcn.0040f430
lea ecx, [ebp - 0xec]
call fcn.0040f3f9
lea eax, [ebp - 0xec]
push eax
lea ecx, [ebp - 0x108]
call fcn.0040f120
push 0x42f9ec
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push 1
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0x108]
call fcn.0041474e
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0xdc]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
je 0x41f7ed
push 0x22
lea ecx, [ebp - 0x108]
call fcn.0040f46b
push 0x42f9f4
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.0040ef96
push eax
lea ecx, [ebp - 0x154]
call fcn.0040f120
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.0040ef6f
push eax
lea ecx, [ebp - 0xec]
call fcn.0040f120
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x1d0]
call fcn.0040ec82
mov ecx, dword [ebp - 0x1a0]
lea eax, [ebp - 0x1d0]
push eax
push str.___InstallEnd__
mov edx, str.___Install__UTF_8_
call fcn.0041e678
test al, al
jne 0x41f91c
cmp byte [ebp - 0xcf], al
jne 0x41f890
push 0xf4241
call fcn.00402b3c
push dword [ebp - 0x1d0]
call fcn.0040f7b5
push dword [ebp - 0x1dc]
call fcn.0040f7b5
push dword [ebp - 0x148]
call fcn.0040f7b5
push dword [ebp - 0x108]
call fcn.0040f7b5
push dword [ebp - 0x154]
call fcn.0040f7b5
push dword [ebp - 0x1c4]
call fcn.0040f7b5
push dword [ebp - 0x1ac]
call fcn.0040f7b5
push dword [ebp - 0x1a0]
call fcn.0040f7b5
push dword [ebp - 0x194]
call fcn.0040f7b5
push dword [ebp - 0x1b8]
call fcn.0040f7b5
push dword [ebp - 0xec]
call fcn.0040f7b5
push dword [ebp - 0x1fc]
call fcn.0040f7b5
add esp, 0x30
jmp 0x4217c3
push 0x42f98c
lea ecx, [ebp - 0x214]
call fcn.0040f049
lea ecx, [ebp - 0x178]
call fcn.0040efc9
lea ecx, [ebp - 0x22c]
mov byte [ebp - 0x1ec], 1
call fcn.0040efc9
mov byte [ebp - 0xde], 0
cmp dword [ebp - 0x1cc], edi
je 0x42038d
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x1d0]
push eax
mov dword [ebp - 0x120], edi
mov dword [ebp - 0x11c], edi
mov dword [ebp - 0x118], edi
call fcn.0040fbc5
test al, al
jne 0x41fa53
cmp byte [ebp - 0xcf], al
jne 0x41f99b
push 0xf4242
call fcn.00402b3c
lea ecx, [ebp - 0x120]
call fcn.0041eaea
push dword [ebp - 0x22c]
call fcn.0040f7b5
push dword [ebp - 0x178]
call fcn.0040f7b5
push dword [ebp - 0x214]
call fcn.0040f7b5
push dword [ebp - 0x1d0]
call fcn.0040f7b5
push dword [ebp - 0x1dc]
call fcn.0040f7b5
push dword [ebp - 0x148]
call fcn.0040f7b5
push dword [ebp - 0x108]
call fcn.0040f7b5
push dword [ebp - 0x154]
call fcn.0040f7b5
push dword [ebp - 0x1c4]
call fcn.0040f7b5
push dword [ebp - 0x1ac]
call fcn.0040f7b5
push dword [ebp - 0x1a0]
call fcn.0040f7b5
push dword [ebp - 0x194]
call fcn.0040f7b5
push dword [ebp - 0x1b8]
call fcn.0040f7b5
push dword [ebp - 0xec]
call fcn.0040f7b5
push dword [ebp - 0x1fc]
call fcn.0040f7b5
add esp, 0x3c
jmp 0x4217c3
push 0x42e360
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push str.DeleteTempFiles
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.0040fb89
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0xdc]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
je 0x41fab1
mov byte [ebp - 0xdd], 0
push 0x42f974
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push str.BrowseForFolder
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.0040fb89
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0xdc]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
je 0x41fb0f
mov byte [ebp - 0xde], 1
push str.OSBit
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x184]
push eax
call fcn.0040fb89
cmp dword [ebp - 0x184], edi
je 0x41fcd8
lea ecx, [ebp - 0x184]
call fcn.0040f430
lea ecx, [ebp - 0x184]
call fcn.0040f3f9
call fcn.004043e8
push 0x42e820
lea ecx, [ebp - 0x12c]
mov dword [ebp - 0x114], eax
call fcn.0040f010
push dword [ebp - 0x12c]
mov esi, dword [ebp - 0xf0]
push dword [ebp - 0x184]
mov ebx, 0x100
or esi, ebx
call fcn.0040f61a
mov edi, 0x200
test eax, eax
je 0x41fbb9
push 0x42e818
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
or esi, edi
push dword [ebp - 0x184]
call fcn.0040f61a
mov byte [ebp - 0xce], 0
test eax, eax
jne 0x41fbc0
mov byte [ebp - 0xce], 1
test edi, esi
je 0x41fbd6
push dword [ebp - 0xdc]
and esi, 0xfffffdff
call fcn.0040f7b5
pop ecx
test ebx, esi
je 0x41fbec
push dword [ebp - 0x12c]
and esi, 0xfffffeff
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xce], 0
je 0x41fc2f
cmp dword [ebp - 0x114], 0
je 0x41fcde
sub esp, 0xc
lea eax, [ebp - 0x184]
mov ecx, esp
mov dword [ebp - 0x1ec], esp
push eax
call fcn.0040f08c
call fcn.0040615b
push dword [ebp - 0x184]
call fcn.0040f7b5
pop ecx
jmp 0x41f99b
push 0x42e810
lea ecx, [ebp - 0x12c]
call fcn.0040f010
push dword [ebp - 0x12c]
mov edi, 0x400
push dword [ebp - 0x184]
or esi, edi
call fcn.0040f61a
mov ebx, 0x800
test eax, eax
je 0x41fc8e
push 0x42e808
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
or esi, ebx
push dword [ebp - 0x184]
call fcn.0040f61a
mov byte [ebp - 0xce], 0
test eax, eax
jne 0x41fc95
mov byte [ebp - 0xce], 1
test ebx, esi
je 0x41fcab
push dword [ebp - 0xdc]
and esi, 0xfffff7ff
call fcn.0040f7b5
pop ecx
test edi, esi
je 0x41fcc1
push dword [ebp - 0x12c]
and esi, 0xfffffbff
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xce], 0
je 0x41fcde
cmp dword [ebp - 0x114], 0
jne 0x41fcde
jmp 0x41fc02
mov esi, dword [ebp - 0xf0]
push str.OSList
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x238]
push eax
call fcn.0040fb89
push str.OSBlock
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.0040fb89
cmp byte [ebp - 0x109], 0
je 0x41fd39
lea eax, [ebp - 0x1ac]
push eax
lea ecx, [ebp - 0x238]
call fcn.0040f120
push 0x42e35c
lea ecx, [ebp - 0x244]
call fcn.0040f0ba
cmp byte [ebp - 0x10a], 0
je 0x41fd64
lea eax, [ebp - 0x1ac]
push eax
lea ecx, [ebp - 0x244]
call fcn.0040f120
push 0x42e35c
lea ecx, [ebp - 0x238]
call fcn.0040f0ba
xor edi, edi
cmp dword [ebp - 0x240], edi
je 0x41fdc1
cmp dword [ebp - 0x234], edi
je 0x41fda9
push 0xf4243
call fcn.00402b3c
push dword [ebp - 0x244]
call fcn.0040f7b5
push dword [ebp - 0x238]
call fcn.0040f7b5
push dword [ebp - 0x184]
call fcn.0040f7b5
add esp, 0xc
jmp 0x41f99b
push edi
lea eax, [ebp - 0x244]
push eax
call fcn.00404ccf
test eax, eax
je 0x41fdd3
call fcn.0040534b
jmp 0x41fd80
cmp dword [ebp - 0x234], edi
je 0x41fdd3
push 1
lea eax, [ebp - 0x238]
jmp 0x41fdb0
push str.OSLangBlock
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x1e8]
push eax
call fcn.0040fb89
push str.OSLangList
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x268]
push eax
call fcn.0040fb89
push str.HPSEA_ReturnVal
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x16c]
push eax
call fcn.0040fb89
cmp byte [ebp - 0xcd], 0
jne 0x41ff0e
push str.default
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
push dword [ebp - 0x16c]
call fcn.0040f61a
push dword [ebp - 0xdc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
inc bl
pop ecx
je 0x41fe6a
mov dword [ebp - 0x110], edi
jmp 0x41ff0e
push str.launch
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
push dword [ebp - 0x16c]
call fcn.0040f61a
push dword [ebp - 0xdc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
inc bl
pop ecx
je 0x41fead
mov dword [ebp - 0x110], 1
jmp 0x41ff0e
xor ebx, ebx
mov byte [ebp - 0xcd], 0
cmp dword [ebp - 0x168], edi
jbe 0x41fef2
mov eax, dword [ebp - 0x16c]
movzx eax, word [eax + ebx*2]
push eax
call fcn.00424db4
pop ecx
test eax, eax
je 0x41feda
mov byte [ebp - 0xcd], 1
inc ebx
cmp ebx, dword [ebp - 0x168]
jb 0x41febe
cmp byte [ebp - 0xcd], 0
mov dword [ebp - 0x110], edi
jne 0x41fefc
mov dword [ebp - 0x110], 2
push dword [ebp - 0x16c]
call fcn.00424ccc
pop ecx
mov dword [ebp - 0x1f0], eax
push dword [ebp - 0x1e8]
call fcn.0040ea1a
push dword [ebp - 0x268]
call fcn.0040ea1a
cmp dword [ebp - 0x1e4], edi
je 0x41ffa4
cmp dword [ebp - 0x264], edi
je 0x41ff88
push 0xf4244
call fcn.00402b3c
push dword [ebp - 0x16c]
call fcn.0040f7b5
push dword [ebp - 0x268]
call fcn.0040f7b5
push dword [ebp - 0x1e8]
call fcn.0040f7b5
push dword [ebp - 0x244]
call fcn.0040f7b5
push dword [ebp - 0x238]
call fcn.0040f7b5
push dword [ebp - 0x184]
call fcn.0040f7b5
add esp, 0x18
jmp 0x41f99b
push edi
lea eax, [ebp - 0x1e8]
push eax
call fcn.00404edb
test eax, eax
je 0x4200cd
call fcn.00405d93
jmp 0x41ff3e
cmp dword [ebp - 0x264], edi
je 0x4200cd
push 1
lea eax, [ebp - 0x268]
push eax
call fcn.00404edb
test eax, eax
je 0x4200cd
call fcn.00405d93
xor esi, esi
inc esi
push dword [ebp - 0x16c]
call fcn.0040f7b5
push dword [ebp - 0x268]
call fcn.0040f7b5
push dword [ebp - 0x1e8]
call fcn.0040f7b5
push dword [ebp - 0x244]
call fcn.0040f7b5
push dword [ebp - 0x238]
call fcn.0040f7b5
push dword [ebp - 0x184]
call fcn.0040f7b5
add esp, 0x18
lea ecx, [ebp - 0x120]
call fcn.0041eaea
push dword [ebp - 0x22c]
call fcn.0040f7b5
push dword [ebp - 0x178]
call fcn.0040f7b5
push dword [ebp - 0x214]
call fcn.0040f7b5
push dword [ebp - 0x1d0]
call fcn.0040f7b5
push dword [ebp - 0x1dc]
call fcn.0040f7b5
push dword [ebp - 0x148]
call fcn.0040f7b5
push dword [ebp - 0x108]
call fcn.0040f7b5
push dword [ebp - 0x154]
call fcn.0040f7b5
push dword [ebp - 0x1c4]
call fcn.0040f7b5
push dword [ebp - 0x1ac]
call fcn.0040f7b5
push dword [ebp - 0x1a0]
call fcn.0040f7b5
push dword [ebp - 0x194]
call fcn.0040f7b5
push dword [ebp - 0x1b8]
call fcn.0040f7b5
push dword [ebp - 0xec]
call fcn.0040f7b5
push dword [ebp - 0x1fc]
call fcn.0040f7b5
add esp, 0x3c
mov eax, esi
jmp 0x4217c6
cmp dword [ebp - 0x104], edi
jne 0x420116
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x114], esp
push str.ExtractFolder
lea ecx, [ebp - 0x120]
push ecx
push eax
call fcn.0040fb89
lea eax, [ebp - 0xfc]
push eax
call fcn.0041e892
push eax
lea ecx, [ebp - 0x108]
call fcn.0040f120
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x114], esp
push str.SubFolder
lea ecx, [ebp - 0x120]
push ecx
push eax
call fcn.0040fb89
lea eax, [ebp - 0xfc]
push eax
call fcn.0041e892
push eax
lea ecx, [ebp - 0x148]
call fcn.0040f120
push dword [ebp - 0xfc]
call fcn.0040f7b5
mov dword [esp], str.ReturnAbort
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.0040fb89
push eax
lea ecx, [ebp - 0x1dc]
call fcn.0040f120
push dword [ebp - 0x160]
call fcn.0040f7b5
mov dword [esp], str.Title
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x280]
push eax
call fcn.0040fb89
cmp dword [ebp - 0x27c], edi
jne 0x4201b9
push 0x42f8e8
lea ecx, [ebp - 0x280]
call fcn.0040f238
push str.BeginPrompt
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x29c]
push eax
call fcn.0040fb89
push 0x42f8d0
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x2a8]
push eax
call fcn.0040fb89
push 0x42f8cc
push dword [ebp - 0x2a8]
call fcn.0040eb47
test al, al
je 0x420204
mov byte [ebp - 0x1ec], 0
push str.Directory
lea eax, [ebp - 0x120]
push eax
call fcn.0040fb54
cmp eax, edi
jl 0x420231
mov ecx, dword [ebp - 0x120]
mov eax, dword [ecx + eax*4]
add eax, 0xc
push eax
lea ecx, [ebp - 0x214]
call fcn.0040f120
cmp dword [ebp - 0x298], edi
je 0x420287
cmp byte [ebp - 0xcf], 0
jne 0x420287
push 0x24
push dword [ebp - 0x280]
push dword [ebp - 0x29c]
push edi
call dword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
je 0x420287
push dword [ebp - 0x2a8]
call fcn.0040f7b5
push dword [ebp - 0x29c]
call fcn.0040f7b5
push dword [ebp - 0x280]
call fcn.0040f7b5
add esp, 0xc
xor esi, esi
jmp 0x41ffce
push str.RunProgram
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.0040fb89
push eax
lea ecx, [ebp - 0x178]
call fcn.0040f120
push dword [ebp - 0xfc]
call fcn.0040f7b5
mov dword [esp], str.ExecuteFile
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.0040fb89
push eax
lea ecx, [ebp - 0x1b8]
call fcn.0040f120
push dword [ebp - 0x160]
call fcn.0040f7b5
mov dword [esp], str.ExecuteParameters
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0xdc]
push eax
call fcn.0040fb89
push eax
lea ecx, [ebp - 0x194]
call fcn.0040f120
push dword [ebp - 0xdc]
call fcn.0040f7b5
push dword [ebp - 0x2a8]
call fcn.0040f7b5
push dword [ebp - 0x29c]
call fcn.0040f7b5
push dword [ebp - 0x280]
call fcn.0040f7b5
push dword [ebp - 0x16c]
call fcn.0040f7b5
push dword [ebp - 0x268]
call fcn.0040f7b5
push dword [ebp - 0x1e8]
call fcn.0040f7b5
push dword [ebp - 0x244]
call fcn.0040f7b5
push dword [ebp - 0x238]
call fcn.0040f7b5
push dword [ebp - 0x184]
call fcn.0040f7b5
add esp, 0x28
lea ecx, [ebp - 0x120]
call fcn.0041eaea
xor edi, edi
jmp 0x420393
mov esi, dword [ebp - 0xf0]
lea ecx, [ebp - 0x138]
mov byte [ebp - 0x13c], 0
call fcn.0040efc9
lea ecx, [ebp - 0x208]
call fcn.0040efc9
lea eax, [ebp - 0x208]
push eax
call fcn.0041079c
sub esp, 0xc
lea eax, [ebp - 0x208]
mov ecx, esp
mov dword [ebp - 0x114], esp
push eax
call fcn.0040f08c
lea ecx, [ebp - 0x13c]
call fcn.00410987
cmp dword [ebp - 0x104], edi
je 0x4206f2
push 0x42ef7c
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push 1
push 1
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0x108]
call fcn.004011e9
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
push dword [ebp - 0xfc]
mov ebx, eax
neg ebx
sbb bl, bl
call fcn.0040f7b5
push dword [ebp - 0xdc]
call fcn.0040f7b5
inc bl
pop ecx
pop ecx
je 0x42044b
lea eax, [ebp - 0x108]
push eax
call fcn.0041069c
push 0x42f88c
lea ecx, [ebp - 0x12c]
call fcn.0040f010
push 2
push 1
lea eax, [ebp - 0x160]
push eax
lea ecx, [ebp - 0x108]
or esi, 0x3000
call fcn.004011e9
push dword [ebp - 0x12c]
push dword [eax]
call fcn.0040f61a
mov edi, 0x4000
mov ebx, 0x8000
test eax, eax
je 0x4204d4
push 0x42f884
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push 2
push 1
lea eax, [ebp - 0xfc]
or esi, edi
push eax
lea ecx, [ebp - 0x108]
or esi, ebx
call fcn.004011e9
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
mov byte [ebp - 0xcd], 0
test eax, eax
jne 0x4204db
mov byte [ebp - 0xcd], 1
test ebx, esi
je 0x4204f1
push dword [ebp - 0xfc]
and esi, 0xffff7fff
call fcn.0040f7b5
pop ecx
test edi, esi
je 0x420507
push dword [ebp - 0xdc]
and esi, 0xffffbfff
call fcn.0040f7b5
pop ecx
test esi, 0x2000
je 0x420521
push dword [ebp - 0x160]
and esi, 0xffffdfff
call fcn.0040f7b5
pop ecx
test esi, 0x1000
je 0x42053b
push dword [ebp - 0x12c]
and esi, 0xffffefff
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xcd], 0
je 0x42121e
push 0x42e368
lea ecx, [ebp - 0x12c]
call fcn.0040f010
mov eax, dword [ebp - 0x104]
push 1
or esi, 0x30000
dec eax
push eax
lea eax, [ebp - 0x160]
push eax
lea ecx, [ebp - 0x108]
call fcn.004011e9
push dword [ebp - 0x12c]
push dword [eax]
call fcn.0040f61a
mov edi, 0x40000
mov ebx, 0x80000
test eax, eax
je 0x4205dd
push 0x42f880
lea ecx, [ebp - 0xdc]
call fcn.0040f010
mov eax, dword [ebp - 0x104]
or esi, edi
push 1
or esi, ebx
dec eax
push eax
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0x108]
call fcn.004011e9
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
mov byte [ebp - 0xcd], 0
test eax, eax
jne 0x4205e4
mov byte [ebp - 0xcd], 1
test ebx, esi
je 0x4205fa
push dword [ebp - 0xfc]
and esi, 0xfff7ffff
call fcn.0040f7b5
pop ecx
test edi, esi
je 0x420610
push dword [ebp - 0xdc]
and esi, 0xfffbffff
call fcn.0040f7b5
pop ecx
test esi, 0x20000
je 0x42062a
push dword [ebp - 0x160]
and esi, 0xfffdffff
call fcn.0040f7b5
pop ecx
test esi, 0x10000
je 0x420644
push dword [ebp - 0x12c]
and esi, 0xfffeffff
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xcd], 0
je 0x420681
mov eax, dword [ebp - 0x104]
dec eax
push eax
push 0
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0x108]
call fcn.004011e9
push eax
lea ecx, [ebp - 0x108]
call fcn.0040f120
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
push 0x42e368
lea ecx, [ebp - 0x12c]
call fcn.0040f010
push 0x42f880
lea ecx, [ebp - 0xdc]
call fcn.0040f010
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0xdc]
push eax
lea ecx, [ebp - 0x108]
call fcn.0040f721
push dword [ebp - 0xdc]
call fcn.0040f7b5
push dword [ebp - 0x12c]
call fcn.0040f7b5
push ecx
lea eax, [ebp - 0x108]
mov ecx, esp
mov dword [ebp - 0x114], esp
push eax
call fcn.0040f08c
lea ecx, [ebp - 0x13c]
call fcn.00410987
xor edi, edi
mov ebx, 0x100000
cmp dword [ebp - 0x144], edi
je 0x42072d
push 0x42f974
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
or esi, ebx
push dword [ebp - 0x148]
call fcn.0040f61a
mov byte [ebp - 0xcd], 0
test eax, eax
jne 0x420734
mov byte [ebp - 0xcd], 1
test ebx, esi
je 0x42074a
push dword [ebp - 0xdc]
and esi, 0xffefffff
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xcd], 0
je 0x42077b
push 0x42f5e8
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0x13c]
call fcn.00410a31
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
jmp 0x420899
mov ebx, 0x200000
cmp dword [ebp - 0x144], edi
je 0x4207b6
push 0x42e360
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
or esi, ebx
push dword [ebp - 0x148]
call fcn.0040f61a
mov byte [ebp - 0xcd], 1
test eax, eax
jne 0x4207bd
mov byte [ebp - 0xcd], 0
test ebx, esi
je 0x4207d3
push dword [ebp - 0xdc]
and esi, 0xffdfffff
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xcd], 0
je 0x420834
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x108]
call fcn.0040f120
push 0x42e368
lea ecx, [ebp - 0x108]
call fcn.0040f2a8
lea eax, [ebp - 0x148]
push eax
lea ecx, [ebp - 0x108]
call fcn.0040f2eb
sub esp, 0xc
lea eax, [ebp - 0x108]
mov ecx, esp
mov dword [ebp - 0x114], esp
push eax
call fcn.0040f08c
lea ecx, [ebp - 0x13c]
call fcn.00410987
jmp 0x420899
mov ebx, 0x400000
cmp dword [ebp - 0x144], edi
je 0x42086f
push 0x42e360
lea ecx, [ebp - 0xdc]
call fcn.0040f010
push dword [ebp - 0xdc]
or esi, ebx
push dword [ebp - 0x148]
call fcn.0040f61a
mov byte [ebp - 0xcd], 1
test eax, eax
je 0x420876
mov byte [ebp - 0xcd], 0
test ebx, esi
je 0x42088c
push dword [ebp - 0xdc]
and esi, 0xffbfffff
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xcd], 0
je 0x4216f9
cmp byte [ebp - 0xde], 0
je 0x420ae5
push edi
sub esp, 0xc
lea eax, [ebp - 0x148]
mov ecx, esp
mov dword [ebp - 0x114], esp
push eax
call fcn.0040f08c
sub esp, 0xc
lea eax, [ebp - 0x138]
mov ecx, esp
mov dword [ebp - 0x114], esp
push eax
call fcn.0040f08c
lea eax, [ebp - 0x22c]
push eax
mov ecx, 0x438c10
call fcn.0041e472
push eax
lea ecx, [ebp - 0x220]
call fcn.0040f010
cmp dword [ebp - 0x21c], edi
jne 0x420930
push dword [ebp - 0x220]
call fcn.0040f7b5
push dword [ebp - 0x208]
call fcn.0040f7b5
pop ecx
pop ecx
lea ecx, [ebp - 0x13c]
call fcn.00410e08
push dword [ebp - 0x138]
call fcn.0040f7b5
pop ecx
xor esi, esi
jmp 0x42001e
push 0x42e368
lea ecx, [ebp - 0x12c]
call fcn.0040f010
mov eax, dword [ebp - 0x21c]
push 1
or esi, 0x1800000
dec eax
push eax
lea eax, [ebp - 0x160]
push eax
lea ecx, [ebp - 0x220]
call fcn.004011e9
push dword [ebp - 0x12c]
push dword [eax]
call fcn.0040f61a
mov edi, 0x2000000
mov ebx, 0x4000000
test eax, eax
je 0x4209c5
push 0x42f880
lea ecx, [ebp - 0xdc]
call fcn.0040f010
mov eax, dword [ebp - 0x21c]
or esi, edi
push 1
or esi, ebx
dec eax
push eax
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0x220]
call fcn.004011e9
push dword [ebp - 0xdc]
push dword [eax]
call fcn.0040f61a
mov byte [ebp - 0xde], 0
test eax, eax
jne 0x4209cc
mov byte [ebp - 0xde], 1
test ebx, esi
je 0x4209e2
push dword [ebp - 0xfc]
and esi, 0xfbffffff
call fcn.0040f7b5
pop ecx
test edi, esi
je 0x4209f8
push dword [ebp - 0xdc]
and esi, 0xfdffffff
call fcn.0040f7b5
pop ecx
test esi, 0x1000000
je 0x420a12
push dword [ebp - 0x160]
and esi, 0xfeffffff
call fcn.0040f7b5
pop ecx
test esi, 0x800000
je 0x420a26
push dword [ebp - 0x12c]
call fcn.0040f7b5
pop ecx
cmp byte [ebp - 0xde], 0
je 0x420a63
mov eax, dword [ebp - 0x21c]
dec eax
push eax
push 0
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0x220]
call fcn.004011e9
push eax
lea ecx, [ebp - 0x220]
call fcn.0040f120
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
push 0x42e368
lea ecx, [ebp - 0x12c]
call fcn.0040f010
push 0x42f880
lea ecx, [ebp - 0xdc]
call fcn.0040f010
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0xdc]
push eax
lea ecx, [ebp - 0x220]
call fcn.0040f721
push dword [ebp - 0xdc]
call fcn.0040f7b5
push dword [ebp - 0x12c]
call fcn.0040f7b5
push ecx
lea eax, [ebp - 0x220]
mov ecx, esp
mov dword [ebp - 0x114], esp
push eax
call fcn.0040f08c
lea ecx, [ebp - 0x13c]
call fcn.00410987
push dword [ebp - 0x220]
call fcn.0040f7b5
xor ebx, ebx
inc ebx
pop ecx
xor edi, edi
jmp 0x420ae8
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x13c]
call fcn.00410e2d
test al, al
jne 0x420b33
cmp byte [ebp - 0xcf], al
jne 0x420b09
push 0xf4246
call fcn.00402b3c
push dword [ebp - 0x208]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x13c]
call fcn.00410e08
push dword [ebp - 0x138]
call fcn.0040f7b5
pop ecx
mov esi, ebx
jmp 0x42001e
cmp byte [ebp - 0xdd], 0
jne 0x420b43
mov byte [ebp - 0x13c], 0
push 0x18
call fcn.0040f78a
pop ecx
cmp eax, edi
je 0x420b71
mov dword [eax + 4], edi
mov dword [eax], vtable.CCodecs.0
mov dword [eax + 8], edi
mov dword [eax + 0xc], edi
mov dword [eax + 0x10], edi
mov word [eax + 0x14], 0
mov esi, eax
mov dword [ebp - 0xf0], eax
jmp 0x420b79
xor esi, esi
mov dword [ebp - 0xf0], esi
cmp esi, edi
je 0x420b83
mov eax, dword [esi]
push esi
call dword [eax + 4]
mov ecx, esi
call fcn.00414c2b
test eax, eax
je 0x420ba1
cmp esi, edi
je 0x420b09
mov eax, dword [esi]
push esi
call dword [eax + 8]
jmp 0x420b09
lea eax, [ebp - 0x138]
push eax
lea ecx, [ebp - 0x250]
call fcn.0040f08c
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0xdd], 0
call fcn.0040efc9
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0xdd]
push eax
push dword [ebp - 0x1ec]
lea eax, [ebp - 0x250]
push eax
lea eax, [ebp - 0x1a0]
push eax
push esi
call fcn.0041de37
cmp eax, edi
je 0x4212b4
cmp byte [ebp - 0xcf], 0
jne 0x4211f6
mov edi, 0xc4
mov ebx, 0x43f
cmp eax, 1
je 0x420c1e
cmp byte [ebp - 0xdd], 0
je 0x420f04
mov si, word [0x4389a0]
cmp si, word [section..data]
je 0x420eee
and dword [ebp - 0xcc], 0
push edi
lea eax, [ebp - 0xc8]
push 0
push eax
call fcn.00421990
movzx eax, si
add esp, 0xc
cmp eax, ebx
jg 0x420d7f
je 0x420d75
sub eax, 0x401
cmp eax, 0x29
ja case.0x420c6a.1033
jmp dword [eax*4 + 0x4217d8]
mov eax, 0x283f
jmp 0x420ec8
mov eax, 0x2871
jmp 0x420ec8
mov eax, 0x28a3
jmp 0x420ec8
mov eax, 0x2925
jmp 0x420ec8
mov eax, 0x2835
jmp 0x420ec8
mov eax, 0x2853
jmp 0x420ec8
mov eax, 0x288f
jmp 0x420ec8
mov eax, 0x28d5
jmp 0x420ec8
mov eax, 0x28fd
jmp 0x420ec8
mov eax, 0x2939
jmp 0x420ec8
mov eax, 0x28b7
jmp 0x420ec8
mov eax, 0x28ad
jmp 0x420ec8
mov eax, 0x280d
jmp 0x420ec8
mov eax, 0x2885
jmp 0x420ec8
mov eax, 0x2817
jmp 0x420ec8
mov eax, 0x2821
jmp 0x420ec8
mov eax, 0x2975
jmp 0x420ec8
mov eax, 0x294d
jmp 0x420ec8
mov eax, 0x297f
jmp 0x420ec8
mov eax, 0x2989
jmp 0x420ec8
mov eax, 0x28f3
jmp 0x420ec8
mov eax, 0x2911
jmp 0x420ec8
mov eax, 0x296b
jmp 0x420ec8
mov eax, 0x292f
jmp 0x420ec8
mov eax, 0x2957
jmp 0x420ec8
mov eax, 0x29a7
jmp 0x420ec8
mov eax, 0x2a79
jmp 0x420ec8
mov ecx, 0x100c
cmp eax, ecx
jg 0x420e48
je case.0x420c6a.1036
mov ecx, 0x81a
cmp eax, ecx
jg 0x420dfa
je 0x420e80
add ecx, 0xfffffff2
cmp eax, ecx
jg 0x420dce
je case.0x420c6a.1036
sub eax, 0x804
je 0x420dc4
sub eax, 3
je case.0x420c6a.1031
dec eax
dec eax
je case.0x420c6a.1033
dec eax
jmp 0x420ebd
mov eax, 0x502b
jmp 0x420ec8
sub eax, 0x813
je case.0x420c6a.1043
dec eax
je case.0x420c6a.1044
dec eax
dec eax
jne case.0x420c6a.1033
mov eax, 0x28df
jmp 0x420ec8
mov eax, 0x28cb
jmp 0x420ec8
mov eax, 0x28c1
jmp 0x420ec8
sub eax, 0xc04
je case.0x420c6a.1028
sub eax, 3
je case.0x420c6a.1031
dec eax
dec eax
je case.0x420c6a.1033
dec eax
je case.0x420c6a.1034
sub eax, 0x10
je 0x420e80
sub eax, 0x3ea
je case.0x420c6a.1028
sub eax, 5
mov eax, 0x285d
jmp 0x420ec8
mov eax, 0x2849
jmp 0x420ec8
mov eax, 0x282b
jmp 0x420ec8
mov eax, 0x287b
jmp 0x420ec8
mov ecx, 0x280a
cmp eax, ecx
jg 0x420e8e
je case.0x420c6a.1034
sub eax, 0x101a
je case.0x420c6a.1050
sub eax, 0x7ef
je case.0x420c6a.1033
sub eax, 0x11
je 0x420e80
sub eax, 0x3ef
je case.0x420c6a.1033
sub eax, 0x11
je 0x420e80
sub eax, 0x3f0
je case.0x420c6a.1034
sub eax, 0x400
jmp 0x420ebd
mov eax, 0x7907
jmp 0x420ec8
mov eax, 0x2907
jmp 0x420ec8
cmp eax, 0x2c0a
je case.0x420c6a.1034
cmp eax, 0x300a
je case.0x420c6a.1034
cmp eax, 0x340a
je case.0x420c6a.1034
cmp eax, 0x380a
je case.0x420c6a.1034
cmp eax, 0x3c0a
je case.0x420c6a.1034
cmp eax, 0x400a
je case.0x420c6a.1034
cmp eax, 0x500a
jne case.0x420c6a.1033
mov eax, 0x2867
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push eax
push 0
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0x25c]
call fcn.0040f0ba
jmp 0x420eff
lea eax, [ebp - 0x25c]
push eax
push 0x285d
call fcn.00412624
mov eax, 0x80004005
cmp eax, 0x80004004
je 0x421249
cmp dword [ebp - 0x258], 0
je 0x4211f6
xor esi, esi
push edi
lea eax, [ebp - 0xc8]
push esi
push eax
mov dword [ebp - 0xcc], esi
call fcn.00421990
movzx eax, word [0x4389a0]
add esp, 0xc
cmp eax, ebx
jg 0x42106d
je 0x421063
sub eax, 0x401
cmp eax, 0x29
ja case.0x420f58.1033
jmp dword [eax*4 + 0x421880]
mov eax, 0x283e
jmp 0x4211b6
mov eax, 0x2870
jmp 0x4211b6
mov eax, 0x28a2
jmp 0x4211b6
mov eax, 0x2924
jmp 0x4211b6
mov eax, 0x2834
jmp 0x4211b6
mov eax, 0x2852
jmp 0x4211b6
mov eax, 0x288e
jmp 0x4211b6
mov eax, 0x28d4
jmp 0x4211b6
mov eax, 0x28fc
jmp 0x4211b6
mov eax, 0x2938
jmp 0x4211b6
mov eax, 0x28b6
jmp 0x4211b6
mov eax, 0x28ac
jmp 0x4211b6
mov eax, 0x280c
jmp 0x4211b6
mov eax, 0x2884
jmp 0x4211b6
mov eax, 0x2816
jmp 0x4211b6
mov eax, 0x2820
jmp 0x4211b6
mov eax, 0x2974
jmp 0x4211b6
mov eax, 0x294c
jmp 0x4211b6
mov eax, 0x297e
jmp 0x4211b6
mov eax, 0x2988
jmp 0x4211b6
mov eax, 0x28f2
jmp 0x4211b6
mov eax, 0x2910
jmp 0x4211b6
mov eax, 0x296a
jmp 0x4211b6
mov eax, 0x292e
jmp 0x4211b6
mov eax, 0x2956
jmp 0x4211b6
mov eax, 0x29a6
jmp 0x4211b6
mov eax, 0x2a78
jmp 0x4211b6
mov ecx, 0x100c
cmp eax, ecx
jg 0x421136
je case.0x420f58.1036
mov ecx, 0x81a
cmp eax, ecx
jg 0x4210e8
je 0x42116e
add ecx, 0xfffffff2
cmp eax, ecx
jg 0x4210bc
je case.0x420f58.1036
sub eax, 0x804
je 0x4210b2
sub eax, 3
je case.0x420f58.1031
dec eax
dec eax
je case.0x420f58.1033
dec eax
jmp 0x4211ab
mov eax, 0x502a
jmp 0x4211b6
sub eax, 0x813
je case.0x420f58.1043
dec eax
je case.0x420f58.1044
dec eax
dec eax
jne case.0x420f58.1033
mov eax, 0x28de
jmp 0x4211b6
mov eax, 0x28ca
jmp 0x4211b6
mov eax, 0x28c0
jmp 0x4211b6
sub eax, 0xc04
je case.0x420f58.1028
sub eax, 3
je case.0x420f58.1031
dec eax
dec eax
je case.0x420f58.1033
dec eax
je case.0x420f58.1034
sub eax, 0x10
je 0x42116e
sub eax, 0x3ea
je case.0x420f58.1028
sub eax, 5
mov eax, 0x285c
jmp 0x4211b6
mov eax, 0x2848
jmp 0x4211b6
mov eax, 0x282a
jmp 0x4211b6
mov eax, 0x287a
jmp 0x4211b6
mov ecx, 0x280a
cmp eax, ecx
jg 0x42117c
je case.0x420f58.1034
sub eax, 0x101a
je case.0x420f58.1050
sub eax, 0x7ef
je case.0x420f58.1033
sub eax, 0x11
je 0x42116e
sub eax, 0x3ef
je case.0x420f58.1033
sub eax, 0x11
je 0x42116e
sub eax, 0x3f0
je case.0x420f58.1034
sub eax, 0x400
jmp 0x4211ab
mov eax, 0x7906
jmp 0x4211b6
mov eax, 0x2906
jmp 0x4211b6
cmp eax, 0x2c0a
je case.0x420f58.1034
cmp eax, 0x300a
je case.0x420f58.1034
cmp eax, 0x340a
je case.0x420f58.1034
cmp eax, 0x380a
je case.0x420f58.1034
cmp eax, 0x3c0a
je case.0x420f58.1034
cmp eax, 0x400a
je case.0x420f58.1034
cmp eax, 0x500a
jne case.0x420f58.1033
mov eax, 0x2866
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push eax
push esi
call dword [sym.imp.USER32.dll_LoadStringW]
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0xfc]
call fcn.0040f010
push 0x10
push dword [eax]
push dword [ebp - 0x25c]
push esi
call dword [sym.imp.USER32.dll_MessageBoxW]
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
push dword [ebp - 0x25c]
call fcn.0040f7b5
push dword [ebp - 0x250]
call fcn.0040f7b5
mov eax, dword [ebp - 0xf0]
pop ecx
pop ecx
test eax, eax
je 0x42121e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [ebp - 0x208]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x13c]
call fcn.00410e08
push dword [ebp - 0x138]
call fcn.0040f7b5
xor esi, esi
pop ecx
inc esi
jmp 0x42001e
push str.True
push dword [ebp - 0x1dc]
call fcn.00421f6a
pop ecx
pop ecx
test eax, eax
jne 0x4211f6
push dword [ebp - 0x25c]
call fcn.0040f7b5
push dword [ebp - 0x250]
call fcn.0040f7b5
mov eax, dword [ebp - 0xf0]
pop ecx
pop ecx
test eax, eax
je 0x421287
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [ebp - 0x208]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x13c]
call fcn.00410e08
push dword [ebp - 0x138]
call fcn.0040f7b5
pop ecx
mov esi, 0x642
jmp 0x42001e
push dword [ebp - 0x25c]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x290]
call fcn.0040efc9
lea eax, [ebp - 0x290]
push eax
mov byte [ebp - 0x284], 1
call fcn.0041069c
push dword [ebp - 0x250]
call fcn.00410652
test al, al
jne 0x421309
lea ecx, [ebp - 0x290]
call fcn.0041e3c8
push dword [ebp - 0x250]
call fcn.0040f7b5
pop ecx
jmp 0x420b8e
cmp dword [ebp - 0x1b4], edi
je 0x421428
lea eax, [ebp - 0x1b8]
push eax
lea eax, [ebp - 0x12c]
push eax
call fcn.0041e3ac
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x2e4], 0x3c
mov dword [ebp - 0x2e0], 0x140
mov dword [ebp - 0x2dc], edi
mov dword [ebp - 0x2d8], edi
mov dword [ebp - 0x2d4], eax
cmp dword [ebp - 0xe8], edi
je 0x421379
lea ecx, [ebp - 0x194]
call fcn.0040f69e
lea eax, [ebp - 0xec]
push eax
lea ecx, [ebp - 0x194]
call fcn.0040f2eb
lea eax, [ebp - 0x194]
push eax
lea eax, [ebp - 0x274]
push eax
call fcn.0041e3ac
mov eax, dword [ebp - 0x270]
neg eax
sbb eax, eax
and eax, dword [ebp - 0x274]
mov dword [ebp - 0x2cc], edi
mov dword [ebp - 0x2d0], eax
lea eax, [ebp - 0x2e4]
push eax
mov dword [ebp - 0x2c8], ebx
mov dword [ebp - 0x2ac], edi
call dword [sym.imp.SHELL32.dll_ShellExecuteExA]
cmp dword [ebp - 0x2c4], 0x20
ja 0x4213fa
cmp byte [ebp - 0xcf], 0
jne 0x4213dd
push 0xf4247
call fcn.00402b3c
push dword [ebp - 0x274]
call fcn.0040f7b5
push dword [ebp - 0x12c]
call fcn.0040f7b5
pop ecx
pop ecx
jmp 0x4212ed
push dword [ebp - 0x2ac]
call fcn.0041ede5
push dword [ebp - 0x274]
mov dword [ebp - 0x188], eax
call fcn.0040f7b5
push dword [ebp - 0x12c]
call fcn.0040f7b5
pop ecx
pop ecx
jmp 0x421603
cmp dword [ebp - 0x174], edi
je 0x4215e1
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x12c]
call fcn.0040f08c
lea eax, [ebp - 0x12c]
push eax
call fcn.00411a9a
push str.__T_
lea ecx, [ebp - 0x274]
call fcn.0040f010
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x274]
push eax
lea ecx, [ebp - 0x178]
call fcn.0040f721
push dword [ebp - 0x274]
call fcn.0040f7b5
push dword [ebp - 0x12c]
call fcn.0040f7b5
pop ecx
pop ecx
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xfc]
call fcn.0040f08c
push 0x42f860
lea ecx, [ebp - 0x160]
call fcn.0040f010
lea eax, [ebp - 0x250]
push eax
lea eax, [ebp - 0x160]
push eax
lea ecx, [ebp - 0x178]
call fcn.0040f721
push dword [ebp - 0x160]
call fcn.0040f7b5
pop ecx
cmp dword [ebp - 0xe8], edi
je 0x4214ff
lea ecx, [ebp - 0x178]
call fcn.0040f696
lea eax, [ebp - 0xec]
push eax
lea ecx, [ebp - 0x178]
call fcn.0040f2eb
xor eax, eax
mov word [ebp - 0x306], ax
lea eax, [ebp - 0x178]
push eax
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x160]
push eax
mov dword [ebp - 0x338], 0x44
mov dword [ebp - 0x334], edi
mov dword [ebp - 0x330], edi
mov dword [ebp - 0x32c], edi
mov dword [ebp - 0x30c], edi
mov dword [ebp - 0x304], edi
call fcn.0040ef6f
push eax
lea eax, [ebp - 0xdc]
push eax
call fcn.0041e3ac
push dword [ebp - 0x160]
call fcn.0040f7b5
pop ecx
lea eax, [ebp - 0x2f4]
push eax
lea eax, [ebp - 0x338]
push eax
push edi
push edi
push edi
push edi
push edi
push edi
push dword [ebp - 0xdc]
push edi
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
jne 0x4215ac
cmp byte [ebp - 0xcf], al
jne 0x421596
push edi
call fcn.00414367
push dword [ebp - 0xdc]
call fcn.0040f7b5
push dword [ebp - 0xfc]
jmp 0x4213ee
push dword [ebp - 0x2f0]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x2f4]
call fcn.0041ede5
push dword [ebp - 0xdc]
mov dword [ebp - 0x188], eax
call fcn.0040f7b5
push dword [ebp - 0xfc]
call fcn.0040f7b5
pop ecx
pop ecx
mov eax, dword [ebp - 0x110]
sub eax, edi
je 0x4215fd
dec eax
dec eax
jne 0x421603
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x188], eax
jmp 0x421603
mov dword [ebp - 0x188], edi
lea ecx, [ebp - 0x290]
call fcn.0041e3c8
push dword [ebp - 0x250]
call fcn.0040f7b5
pop ecx
cmp esi, edi
je 0x421624
mov eax, dword [esi]
push esi
call dword [eax + 8]
push dword [ebp - 0x208]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x13c]
call fcn.00410e08
push dword [ebp - 0x138]
call fcn.0040f7b5
push dword [ebp - 0x22c]
call fcn.0040f7b5
push dword [ebp - 0x178]
call fcn.0040f7b5
push dword [ebp - 0x214]
call fcn.0040f7b5
push dword [ebp - 0x1d0]
call fcn.0040f7b5
push dword [ebp - 0x1dc]
call fcn.0040f7b5
push dword [ebp - 0x148]
call fcn.0040f7b5
push dword [ebp - 0x108]
call fcn.0040f7b5
push dword [ebp - 0x154]
call fcn.0040f7b5
push dword [ebp - 0x1c4]
call fcn.0040f7b5
push dword [ebp - 0x1ac]
call fcn.0040f7b5
push dword [ebp - 0x1a0]
call fcn.0040f7b5
push dword [ebp - 0x194]
call fcn.0040f7b5
push dword [ebp - 0x1b8]
call fcn.0040f7b5
push dword [ebp - 0xec]
call fcn.0040f7b5
push dword [ebp - 0x1fc]
call fcn.0040f7b5
mov eax, dword [ebp - 0x188]
add esp, 0x40
jmp 0x4217c6
push dword [ebp - 0x208]
call fcn.0040f7b5
pop ecx
lea ecx, [ebp - 0x13c]
call fcn.00410e08
push dword [ebp - 0x138]
call fcn.0040f7b5
push dword [ebp - 0x22c]
call fcn.0040f7b5
push dword [ebp - 0x178]
call fcn.0040f7b5
push dword [ebp - 0x214]
call fcn.0040f7b5
push dword [ebp - 0x1d0]
call fcn.0040f7b5
push dword [ebp - 0x1dc]
call fcn.0040f7b5
push dword [ebp - 0x148]
call fcn.0040f7b5
push dword [ebp - 0x108]
call fcn.0040f7b5
push dword [ebp - 0x154]
call fcn.0040f7b5
push dword [ebp - 0x1c4]
call fcn.0040f7b5
push dword [ebp - 0x1ac]
call fcn.0040f7b5
push dword [ebp - 0x1a0]
call fcn.0040f7b5
push dword [ebp - 0x194]
call fcn.0040f7b5
push dword [ebp - 0x1b8]
call fcn.0040f7b5
push dword [ebp - 0xec]
call fcn.0040f7b5
push dword [ebp - 0x1fc]
call fcn.0040f7b5
add esp, 0x40
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00421a0a
leave
ret 0x10