Function at 0x404250
Capabilities:
Contain obfuscated stackstrings
Delete file
Parse pe header

Disassembly:
push 0xffffffffffffffff
push 0x42f29a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2bc
push ebx
push ebp
push esi
push edi
lea eax, [esp + 0x27c]
push 0x43cf40
push eax
call fcn.0041a2b0
add esp, 8
lea ecx, [esp + 0x5b]
push eax
push ecx
push str.args
lea ecx, [esp + 0x268]
mov dword [esp + 0x2e0], 0
call fcn.0040a5a0
push eax
mov byte [esp + 0x2dc], 1
call fcn.00416130
lea edx, [esp + 0x244]
push eax
push edx
call fcn.004165f0
add esp, 8
push eax
lea eax, [esp + 0x5e]
push eax
push str.isadm
lea ecx, [esp + 0x230]
mov byte [esp + 0x2e8], 2
call fcn.0040a5a0
mov ecx, dword [0x43d990]
push eax
lea edx, [esp + 0x20c]
push ecx
push edx
mov byte [esp + 0x2ec], 3
call fcn.004165f0
add esp, 8
push eax
lea eax, [esp + 0x67]
push eax
push str.first
lea ecx, [esp + 0x1f8]
mov byte [esp + 0x2f0], 4
call fcn.0040a5a0
push eax
lea ecx, [esp + 0x72]
push 0x43d900
push ecx
push str.iv
lea ecx, [esp + 0x1e0]
mov byte [esp + 0x2f8], 5
call fcn.0040a5a0
push eax
lea edx, [esp + 0x74]
push 0x43d8f0
push edx
push str.wb
lea ecx, [esp + 0x1c8]
mov byte [esp + 0x300], 6
call fcn.0040a5a0
push eax
lea eax, [esp + 0x80]
push 0x43d8e0
push eax
push str.wv
lea ecx, [esp + 0x1b0]
mov byte [esp + 0x308], 7
call fcn.0040a5a0
mov byte [esp + 0x300], 8
push eax
lea ecx, [esp + 0x86]
push 0x43d8d0
push ecx
push str.ov
lea ecx, [esp + 0x198]
call fcn.0040a5a0
lea edx, [esp + 0x85]
push eax
push edx
push str.20130731012013073101
lea ecx, [esp + 0x17c]
mov byte [esp + 0x314], 9
call fcn.0040a5a0
push eax
lea eax, [esp + 0x8c]
push eax
push str.ve
lea ecx, [esp + 0x160]
mov byte [esp + 0x318], 0xa
call fcn.0040a5a0
push eax
lea ecx, [esp + 0x95]
push 0x43d960
push ecx
push str.mc
lea ecx, [esp + 0x148]
mov byte [esp + 0x320], 0xb
call fcn.0040a5a0
push eax
lea edx, [esp + 0x9f]
push 0x43e798
push edx
push str.pt
lea ecx, [esp + 0x130]
mov byte [esp + 0x328], 0xc
call fcn.0040a5a0
push eax
lea eax, [esp + 0xa9]
push eax
push str._kindinstall
lea ecx, [esp + 0x114]
mov byte [esp + 0x32c], 0xd
call fcn.0040a5a0
push eax
lea edx, [esp + 0xa2]
sub esp, 0x10
mov byte [esp + 0x338], 0xe
mov ecx, esp
mov dword [esp + 0x80], esp
push edx
push str.EO___RwNPRvOfRvOka0av2qaUSoIjKsIjqvGQGDVU_tGQGDa_irWD60_0OeVfRvOkam_jOsa0K_VTFr_Det
call fcn.0040a5a0
lea eax, [esp + 0x100]
push eax
call fcn.00417880
add esp, 0x14
lea ecx, [esp + 0x200]
push eax
push ecx
mov byte [esp + 0x330], 0xf
call fcn.0040baa0
add esp, 0xc
lea edx, [esp + 0x27c]
push eax
push edx
mov byte [esp + 0x32c], 0x10
call fcn.0040baa0
add esp, 0xc
push eax
lea eax, [esp + 0x1dc]
mov byte [esp + 0x324], 0x11
push eax
call fcn.0040baa0
add esp, 0xc
lea ecx, [esp + 0x2b4]
push eax
push ecx
mov byte [esp + 0x324], 0x12
call fcn.0040baa0
add esp, 0xc
lea edx, [esp + 0x1b0]
push eax
push edx
mov byte [esp + 0x320], 0x13
call fcn.0040baa0
add esp, 0xc
push eax
lea eax, [esp + 0x250]
push eax
mov byte [esp + 0x31c], 0x14
call fcn.0040baa0
add esp, 0xc
lea ecx, [esp + 0x188]
push eax
push ecx
mov byte [esp + 0x318], 0x15
call fcn.0040baa0
add esp, 0xc
lea edx, [esp + 0x2c4]
push eax
push edx
mov byte [esp + 0x314], 0x16
call fcn.0040baa0
add esp, 0xc
push eax
lea eax, [esp + 0x164]
push eax
mov byte [esp + 0x310], 0x17
call fcn.0040baa0
add esp, 0xc
lea ecx, [esp + 0x21c]
push eax
push ecx
mov byte [esp + 0x30c], 0x18
call fcn.0040baa0
add esp, 0xc
lea edx, [esp + 0x138]
push eax
push edx
mov byte [esp + 0x308], 0x19
call fcn.0040baa0
add esp, 0xc
push eax
lea eax, [esp + 0x278]
push eax
mov byte [esp + 0x304], 0x1a
call fcn.0040baa0
add esp, 0xc
lea ecx, [esp + 0x110]
push eax
push ecx
mov byte [esp + 0x300], 0x1b
call fcn.0040baa0
add esp, 0xc
lea edx, [esp + 0x1ec]
push eax
push edx
mov byte [esp + 0x2fc], 0x1c
call fcn.0040baa0
add esp, 0xc
mov byte [esp + 0x2f0], 0x1d
push eax
lea eax, [esp + 0xac]
push eax
call fcn.0040baa0
add esp, 0xc
lea ecx, [esp + 0x2c4]
push eax
push ecx
mov byte [esp + 0x2f4], 0x1e
call fcn.0040baa0
add esp, 0xc
lea edx, [esp + 0xc0]
push eax
push edx
mov byte [esp + 0x2f0], 0x1f
call fcn.0040baa0
add esp, 0xc
push eax
lea eax, [esp + 0x2d0]
push eax
mov byte [esp + 0x2ec], 0x20
call fcn.0040baa0
add esp, 0xc
lea ecx, [esp + 0x2a8]
push eax
push ecx
mov byte [esp + 0x2e8], 0x21
call fcn.0040baa0
add esp, 0xc
lea edx, [esp + 0xd4]
push eax
push edx
mov byte [esp + 0x2e4], 0x22
call fcn.0040baa0
add esp, 0xc
push eax
lea eax, [esp + 0x84]
push eax
mov byte [esp + 0x2e0], 0x23
call fcn.0040baa0
add esp, 0xc
push 1
lea ecx, [esp + 0xd0]
mov byte [esp + 0x2d8], 0x48
call fcn.0040aae0
push 1
lea ecx, [esp + 0x2a0]
mov byte [esp + 0x2d8], 0x47
call fcn.0040aae0
push 1
lea ecx, [esp + 0x2c0]
mov byte [esp + 0x2d8], 0x46
call fcn.0040aae0
push 1
lea ecx, [esp + 0xb0]
mov byte [esp + 0x2d8], 0x45
call fcn.0040aae0
push 1
lea ecx, [esp + 0x2b0]
mov byte [esp + 0x2d8], 0x44
call fcn.0040aae0
push 1
lea ecx, [esp + 0x90]
mov byte [esp + 0x2d8], 0x43
call fcn.0040aae0
push 1
lea ecx, [esp + 0x1d0]
mov byte [esp + 0x2d8], 0x42
call fcn.0040aae0
push 1
lea ecx, [esp + 0xf0]
mov byte [esp + 0x2d8], 0x41
call fcn.0040aae0
push 1
lea ecx, [esp + 0x250]
mov byte [esp + 0x2d8], 0x40
call fcn.0040aae0
push 1
lea ecx, [esp + 0x110]
mov byte [esp + 0x2d8], 0x3f
call fcn.0040aae0
push 1
lea ecx, [esp + 0x1f0]
mov byte [esp + 0x2d8], 0x3e
call fcn.0040aae0
push 1
lea ecx, [esp + 0x130]
mov byte [esp + 0x2d8], 0x3d
call fcn.0040aae0
push 1
lea ecx, [esp + 0x290]
mov byte [esp + 0x2d8], 0x3c
call fcn.0040aae0
push 1
lea ecx, [esp + 0x150]
mov byte [esp + 0x2d8], 0x3b
call fcn.0040aae0
push 1
lea ecx, [esp + 0x210]
mov byte [esp + 0x2d8], 0x3a
call fcn.0040aae0
push 1
lea ecx, [esp + 0x170]
mov byte [esp + 0x2d8], 0x39
call fcn.0040aae0
push 1
lea ecx, [esp + 0x270]
mov byte [esp + 0x2d8], 0x38
call fcn.0040aae0
push 1
lea ecx, [esp + 0x190]
mov byte [esp + 0x2d8], 0x37
call fcn.0040aae0
push 1
lea ecx, [esp + 0x230]
mov byte [esp + 0x2d8], 0x36
call fcn.0040aae0
mov byte [esp + 0x2d4], 0x35
push 1
lea ecx, [esp + 0x1b0]
call fcn.0040aae0
push 1
lea ecx, [esp + 0xa0]
mov byte [esp + 0x2d8], 0x34
call fcn.0040aae0
push 1
lea ecx, [esp + 0xc0]
mov byte [esp + 0x2d8], 0x33
call fcn.0040aae0
push 1
lea ecx, [esp + 0xe0]
mov byte [esp + 0x2d8], 0x32
call fcn.0040aae0
push 1
lea ecx, [esp + 0x100]
mov byte [esp + 0x2d8], 0x31
call fcn.0040aae0
push 1
lea ecx, [esp + 0x120]
mov byte [esp + 0x2d8], 0x30
call fcn.0040aae0
push 1
lea ecx, [esp + 0x140]
mov byte [esp + 0x2d8], 0x2f
call fcn.0040aae0
push 1
lea ecx, [esp + 0x160]
mov byte [esp + 0x2d8], 0x2e
call fcn.0040aae0
push 1
lea ecx, [esp + 0x180]
mov byte [esp + 0x2d8], 0x2d
call fcn.0040aae0
push 1
lea ecx, [esp + 0x1a0]
mov byte [esp + 0x2d8], 0x2c
call fcn.0040aae0
push 1
lea ecx, [esp + 0x1c0]
mov byte [esp + 0x2d8], 0x2b
call fcn.0040aae0
push 1
lea ecx, [esp + 0x1e0]
mov byte [esp + 0x2d8], 0x2a
call fcn.0040aae0
push 1
lea ecx, [esp + 0x200]
mov byte [esp + 0x2d8], 0x29
call fcn.0040aae0
push 1
lea ecx, [esp + 0x220]
mov byte [esp + 0x2d8], 0x28
call fcn.0040aae0
push 1
lea ecx, [esp + 0x240]
mov byte [esp + 0x2d8], 0x27
call fcn.0040aae0
push 1
lea ecx, [esp + 0x260]
mov byte [esp + 0x2d8], 0x26
call fcn.0040aae0
push 1
lea ecx, [esp + 0x280]
mov byte [esp + 0x2d8], 0x25
call fcn.0040aae0
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x2c], esp
push ecx
call fcn.00415810
add esp, 4
lea edx, [esp + 0x4c]
push edx
call fcn.00418640
add esp, 0x14
mov eax, dword [esp + 0x40]
mov byte [esp + 0x2d4], 0x49
test eax, eax
jne 0x4049fd
mov eax, 0x4313b4
mov ecx, dword [esp + 0x80]
test ecx, ecx
jne 0x404a0d
mov ecx, 0x4313b4
push 0
push eax
push ecx
call fcn.0041a1e0
add esp, 0xc
test eax, eax
je 0x404b0c
mov al, byte [esp + 0x4e]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x2c], esp
push 0
mov ecx, esi
mov byte [esi], al
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x43e7b0
mov ecx, esi
call fcn.0040ad80
sub esp, 0x10
lea edx, [esp + 0x6f]
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
push 0x438308
mov byte [esp + 0x2fc], 0x4a
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7d]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
push 0x438304
mov byte [esp + 0x30c], 0x4b
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
mov byte [esp + 0x318], 0x4c
call fcn.0040a480
lea eax, [esp + 0xac]
mov byte [esp + 0x314], 0x49
push eax
call fcn.00415580
add esp, 0x44
mov edi, 0x438300
or ecx, 0xffffffff
xor eax, eax
mov bl, 0x4d
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [esp + 0x2d4], bl
push ecx
mov ecx, dword [esp + 0x78]
push 0x438300
push ecx
push eax
lea ecx, [esp + 0x7c]
call fcn.0040c0c0
test eax, eax
je 0x404b3f
push 1
lea ecx, [esp + 0x70]
mov byte [esp + 0x2d8], 0x49
call fcn.0040aae0
push 1
lea ecx, [esp + 0x40]
mov byte [esp + 0x2d8], 0x25
call fcn.0040aae0
push 1
lea ecx, [esp + 0x80]
mov dword [esp + 0x2d8], 0xffffffff
call fcn.0040aae0
xor eax, eax
jmp 0x407016
mov dl, byte [esp + 0x4d]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
mov ecx, ebp
push esi
mov dword [esp + 0x2c], esi
call fcn.0040af60
test al, al
je 0x404b9d
mov edi, dword [ebp + 4]
mov ecx, esi
mov eax, ecx
mov esi, 0x43e7b0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
push ecx
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea edx, [esp + 0x33]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push 0x4382fc
mov byte [esp + 0x2fc], 0x4e
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x42]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.CONFIG
mov byte [esp + 0x30c], 0x4f
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0x50
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x51
push ecx
push 0
push eax
mov ecx, 0x43d15c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x404c98
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push 0x4381bc
mov byte [esp + 0x2fc], 0x52
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x53
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x54
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d1bc
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x55
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x404d93
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push 0x43815c
mov byte [esp + 0x2fc], 0x56
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x57
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x58
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d1cc
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x59
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x404e8e
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.wdate
mov byte [esp + 0x2fc], 0x5a
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x5b
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x5c
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d1dc
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x5d
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x404f89
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.wtime
mov byte [esp + 0x2fc], 0x5e
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x5f
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x60
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d1ec
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x61
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x4382d8
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x405084
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x4382d8
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.reinstgap
mov byte [esp + 0x2fc], 0x62
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x63
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x64
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d1fc
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x65
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x438124
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x40517f
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x438124
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.instonlyone
mov byte [esp + 0x2fc], 0x66
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x67
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x68
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d0ec
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x69
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x40527a
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.useagreeurl
mov byte [esp + 0x2fc], 0x6a
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x6b
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x6c
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d11c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x6d
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d11c
push eax
call fcn.004121b0
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x6e
push ecx
push 0
push eax
mov ecx, 0x43d11c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x4053b5
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.instdataurl
mov byte [esp + 0x2fc], 0x6f
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x70
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x71
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d0b8
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x72
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d0b8
push eax
call fcn.004121b0
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x73
push ecx
push 0
push eax
mov ecx, 0x43d0b8
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x4054f0
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push 0x4382a4
mov byte [esp + 0x2fc], 0x74
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x75
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x76
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d12c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x77
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d12c
push eax
call fcn.004121b0
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x78
push ecx
push 0
push eax
mov ecx, 0x43d12c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x40562b
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.doafter
mov byte [esp + 0x2fc], 0x79
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x7a
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x7b
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d20c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x7c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d20c
push eax
call fcn.004121b0
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x7d
push ecx
push 0
push eax
mov ecx, 0x43d20c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x405766
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.doafterarg
mov byte [esp + 0x2fc], 0x7e
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x7f
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x80
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d21c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x81
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d21c
push eax
call fcn.004121b0
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x82
push ecx
push 0
push eax
mov ecx, 0x43d21c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x4058a1
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.delcontrolname
mov byte [esp + 0x2fc], 0x83
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x84
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x85
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d0fc
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x86
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d0fc
push eax
call fcn.0041a580
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x87
push ecx
push 0
push eax
mov ecx, 0x43d0fc
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x4059dc
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push 0x43827c
mov byte [esp + 0x2fc], 0x88
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x89
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x8a
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d54c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x8b
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d54c
push eax
call fcn.004121b0
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x8c
push ecx
push 0
push eax
mov ecx, 0x43d54c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x438278
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x405b17
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x438278
mov edx, ecx
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push 0x438274
mov byte [esp + 0x2fc], 0x8d
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x8e
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x8f
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d22c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x90
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
mov ecx, ebp
push esi
mov dword [esp + 0x2c], esi
call fcn.0040af60
test al, al
je 0x405c12
mov edi, dword [ebp + 4]
mov ecx, esi
mov edx, ecx
mov esi, 0x43e7b0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov eax, edx
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
mov ecx, ebp
call fcn.0040af40
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.srvfilename
mov byte [esp + 0x2fc], 0x91
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0x92
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0x93
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0x94
push ecx
push 0
push eax
mov ecx, 0x43d23c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x405d11
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [ebp + 8], eax
mov ebp, dword [ebp + 4]
add ebp, eax
mov byte [ebp], 0
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.srvurl
mov byte [esp + 0x2fc], 0x95
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x96
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x97
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d24c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x98
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x405e10
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [ebp + 8], eax
mov ebp, dword [ebp + 4]
add ebp, eax
mov byte [ebp], 0
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.srvkind
mov byte [esp + 0x2fc], 0x99
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x9a
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x9b
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d25c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0x9c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov al, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], al
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x405f0f
mov eax, dword [esp + 0x24]
mov edi, dword [ebp + 4]
mov ecx, eax
mov esi, 0x43e7b0
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [ebp + 8], eax
mov ebp, dword [ebp + 4]
add ebp, eax
mov byte [ebp], 0
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.srvname
mov byte [esp + 0x2fc], 0x9d
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0x9e
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0x9f
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d26c
push edx
push 0
push eax
mov byte [esp + 0x2e0], 0xa0
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d26c
push eax
call fcn.0041a580
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xa1
push ecx
push 0
push eax
mov ecx, 0x43d26c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x12]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push 0
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x406051
mov ecx, dword [esp + 0x24]
mov edi, dword [ebp + 4]
lea eax, [ebp + 4]
mov edx, ecx
mov esi, 0x43e7b0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x24]
mov dword [ebp + 8], ecx
mov eax, dword [eax]
add eax, ecx
mov byte [eax], 0
sub esp, 0x10
lea eax, [esp + 0x5b]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.srvdesc
mov byte [esp + 0x2fc], 0xa2
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x4b]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0xa3
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0xa4
call fcn.0040a480
lea ecx, [esp + 0x9c]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
xor esi, esi
push edx
push esi
push eax
mov ecx, 0x43d27c
mov byte [esp + 0x2e0], 0xa5
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x60]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
lea eax, [esp + 0x28]
push 0x43d27c
push eax
call fcn.0041a580
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xa6
push ecx
push esi
push eax
mov ecx, 0x43d27c
call fcn.0040a8e0
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2d8], bl
call fcn.0040aae0
mov dl, byte [esp + 0x1b]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push esi
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x43e7b0
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x28], ecx
push ecx
mov ecx, ebp
call fcn.0040af60
test al, al
je 0x40619d
mov edx, dword [esp + 0x24]
lea eax, [ebp + 4]
mov dword [esp + 0x2c], eax
mov ecx, edx
mov edi, dword [eax]
mov eax, ecx
mov esi, 0x43e7b0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [ebp + 8], edx
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx]
mov byte [eax + edx], 0
add eax, edx
xor esi, esi
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.srvlocal
mov byte [esp + 0x2fc], 0xa7
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xa8
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xa9
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xaa
push ecx
push esi
push eax
mov ecx, 0x43d28c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x406252
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x406249
cmp cl, 0xff
je 0x406249
dec cl
mov byte [eax], cl
jmp 0x406252
push eax
call fcn.00420ca8
add esp, 4
mov dl, byte [esp + 0x1b]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
push esi
mov ecx, ebp
mov byte [ebp], dl
call fcn.0040aae0
mov edi, 0x438278
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
mov ecx, ebp
push edi
mov dword [esp + 0x34], edi
call fcn.0040af60
test al, al
je 0x4062ba
mov edx, dword [ebp + 4]
lea eax, [ebp + 4]
mov ecx, edi
mov edi, edx
mov edx, ecx
mov esi, 0x438278
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x2c]
mov dword [ebp + 8], ecx
mov eax, dword [eax]
add eax, ecx
xor esi, esi
mov byte [eax], 0
sub esp, 0x10
lea eax, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push 0x438238
mov byte [esp + 0x2fc], 0xab
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0xac
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0xad
call fcn.0040a480
lea ecx, [esp + 0x68]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
mov edx, dword [0x4313b0]
mov ecx, 0x43d30c
push edx
push esi
push eax
mov byte [esp + 0x2e0], 0xae
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x40636f
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x406366
cmp cl, 0xff
je 0x406366
dec cl
mov byte [eax], cl
jmp 0x40636f
push eax
call fcn.00420ca8
add esp, 4
mov al, byte [esp + 0x1b]
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, 0x43e7b0
or ecx, 0xffffffff
mov byte [edx], al
mov dword [edx + 4], esi
mov dword [edx + 8], esi
xor eax, eax
mov dword [edx + 0xc], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x43e7b0
mov ecx, edx
call fcn.0040ad80
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.schaddurl
mov byte [esp + 0x2fc], 0xaf
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xb0
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xb1
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xb2
push ecx
push esi
push eax
mov ecx, 0x43d31c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x406458
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x40644f
cmp cl, 0xff
je 0x40644f
dec cl
mov byte [eax], cl
jmp 0x406458
push eax
call fcn.00420ca8
add esp, 4
mov al, byte [esp + 0x1b]
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, 0x43e7b0
or ecx, 0xffffffff
mov byte [edx], al
mov dword [edx + 4], esi
mov dword [edx + 8], esi
xor eax, eax
mov dword [edx + 0xc], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x43e7b0
mov ecx, edx
call fcn.0040ad80
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.schaddfilename
mov byte [esp + 0x2fc], 0xb3
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xb4
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xb5
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xb6
push ecx
push esi
push eax
mov ecx, 0x43d32c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x406541
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x406538
cmp cl, 0xff
je 0x406538
dec cl
mov byte [eax], cl
jmp 0x406541
push eax
call fcn.00420ca8
add esp, 4
mov al, byte [esp + 0x1b]
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, 0x43e7b0
or ecx, 0xffffffff
mov byte [edx], al
mov dword [edx + 4], esi
mov dword [edx + 8], esi
xor eax, eax
mov dword [edx + 0xc], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x43e7b0
mov ecx, edx
call fcn.0040ad80
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.schfilename
mov byte [esp + 0x2fc], 0xb7
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xb8
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xb9
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xba
push ecx
push esi
push eax
mov ecx, 0x43d33c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x40662a
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x406621
cmp cl, 0xff
je 0x406621
dec cl
mov byte [eax], cl
jmp 0x40662a
push eax
call fcn.00420ca8
add esp, 4
mov al, byte [esp + 0x1b]
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, 0x43e7b0
or ecx, 0xffffffff
mov byte [edx], al
mov dword [edx + 4], esi
mov dword [edx + 8], esi
xor eax, eax
mov dword [edx + 0xc], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x43e7b0
mov ecx, edx
call fcn.0040ad80
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.schurl
mov byte [esp + 0x2fc], 0xbb
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xbc
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xbd
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xbe
push ecx
push esi
push eax
mov ecx, 0x43d34c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x406713
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x40670a
cmp cl, 0xff
je 0x40670a
dec cl
mov byte [eax], cl
jmp 0x406713
push eax
call fcn.00420ca8
add esp, 4
mov al, byte [esp + 0x1b]
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, 0x43e7b0
or ecx, 0xffffffff
mov byte [edx], al
mov dword [edx + 4], esi
mov dword [edx + 8], esi
xor eax, eax
mov dword [edx + 0xc], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x43e7b0
mov ecx, edx
call fcn.0040ad80
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.schname
mov byte [esp + 0x2fc], 0xbf
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xc0
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xc1
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xc2
push ecx
push esi
push eax
mov ecx, 0x43d35c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x4067fc
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x4067f3
cmp cl, 0xff
je 0x4067f3
dec cl
mov byte [eax], cl
jmp 0x4067fc
push eax
call fcn.00420ca8
add esp, 4
lea edx, [esp + 0x28]
push 0x43d35c
push edx
call fcn.0041a580
add esp, 8
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xc3
push ecx
push esi
push eax
mov ecx, 0x43d35c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x406854
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x40684b
cmp cl, 0xff
je 0x40684b
dec cl
mov byte [eax], cl
jmp 0x406854
push eax
call fcn.00420ca8
add esp, 4
mov dl, byte [esp + 0x1b]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
mov edi, 0x43e7b0
or ecx, 0xffffffff
mov byte [ebp], dl
mov dword [ebp + 4], esi
mov dword [ebp + 8], esi
xor eax, eax
mov dword [ebp + 0xc], esi
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
mov ecx, ebp
push edi
mov dword [esp + 0x34], edi
call fcn.0040af60
test al, al
je 0x4068b8
mov eax, dword [ebp + 4]
mov ecx, edi
mov edi, eax
mov eax, ecx
mov esi, 0x43e7b0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x2c]
push ecx
mov ecx, ebp
call fcn.0040af40
xor esi, esi
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.schargs
mov byte [esp + 0x2fc], 0xc4
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xc5
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xc6
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xc7
push ecx
push esi
push eax
mov ecx, 0x43d36c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x40696d
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x406964
cmp cl, 0xff
je 0x406964
dec cl
mov byte [eax], cl
jmp 0x40696d
push eax
call fcn.00420ca8
add esp, 4
mov dl, byte [esp + 0x1b]
sub esp, 0x10
mov ebp, esp
mov dword [esp + 0x30], esp
mov edi, 0x43e7b0
or ecx, 0xffffffff
mov byte [ebp], dl
mov dword [ebp + 4], esi
mov dword [ebp + 8], esi
xor eax, eax
mov dword [ebp + 0xc], esi
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
mov ecx, ebp
push edi
mov dword [esp + 0x34], edi
call fcn.0040af60
test al, al
je 0x4069d1
mov eax, dword [ebp + 4]
mov ecx, edi
mov edi, eax
mov eax, ecx
mov esi, 0x43e7b0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x2c]
push ecx
mov ecx, ebp
call fcn.0040af40
xor esi, esi
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.schlocal
mov byte [esp + 0x2fc], 0xc8
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xc9
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xca
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xcb
push ecx
push esi
push eax
mov ecx, 0x43d37c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x406a86
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x406a7d
cmp cl, 0xff
je 0x406a7d
dec cl
mov byte [eax], cl
jmp 0x406a86
push eax
call fcn.00420ca8
add esp, 4
mov al, byte [esp + 0x1b]
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, 0x438278
or ecx, 0xffffffff
mov byte [edx], al
lea eax, [edx + 4]
mov dword [esp + 0x24], eax
push 1
mov dword [eax], esi
lea eax, [edx + 8]
mov dword [esp + 0x30], eax
mov dword [eax], esi
xor eax, eax
mov dword [edx + 0xc], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
push ebp
call fcn.0040af60
test al, al
je 0x406af9
mov ecx, dword [esp + 0x24]
mov esi, 0x438278
mov edi, dword [ecx]
mov ecx, ebp
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x2c]
mov dword [eax], ebp
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
mov byte [ebp + eax], 0
add ebp, eax
xor esi, esi
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push 0x4381e8
mov byte [esp + 0x2fc], 0xcc
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xcd
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xce
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov ecx, dword [0x4313b0]
mov byte [esp + 0x2d4], 0xcf
push ecx
push esi
push eax
mov ecx, 0x43d29c
call fcn.0040a8e0
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x406bae
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x406ba5
cmp cl, 0xff
je 0x406ba5
dec cl
mov byte [eax], cl
jmp 0x406bae
push eax
call fcn.00420ca8
add esp, 4
mov al, byte [esp + 0x1b]
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x30], esp
mov edi, 0x43e7b0
or ecx, 0xffffffff
mov byte [edx], al
lea eax, [edx + 4]
mov dword [esp + 0x24], eax
push 1
mov dword [eax], esi
lea eax, [edx + 8]
mov dword [esp + 0x30], eax
mov dword [eax], esi
xor eax, eax
mov dword [edx + 0xc], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
push ebp
call fcn.0040af60
test al, al
je 0x406c21
mov ecx, dword [esp + 0x24]
mov esi, 0x43e7b0
mov edi, dword [ecx]
mov ecx, ebp
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x2c]
mov dword [eax], ebp
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
mov byte [ebp + eax], 0
add ebp, eax
xor esi, esi
sub esp, 0x10
lea edx, [esp + 0x32]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.ucsurl
mov byte [esp + 0x2fc], 0xd0
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x43]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xd1
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xd2
call fcn.0040a480
lea eax, [esp + 0x68]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
mov edi, eax
mov ecx, dword [edi + 8]
mov eax, dword [0x4313b0]
mov ebp, ecx
mov byte [esp + 0x2d4], 0xd3
cmp eax, ebp
jae 0x406caa
mov ebp, eax
cmp edi, 0x43d2bc
jne 0x406ccf
push eax
push ebp
mov ecx, 0x43d2bc
call fcn.0040ae20
push esi
push esi
mov ecx, 0x43d2bc
call fcn.0040ae20
jmp 0x406d64
cmp ebp, esi
jbe 0x406d22
cmp ebp, ecx
jne 0x406d22
mov eax, dword [edi + 4]
cmp eax, esi
jne 0x406ce3
mov eax, 0x4313b4
cmp byte [eax - 1], 0xfe
jae 0x406d22
push 1
mov ecx, 0x43d2bc
call fcn.0040aae0
mov eax, dword [edi + 4]
cmp eax, esi
jne 0x406d01
mov eax, 0x4313b4
mov dword [0x43d2c0], eax
mov ecx, dword [edi + 8]
mov dword [0x43d2c4], ecx
mov edi, dword [edi + 0xc]
mov dword [0x43d2c8], edi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x406d64
push 1
push ebp
mov ecx, 0x43d2bc
call fcn.0040af60
test al, al
je 0x406d64
mov edi, dword [edi + 4]
cmp edi, esi
mov esi, 0x4313b4
je 0x406d41
mov esi, edi
mov edi, dword [0x43d2c0]
mov ecx, ebp
mov edx, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, 0x43d2bc
call fcn.0040af40
xor esi, esi
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x2d4], bl
cmp eax, esi
je 0x406d8f
mov cl, byte [eax - 1]
dec eax
test cl, cl
je 0x406d86
cmp cl, 0xff
je 0x406d86
dec cl
mov byte [eax], cl
jmp 0x406d8f
push eax
call fcn.00420ca8
add esp, 4
sub esp, 0x10
lea eax, [esp + 0x2b]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
push 0x43e7b0
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x5b]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
push str.ucsfilename
mov byte [esp + 0x2fc], 0xd4
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x42]
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
push str.INSTALL
mov byte [esp + 0x30c], 0xd5
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
mov byte [esp + 0x318], 0xd6
call fcn.0040a480
lea eax, [esp + 0x9c]
mov byte [esp + 0x314], bl
push eax
call fcn.00415580
add esp, 0x44
push eax
mov ecx, 0x43d2ac
mov byte [esp + 0x2d8], 0xd7
call fcn.0040a6a0
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2d4], bl
call fcn.0040a660
sub esp, 0x10
lea edx, [esp + 0x2b]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
push 0x43e7b0
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x5b]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.ucskind
mov byte [esp + 0x2fc], 0xd8
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x42]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0xd9
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0xda
call fcn.0040a480
mov byte [esp + 0x314], bl
lea ecx, [esp + 0x9c]
push ecx
call fcn.00415580
add esp, 0x44
push eax
mov ecx, 0x43d2cc
mov byte [esp + 0x2d8], 0xdb
call fcn.0040a6a0
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2d4], bl
call fcn.0040a660
sub esp, 0x10
lea edx, [esp + 0x2b]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
push 0x43e7b0
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x5b]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
push str.ucslocal
mov byte [esp + 0x2fc], 0xdc
call fcn.0040a5a0
sub esp, 0x10
lea edx, [esp + 0x42]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
push str.INSTALL
mov byte [esp + 0x30c], 0xdd
call fcn.0040a5a0
sub esp, 0x10
lea eax, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x54], esp
push eax
mov byte [esp + 0x318], 0xde
call fcn.0040a480
lea ecx, [esp + 0x9c]
mov byte [esp + 0x314], bl
push ecx
call fcn.00415580
add esp, 0x44
push eax
mov ecx, 0x43d2fc
mov byte [esp + 0x2d8], 0xdf
call fcn.0040a6a0
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2d4], bl
call fcn.0040a660
lea edx, [esp + 0x5c]
push 0x43d2fc
push edx
call fcn.004121b0
add esp, 8
push eax
mov ecx, 0x43d2fc
mov byte [esp + 0x2d8], 0xe0
call fcn.0040a6a0
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2d4], bl
call fcn.0040a660
lea ecx, [esp + 0x3c]
call fcn.0040a7e0
push eax
call dword [sym.imp.KERNEL32.DLL_DeleteFileA]
lea ecx, [esp + 0x6c]
mov byte [esp + 0x2d4], 0x49
call fcn.0040a660
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2d4], 0x25
call fcn.0040a660
mov dword [esp + 0x2d4], 0xffffffff
lea ecx, [esp + 0x7c]
call fcn.0040a660
mov eax, 1
mov ecx, dword [esp + 0x2cc]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x2c8
ret