Function at 0x1005f61a
Capabilities:
Inspect section memory permissions

Disassembly:
mov eax, 0x100b8d9b
call fcn.100b2f10
sub esp, 0x178
push ebx
push esi
push edi
mov ebx, ecx
mov esi, dword [ebp + 8]
and dword [ebp - 4], 0
push 0
mov edi, dword [esi + 4]
call fcn.100032c4
and dword [ebp - 0xf8], 0
mov eax, edi
shl eax, 2
push eax
call fcn.1000329d
mov edi, eax
mov eax, dword [esi + 4]
shl eax, 2
push eax
push 0
push edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0xf8], edi
call sub.MSVCRT.dll_memset
mov eax, dword [ebx + 0x14]
and dword [ebp - 0x38], 0
add esp, 0x14
cmp dword [ebx + 0xc8], 0
mov dword [ebp - 0x70], eax
jbe 0x1005d3b2
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x38]
lea eax, [eax + ecx*4]
mov ecx, dword [ebx + 0xcc]
mov eax, dword [eax + ecx]
cmp eax, dword [esi + 4]
jae 0x1005d3a4
mov ecx, dword [edi + eax*4]
mov edx, dword [ebp - 0x38]
lea eax, [edi + eax*4]
and ecx, 0xfffffdf
shl edx, 0x1c
or ecx, edx
or ecx, 0x20
mov dword [eax], ecx
inc dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebx + 0xc8]
jb 0x1005d374
cmp dword [ebx + 0x7c], 0
je 0x1005d82f
mov ecx, ebx
call fcn.1005c5b0
push dword [ebx + 0x7c]
mov ecx, ebx
push str.PAGES
call fcn.1005c902
mov ecx, dword [ebx + 0x7c]
cmp ecx, 0x1000
ja 0x1005d823
mov edx, dword [ebx + 0x78]
mov eax, dword [ebx + 0x34]
cmp edx, eax
ja 0x1005d823
sub eax, edx
shl ecx, 6
cmp ecx, eax
ja 0x1005d823
mov ecx, ebx
call fcn.1005c67c
mov eax, dword [ebx + 0x14]
and dword [ebp - 0x48], 0
add eax, dword [ebx + 0x78]
cmp dword [ebx + 0x7c], 0
mov dword [ebp - 0x30], eax
jbe 0x1005d82f
mov eax, dword [ebp - 0x30]
push 5
lea edi, [ebp - 0x94]
mov ecx, dword [eax]
mov edx, dword [eax + 8]
mov dword [ebp - 0x34], ecx
mov ecx, dword [eax + 4]
mov dword [ebp - 0x40], ecx
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x4c], ecx
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x64], ecx
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x38], ecx
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x70], ecx
mov ecx, dword [eax + 0x20]
mov dword [ebp - 0x74], ecx
pop ecx
lea esi, [eax + 0x2c]
mov dword [ebp - 0x60], edx
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 8]
test edx, edx
jl 0x1005d481
cmp edx, dword [ecx + 4]
jae 0x1005d481
mov eax, dword [ebp - 0x44]
mov esi, dword [ebp - 0x48]
shl esi, 0x10
lea eax, [eax + edx*4]
mov edx, dword [eax]
and edx, 0xf000ffff
or edx, esi
or edx, 4
mov dword [eax], edx
mov eax, dword [ebp - 0x4c]
test eax, eax
jl 0x1005d4a8
cmp eax, dword [ecx + 4]
jae 0x1005d4a8
mov edx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x48]
shl esi, 0x10
lea eax, [edx + eax*4]
mov edx, dword [eax]
and edx, 0xf000ffff
or edx, esi
or edx, 8
mov dword [eax], edx
mov eax, dword [ebp - 0x64]
test eax, eax
jl 0x1005d4cf
cmp eax, dword [ecx + 4]
jae 0x1005d4cf
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x48]
shl edx, 0x10
lea eax, [ecx + eax*4]
mov ecx, dword [eax]
and ecx, 0xf000ffff
or ecx, edx
or ecx, 0x10
mov dword [eax], ecx
cmp dword [ebp - 0x40], 5
jne 0x1005d4dc
mov ecx, ebx
call fcn.1005c666
mov esi, str.Page
mov ecx, ebx
push esi
call fcn.1005c610
push dword [ebp - 0x48]
mov ecx, ebx
call fcn.1005b390
mov ecx, ebx
call fcn.1005c67c
mov eax, dword [ebp - 0x38]
and eax, 0x200
mov dword [ebp - 0x68], eax
je 0x1005d523
push str.PageEx
mov ecx, ebx
call fcn.1000124a
cmp byte [ebx + 0x177], 0
jne 0x1005d539
push 0x100c416c
jmp 0x1005d532
cmp byte [ebx + 0x177], 0
jne 0x1005d531
mov esi, str.UninstPage
push esi
mov ecx, ebx
call fcn.1000124a
mov eax, dword [ebp - 0x40]
cmp eax, 7
jae 0x1005d551
push dword [eax*4 + 0x100c357c]
mov ecx, ebx
call fcn.1000124a
jmp 0x1005d559
push eax
mov ecx, ebx
call fcn.1005b390
xor edi, edi
cmp dword [ebp - 0x60], edi
jge 0x1005d570
cmp dword [ebp - 0x4c], edi
jge 0x1005d570
cmp dword [ebp - 0x64], edi
jge 0x1005d570
and byte [ebp - 0xe], 0
jmp 0x1005d574
mov byte [ebp - 0xe], 1
cmp dword [ebp - 0x68], edi
je 0x1005d592
mov ecx, ebx
call fcn.1005c67c
cmp byte [ebp - 0xe], 0
je 0x1005d5c5
push str.PageCallbacks
mov ecx, ebx
call fcn.1005c692
cmp byte [ebp - 0xe], 0
je 0x1005d5c5
push dword [ebp - 0x60]
mov ecx, ebx
push dword [ebp - 0x44]
call fcn.1005c2e9
cmp dword [ebp - 0x40], 6
je 0x1005d5b8
push dword [ebp - 0x4c]
mov ecx, ebx
push dword [ebp - 0x44]
call fcn.1005c2e9
push dword [ebp - 0x64]
mov ecx, ebx
push dword [ebp - 0x44]
call fcn.1005c2e9
cmp dword [ebp - 0x68], edi
jne 0x1005d5e5
test byte [ebp - 0x38], 4
je 0x1005d5dc
push str.__ENABLECANCEL
mov ecx, ebx
call fcn.1000124a
mov ecx, ebx
call fcn.1005c67c
jmp 0x1005d5fb
mov ecx, ebx
call fcn.1005c67c
push str.Caption
mov ecx, ebx
push dword [ebp - 0x70]
call fcn.1005c54d
mov eax, dword [ebp - 0x40]
cmp eax, edi
jne 0x1005d6fc
mov esi, dword [ebp - 0x38]
and esi, 0x40
jne 0x1005d614
test byte [ebp - 0x38], 0x20
je 0x1005d674
push str.LicenseForceSelection
mov ecx, ebx
call fcn.1005c692
cmp esi, edi
je 0x1005d632
push 0x100c3638
mov ecx, ebx
call fcn.1000124a
jmp 0x1005d66d
cmp dword [ebp - 0x34], 0x6d
jne 0x1005d646
push str.checkbox
mov ecx, ebx
call fcn.1000124a
jmp 0x1005d65d
cmp dword [ebp - 0x34], 0x6c
jne 0x1005d653
push str.radiobuttons
jmp 0x1005d63d
push dword [ebp - 0x34]
mov ecx, ebx
call fcn.1005b390
lea eax, [ebp - 0x8c]
push 2
push eax
mov ecx, ebx
call fcn.1005c256
mov ecx, ebx
call fcn.1005c930
cmp dword [ebp - 0x94], edi
jne 0x1005d681
cmp dword [ebp - 0x74], edi
je 0x1005d6ab
push str.LicenseText
mov ecx, ebx
call fcn.1005c692
push dword [ebp - 0x94]
mov ecx, ebx
call fcn.1005c1ec
push dword [ebp - 0x74]
mov ecx, ebx
call fcn.1005c243
mov ecx, ebx
call fcn.1005c930
cmp dword [ebp - 0x90], edi
je 0x1005d7df
push str.LicenseData
mov ecx, ebx
call fcn.1005c692
cmp dword [ebp - 0x90], edi
jge 0x1005d6da
push dword [ebp - 0x90]
mov ecx, ebx
call fcn.1005c1ec
jmp 0x1005d6e9
push 0xffffffffffffffff
mov ecx, ebx
push dword [ebp - 0x90]
call fcn.1005b3b4
mov ecx, ebx
call fcn.1005c8fa
mov ecx, ebx
call fcn.1005c930
jmp 0x1005d7df
cmp eax, 1
jne 0x1005d70d
push str.ComponentsText
push 3
jmp 0x1005d7d1
cmp eax, 2
jne 0x1005d770
push str.DirText
lea eax, [ebp - 0x94]
push 4
push eax
mov ecx, ebx
call fcn.1005c576
cmp dword [ebp - 0x84], edi
je 0x1005d751
push str.DirVar
mov ecx, ebx
call fcn.1005c692
mov eax, dword [ebp - 0x84]
mov ecx, ebx
dec eax
push eax
call fcn.1005b65a
mov ecx, ebx
call fcn.1005c67c
test byte [ebp - 0x37], 4
je 0x1005d7df
push str.DirVerify_leave
mov ecx, ebx
call fcn.1005c692
mov ecx, ebx
call fcn.1005c67c
jmp 0x1005d7df
cmp eax, 3
jne 0x1005d79b
push str.CompletedText
mov ecx, ebx
push dword [ebp - 0x8c]
call fcn.1005c54d
push str.DetailsButtonText
mov ecx, ebx
push dword [ebp - 0x90]
call fcn.1005c54d
jmp 0x1005d7df
cmp eax, 4
jne 0x1005d7df
cmp dword [ebp - 0x84], edi
je 0x1005d7ca
push str.DirVar
mov ecx, ebx
call fcn.1005c692
mov eax, dword [ebp - 0x84]
mov ecx, ebx
dec eax
push eax
call fcn.1005b65a
mov ecx, ebx
call fcn.1005c67c
push str.UninstallText
push 2
lea eax, [ebp - 0x94]
mov ecx, ebx
push eax
call fcn.1005c576
cmp dword [ebp - 0x68], edi
je 0x1005d7f7
push str.PageExEnd
mov ecx, ebx
call fcn.1000124a
mov ecx, ebx
call fcn.1005c930
cmp dword [ebp - 0x40], 5
jne 0x1005d804
mov ecx, ebx
call fcn.1005c671
mov ecx, ebx
call fcn.1005c930
inc dword [ebp - 0x48]
add dword [ebp - 0x30], 0x40
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebx + 0x7c]
jb 0x1005d41a
mov esi, dword [ebp + 8]
jmp 0x1005d82f
push str.Pages_error
mov ecx, ebx
call fcn.1005c64f
and dword [ebp - 0x38], 0
mov ecx, ebx
mov byte [ebp - 4], 1
call fcn.1005c5b0
push dword [ebx + 0x84]
mov ecx, ebx
push str.SECTIONS
call fcn.1005c902
push dword [esi + 4]
mov ecx, ebx
push str.COMMANDS
call fcn.1005c902
mov ecx, ebx
call fcn.1005c67c
mov edi, dword [ebx + 0x84]
cmp edi, 0x8000
jbe 0x1005d882
push str.Sections_error
mov ecx, ebx
call fcn.1005c64f
jmp 0x1005d8f8
test edi, edi
je 0x1005d8f8
push 0
call fcn.100032c4
and dword [ebp - 0x38], 0
lea eax, [edi + edi*2]
shl eax, 3
push eax
call fcn.1000329d
mov edi, dword [ebx + 0x80]
and dword [ebp - 0x4c], 0
pop ecx
mov dword [ebp - 0x38], eax
pop ecx
mov ecx, dword [ebx + 0x14]
add edi, ecx
cmp dword [ebx + 0x84], 0
jbe 0x1005d8f8
add eax, 8
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push edi
lea ecx, [eax - 8]
call fcn.1005c6d3
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
cmp eax, dword [esi + 4]
jae 0x1005d8e0
mov ecx, dword [ebp - 0x44]
or dword [ecx + eax*4], 0x40
lea eax, [ecx + eax*4]
inc dword [ebp - 0x4c]
mov eax, dword [ebp - 0x4c]
add dword [ebp - 0x40], 0x18
add edi, dword [ebx + 0xa4]
cmp eax, dword [ebx + 0x84]
jb 0x1005d8c0
mov eax, dword [ebx + 0x14]
and dword [ebp - 0x2c], 0
add eax, dword [esi]
cmp dword [esi + 4], 0
mov edi, eax
mov dword [ebp - 0x3c], edi
jbe 0x1005d9b6
push dword [edi]
mov ecx, ebx
call fcn.1005cc28
cmp eax, 0x16
ja 0x1005d95f
je 0x1005d95b
dec eax
dec eax
je 0x1005d957
sub eax, 3
je 0x1005d93a
sub eax, 7
je 0x1005d936
dec eax
dec eax
jne 0x1005d9a1
push 3
jmp 0x1005d977
push 6
jmp 0x1005d977
push 1
pop edx
cmp dword [edi + 8], edx
je 0x1005d978
mov eax, dword [edi + 4]
test eax, eax
jle 0x1005d9a1
mov ecx, dword [ebp - 0x44]
or dword [ecx + eax*4 - 4], 2
lea eax, [ecx + eax*4 - 4]
jmp 0x1005d9a1
push 1
jmp 0x1005d977
push 0x28
jmp 0x1005d977
sub eax, 0x1a
je 0x1005d975
dec eax
dec eax
je 0x1005d971
push 6
pop edx
sub eax, edx
jne 0x1005d9a1
jmp 0x1005d978
push 0x1c
jmp 0x1005d977
push 0xc
pop edx
lea ecx, [edi + 4]
test dl, 1
je 0x1005d99a
mov eax, dword [ecx]
test eax, eax
jle 0x1005d99a
cmp eax, dword [esi + 4]
jg 0x1005d99a
mov edi, dword [ebp - 0x44]
or dword [edi + eax*4 - 4], 1
lea eax, [edi + eax*4 - 4]
mov edi, dword [ebp - 0x3c]
add ecx, 4
shr edx, 1
jne 0x1005d97b
inc dword [ebp - 0x2c]
add edi, 0x1c
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x3c], edi
cmp eax, dword [esi + 4]
jb 0x1005d910
mov eax, dword [ebx + 0x14]
or dword [ebp - 0xd0], 0xffffffff
add eax, dword [esi]
or dword [ebp - 0xcc], 0xffffffff
xor edi, edi
mov dword [ebp - 0x3c], eax
mov eax, dword [esi + 4]
test eax, eax
jbe 0x1005da2a
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x4c], ecx
mov ecx, dword [ebp - 0x4c]
test byte [ecx], 0x3e
je 0x1005d9ff
sub eax, edi
cmp eax, 0xe
jb 0x1005d9ff
push 0xe
push 0x100c35c4
push dword [ebp - 0x3c]
mov ecx, ebx
call fcn.1005cac5
test al, al
jne 0x1005da11
mov eax, dword [esi + 4]
add dword [ebp - 0x4c], 4
add dword [ebp - 0x3c], 0x1c
inc edi
cmp edi, eax
jb 0x1005d9db
jmp 0x1005da2a
lea eax, [edi + 0xe]
mov dword [ebp - 0xd0], edi
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0x44]
or byte [eax + edi*4], 0x80
lea eax, [eax + edi*4]
and byte [ebp - 0xe], 0
and byte [ebp - 0x4d], 0
or dword [ebp - 0x7c], 0xffffffff
xor edi, edi
mov ecx, ebx
mov dword [ebp - 0x48], edi
mov dword [ebp - 0xc8], edi
mov dword [ebp - 0x40], edi
call fcn.1005cc08
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x10c], eax
call fcn.100023fb
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 2
call fcn.10001c73
push str._INSTDIR
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 3
call fcn.1000241e
lea eax, [ebp - 0xb8]
lea ecx, [ebx + 0x190]
push eax
mov byte [ebp - 4], 4
call fcn.10003d79
push dword [ebp - 0xb8]
mov byte [ebp - 4], 3
call fcn.100032c4
lea ecx, [ebp - 0xb8]
mov dword [esp], 0x100c47b4
call fcn.10001c95
lea eax, [ebp - 0xb8]
lea ecx, [ebx + 0x19c]
push eax
mov byte [ebp - 4], 5
call fcn.100614f6
push dword [ebp - 0xb8]
mov byte [ebp - 4], 3
call fcn.100032c4
mov eax, dword [ebx + 0x14]
pop ecx
add eax, dword [esi]
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x3c], eax
mov al, byte [ebx + 0x55]
neg al
sbb eax, eax
and al, 0xfe
add eax, 0x1f
cmp dword [esi + 4], edi
mov dword [ebp - 0x68], eax
jbe 0x1005fa8c
mov esi, dword [ebp - 0x3c]
mov ecx, ebx
push dword [esi]
call fcn.1005cc28
and byte [ebp - 0xd], 0
push 6
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x48]
add esi, 4
cmp eax, dword [ebx + 0x84]
pop ecx
lea edi, [ebp - 0x28]
rep movsd dword es:[edi], dword [esi]
mov edi, eax
jae 0x1005db83
mov ecx, dword [ebp - 0x38]
lea eax, [edi + edi*2]
lea esi, [ecx + eax*8]
cmp byte [ebp - 0xe], 0
je 0x1005db5c
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
lea eax, [eax + ecx + 1]
cmp eax, dword [ebp - 0x2c]
jne 0x1005db83
mov ecx, ebx
call fcn.1005c8e4
and byte [ebp - 0xe], 0
inc edi
add esi, 0x18
mov dword [ebp - 0x48], edi
jmp 0x1005db7b
mov eax, dword [ebp - 0x2c]
cmp dword [esi + 8], eax
jne 0x1005db83
push edi
push esi
mov ecx, ebx
call fcn.1005c6fc
test al, al
je 0x1005db77
mov byte [ebp - 0xd], 1
jmp 0x1005db53
mov byte [ebp - 0xe], 1
cmp edi, dword [ebx + 0x84]
jb 0x1005db33
mov esi, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [esi + ecx*4]
test eax, eax
mov dword [ebp - 0x30], eax
je 0x1005dc5d
cmp eax, 0x40
je 0x1005dc5d
test al, 0x3e
je 0x1005dc41
cmp ecx, dword [ebp - 0xd0]
jne 0x1005dbb7
mov ecx, ebx
call fcn.1005c666
push str.Function
mov ecx, ebx
mov byte [ebp - 0x4d], 1
call fcn.1000124a
push dword [ebp - 0x2c]
mov ecx, ebx
push esi
call fcn.1005c28e
test byte [ebp - 0x30], 0x1c
je 0x1005dc34
mov ecx, ebx
call fcn.1005c5fa
push str.Page
mov ecx, ebx
call fcn.1000124a
mov eax, dword [ebp - 0x30]
mov ecx, ebx
shr eax, 0x10
and eax, 0xfff
push eax
call fcn.1005b390
test byte [ebp - 0x30], 0x10
je 0x1005dc10
push str.__Leave
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x30], 4
je 0x1005dc22
push str.__Pre
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x30], 8
je 0x1005dc34
push str.__Show
mov ecx, ebx
call fcn.1000124a
mov ecx, ebx
call fcn.1005c67c
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
test al, 1
je 0x1005dc5d
push ecx
mov ecx, ebx
call fcn.1005c314
push 0x3a
mov ecx, ebx
call fcn.100011e2
mov ecx, ebx
call fcn.1005c67c
mov esi, dword [ebp - 0x54]
cmp esi, 1
je 0x1005dc76
mov eax, dword [ebp - 0x2c]
mov ecx, ebx
cmp eax, dword [ebp - 0x40]
setb al
push eax
call fcn.1005c5e0
and dword [ebp - 0x60], 0
cmp esi, 0x4a
jae 0x1005dca6
cmp esi, dword [ebp - 0x10c]
jae 0x1005dca6
movzx eax, byte [esi + 0x100c31c8]
mov dword [ebp - 0x60], eax
mov eax, dword [esi*4 + 0x100c3214]
test eax, eax
je 0x1005dcc8
push eax
mov ecx, ebx
call fcn.1000124a
jmp 0x1005dcc8
push str.Command
mov ecx, ebx
call fcn.1000124a
push esi
mov ecx, ebx
call fcn.1005b390
mov eax, 0x1000
cmp esi, eax
jae 0x1005dcc8
add esi, eax
mov dword [ebp - 0x54], esi
lea eax, [esi - 1]
cmp eax, 0x46
ja case.0x1005dcd4.4
jmp dword [eax*4 + 0x1005fb23]
cmp dword [ebp - 0x24], 0
setne al
test al, al
je 0x1005dda9
mov edi, dword [ebp - 0x28]
lea eax, [ebp - 0xfc]
push eax
push edi
mov ecx, ebx
call fcn.1005d0ff
mov esi, eax
cmp esi, dword [ebp - 0x68]
je 0x1005dd08
cmp esi, 0x16
jne 0x1005dd0e
add edi, dword [ebp - 0xfc]
push edi
mov ecx, ebx
call fcn.1005bd7a
cmp byte [ebx + 0x28], 0
je 0x1005dd60
cmp esi, dword [ebp - 0x68]
jne 0x1005dd2a
lea eax, [ebp - 0x108]
push eax
jmp 0x1005dd45
cmp esi, 0x16
jne 0x1005dd4f
mov ecx, dword [ebx + 0x194]
lea eax, [ebx + 0x190]
mov eax, dword [ebx + 0x190]
push dword [eax + ecx*4 - 4]
push 0
lea ecx, [ebx + 0x44]
call fcn.100028f1
lea eax, [ebx + 0x44]
lea ecx, [ebx + 0x190]
push eax
call fcn.10003d79
jmp 0x1005dda2
cmp esi, dword [ebp - 0x68]
jne 0x1005dd6e
lea eax, [ebp - 0xf4]
push eax
jmp 0x1005dd89
cmp esi, 0x16
jne 0x1005dd93
mov ecx, dword [ebx + 0x1a0]
lea eax, [ebx + 0x19c]
mov eax, dword [ebx + 0x19c]
push dword [eax + ecx*4 - 4]
push 0
lea ecx, [ebx + 0x38]
call fcn.1000203d
lea eax, [ebx + 0x38]
lea ecx, [ebx + 0x19c]
push eax
call fcn.100614f6
mov eax, str.SetOutPath
jmp 0x1005ddae
mov eax, str.CreateDirectory
push eax
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
jmp 0x1005f4f7
mov eax, dword [ebp - 0x68]
cmp dword [ebp - 0x28], eax
jne 0x1005de60
mov eax, dword [ebp - 0x108]
xor esi, esi
mov dword [ebp - 0x104], esi
push 0x16
mov word [eax], si
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0xf0], esi
mov ecx, ebx
and byte [eax], 0
push dword [ebp - 0x24]
call fcn.1005d1bc
test al, al
je 0x1005de62
cmp dword [ebp - 0x20], esi
jne 0x1005dec5
cmp dword [ebp - 0x1c], esi
jne 0x1005dec5
push 0x16
mov ecx, ebx
push dword [ebp - 0x24]
call fcn.1005d1bc
test al, al
je 0x1005de62
mov ecx, dword [ebx + 0x194]
lea eax, [ebx + 0x190]
mov eax, dword [ebx + 0x190]
push dword [eax + ecx*4 - 4]
lea ecx, [ebp - 0x108]
call fcn.10002533
mov ecx, dword [ebx + 0x1a0]
lea eax, [ebx + 0x19c]
mov eax, dword [ebx + 0x19c]
push dword [eax + ecx*4 - 4]
lea ecx, [ebp - 0xf4]
call fcn.10001d8e
jmp 0x1005de62
xor esi, esi
cmp dword [ebp - 0x20], esi
jne 0x1005dec5
cmp dword [ebp - 0x1c], esi
jne 0x1005dec5
cmp dword [ebp - 0x18], esi
jne 0x1005dec5
cmp dword [ebp - 0x14], esi
jne 0x1005dec5
mov eax, dword [ebp - 0x24]
cmp eax, esi
je 0x1005dec5
cmp eax, dword [ebx + 0x30]
jae 0x1005dec5
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x90]
lea ecx, [eax + 1]
call fcn.100012d8
lea eax, [ebp - 0x90]
mov ecx, ebx
push eax
push dword [ebp - 0x24]
call fcn.1005c3d9
test al, al
je 0x1005dec5
push str.GetCurrentAddress
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
mov ecx, ebx
call fcn.1005c605
push str.StrCpy
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c1ec
push 2
lea eax, [ebp - 0x20]
jmp 0x1005f40d
lea ecx, [ebx + 0x1c]
call fcn.100613e4
mov esi, eax
mov eax, dword [ebp - 0x24]
push eax
push esi
mov ecx, ebx
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x30], eax
call fcn.1005d258
mov eax, dword [ebp - 0x20]
mov dword [esi + 0xc], eax
mov eax, dword [ebp - 0x1c]
mov dword [esi + 0x28], eax
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x28]
mov esi, eax
and esi, 7
cmp esi, dword [ebp - 0xc8]
je 0x1005df69
push str.SetOverwrite
mov ecx, ebx
call fcn.1000124a
push esi
push 5
push 0x100c35b0
mov ecx, ebx
call fcn.1005c508
mov ecx, ebx
mov dword [ebp - 0xc8], esi
call fcn.1005c67c
mov eax, dword [ebp - 0x2c]
mov ecx, ebx
cmp eax, dword [ebp - 0x40]
setb al
push eax
call fcn.1005c5e0
mov eax, dword [ebp - 0x28]
shr eax, 3
cmp eax, dword [ebp - 0x7c]
mov dword [ebp - 0x54], eax
je 0x1005e033
mov ecx, eax
mov edi, ecx
mov esi, ecx
and edi, 0xfffff
mov dword [ebp - 0x34], ecx
shr esi, 0x15
shr eax, 0x14
cmp edi, 0x12
jne 0x1005dfa2
cmp esi, 5
je 0x1005df9c
cmp eax, 5
jne 0x1005dfba
or dword [ebp - 0x34], 0xffffffff
jmp 0x1005dfe6
cmp edi, 0x15
jne 0x1005dfba
cmp esi, 2
je 0x1005dfb1
cmp eax, 2
jne 0x1005dfba
mov dword [ebp - 0x34], 0xfffffffe
jmp 0x1005dfe6
push str.AllowSkipFiles__Overwrite_:
mov ecx, ebx
call fcn.1005c610
push edi
mov ecx, ebx
call fcn.1005c99f
test esi, esi
je 0x1005dfe6
push str.__SD
mov ecx, ebx
call fcn.1000124a
push esi
mov ecx, ebx
call fcn.1005c39e
mov esi, dword [ebp - 0x34]
cmp esi, dword [ebp - 0x7c]
je 0x1005e02d
test esi, esi
jge 0x1005e015
push str.AllowSkipFiles
mov ecx, ebx
call fcn.1000124a
cmp esi, 0xffffffff
mov eax, 0x100c363c
je 0x1005e00d
mov eax, 0x100c3638
push eax
mov ecx, ebx
call fcn.1000124a
mov ecx, ebx
call fcn.1005c67c
mov eax, dword [ebp - 0x40]
mov ecx, ebx
cmp dword [ebp - 0x2c], eax
setb al
push eax
call fcn.1005c5e0
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x7c], eax
push str.File
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c1ec
push 0xa
mov ecx, ebx
push dword [ebp - 0x30]
call fcn.1005d1bc
test al, al
je 0x1005f9bd
cmp dword [ebp - 0x2c], 1
push 0x1c
pop ecx
jbe 0x1005e072
mov eax, dword [ebp - 0x3c]
cmp dword [eax - 0x1c], 2
jne 0x1005e072
push 0x1a
pop ecx
cmp dword [ebp - 0x2c], ecx
jbe 0x1005f9bd
imul ecx, ecx, 0x1c
mov eax, dword [ebp - 0x3c]
sub eax, ecx
cmp dword [eax], 0x19
jne 0x1005f9bd
push 6
lea esi, [eax + 4]
pop ecx
lea edi, [ebp - 0x184]
rep movsd dword es:[edi], dword [esi]
cmp dword [ebp - 0x184], 0xe
jne 0x1005f9bd
cmp dword [ebp - 0x17c], 0
jne 0x1005f9bd
cmp dword [ebp - 0x178], 0
jne 0x1005f9bd
mov eax, dword [ebp - 0x58]
push dword [ebp - 0x180]
xor ecx, ecx
or dword [eax + 0x24], 0xffffffff
mov edx, dword [eax + 0x30]
mov dword [eax + 0x34], ecx
push eax
and byte [edx], cl
mov edx, dword [eax + 0x3c]
mov dword [eax + 0x40], ecx
mov word [edx], cx
mov ecx, ebx
call fcn.1005d258
jmp 0x1005f9bd
cmp dword [ebp - 0x2c], 0
jbe 0x1005e119
mov eax, dword [ebp - 0x3c]
cmp dword [eax - 0x1c], 0x14
jne 0x1005e119
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [eax - 0x14]
jne 0x1005e119
mov eax, dword [ebx + 0x20]
mov ecx, dword [ebx + 0x1c]
mov eax, dword [ecx + eax*4 - 4]
mov byte [eax + 4], 1
mov ecx, dword [ebp - 0x24]
mov dword [eax + 8], ecx
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
mov ecx, ebx
call fcn.1005c5cd
push dword [ebp - 0x24]
mov edx, 0x100d88bc
mov ecx, ebx
push 0x11
call fcn.1005fc63
jmp 0x1005f9bd
cmp dword [ebp - 0x28], 0
jbe 0x1005e154
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005bded
test al, al
jne 0x1005e15e
push str.bad_path
jmp 0x1005ee06
mov esi, dword [ebp - 0x1c]
mov byte [ebp - 0xd], 1
test esi, esi
je 0x1005e197
and byte [ebp - 0xd], 0
and dword [ebp - 0x54], 0
lea eax, [ebp - 0x54]
mov ecx, ebx
push eax
push 0x5c
push esi
call fcn.1005d14b
cmp eax, 0x15
jne 0x1005e197
mov eax, dword [ebp - 0x54]
push dword [ebp - 0x28]
add eax, esi
mov ecx, ebx
push eax
call fcn.1005be25
mov byte [ebp - 0xd], al
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
mov ecx, ebx
call fcn.1005c605
cmp dword [ebp - 0x1c], 0
je 0x1005e1b8
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.1005c1ec
cmp byte [ebp - 0xd], 0
jne 0x1005e1ca
push str.alt_path_error
mov ecx, ebx
call fcn.1005c62c
mov eax, dword [ebx + 0x58]
test eax, eax
jl 0x1005e1e0
cmp eax, 0x3e
jg 0x1005e1e0
push str.SKIP_possible_BadCmd
jmp 0x1005ee06
lea ecx, [ebx + 0x1c]
call fcn.100613e4
push dword [ebp - 0x28]
mov esi, eax
mov ecx, ebx
push esi
call fcn.1005d258
mov eax, dword [ebp - 0x24]
mov dword [esi + 0xc], eax
mov eax, dword [ebp - 0x20]
mov dword [esi + 0x20], eax
mov byte [esi + 5], 1
jmp 0x1005f9bd
cmp byte [ebp - 0x4d], 0
je 0x1005e25d
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x2c]
dec ecx
cmp eax, ecx
je 0x1005e22e
mov ecx, dword [ebp - 0x44]
mov eax, dword [ecx + eax*4 + 4]
test eax, eax
je 0x1005e25d
cmp eax, 1
je 0x1005e25d
push str.FunctionEnd
mov ecx, ebx
call fcn.1005c6a9
mov eax, dword [ebp - 0x2c]
inc eax
cmp eax, dword [ebp - 0xcc]
jne 0x1005e24d
mov ecx, ebx
call fcn.1005c671
mov ecx, ebx
call fcn.1005c67c
and byte [ebp - 0x4d], 0
jmp 0x1005f9bd
cmp byte [ebp - 0xd], 0
jne 0x1005f9bd
cmp byte [ebp - 0xe], 0
je 0x1005e295
mov ecx, dword [ebp - 0x38]
lea eax, [edi + edi*2]
lea eax, [ecx + eax*8]
mov ecx, dword [eax + 0xc]
add ecx, dword [eax + 8]
cmp ecx, dword [ebp - 0x2c]
jne 0x1005e295
mov ecx, ebx
call fcn.1005c8e4
and byte [ebp - 0xe], 0
inc edi
mov dword [ebp - 0x48], edi
jmp 0x1005f9bd
push str.Return
mov ecx, ebx
call fcn.1005c692
mov ecx, ebx
call fcn.1005c67c
jmp 0x1005f9bd
cmp dword [ebp - 0x28], 0
jne 0x1005e2bd
push 0x100c46b4
jmp 0x1005f717
push str.Goto
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c330
jmp 0x1005f9bd
push dword [ebp - 0x28]
jmp 0x1005f475
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp + 8]
mov edi, dword [ebp - 0x3c]
inc eax
cmp eax, dword [ecx + 4]
jae 0x1005e50d
push dword [edi + 0x1c]
mov ecx, ebx
call fcn.1005cc28
cmp eax, 0x14
jne 0x1005e50d
mov esi, dword [edi + 0x24]
and dword [ebp - 0x34], 0
lea eax, [ebp - 0x34]
mov ecx, ebx
push eax
push 0x5c
push esi
call fcn.1005d14b
cmp eax, 0x1a
jne 0x1005e50d
push dword [edi + 0x38]
add dword [ebp - 0x34], esi
mov ecx, ebx
call fcn.1005cc28
cmp eax, 0xd
je 0x1005e33f
cmp eax, 6
jne 0x1005e50d
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp + 8]
lea eax, [ecx + 3]
cmp eax, dword [edx + 4]
mov dword [ebp - 0x30], eax
jae 0x1005e394
imul eax, eax, 0x1c
mov dword [ebp - 0x54], eax
mov eax, ecx
imul eax, eax, 0x1c
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x54]
mov ecx, ebx
sub eax, dword [ebp - 0x58]
push dword [eax + edi]
lea esi, [eax + edi]
call fcn.1005cc28
cmp eax, 0x1f
jne 0x1005e394
cmp dword [esi + 8], 0
jne 0x1005e394
cmp dword [esi + 0xc], 0
jne 0x1005e394
inc dword [ebp - 0x30]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x30]
add dword [ebp - 0x54], 0x1c
cmp ecx, dword [eax + 4]
jb 0x1005e35e
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x30]
cmp eax, dword [ecx + 4]
jae 0x1005e50d
mov esi, eax
mov ecx, ebx
sub esi, dword [ebp - 0x2c]
imul esi, esi, 0x1c
push dword [esi + edi]
add esi, edi
call fcn.1005cc28
cmp eax, 0x2c
jne 0x1005e50d
push dword [edi + 0x24]
mov ecx, ebx
push dword [esi + 4]
call fcn.1005be25
test al, al
je 0x1005e50d
cmp dword [esi + 0xc], 0
jne 0x1005e50d
lea ecx, [ebp - 0xa0]
call fcn.10001c73
push dword [ebp - 0x34]
lea eax, [ebp - 0xa0]
mov ecx, ebx
mov byte [ebp - 4], 6
push eax
call fcn.1005c02e
mov eax, dword [ebp - 0x9c]
cmp eax, 4
jb 0x1005e43f
mov ecx, dword [ebp - 0xa0]
mov edx, str..dll
lea ecx, [ecx + eax - 4]
call fcn.1000193e
test al, al
je 0x1005e43f
mov ecx, dword [ebp - 0x9c]
lea eax, [ecx - 4]
cmp eax, ecx
jae 0x1005e43f
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0x9c], eax
and byte [ecx + eax], 0
push 0x100c46a0
lea ecx, [ebp - 0xa0]
call fcn.10001e7f
lea ecx, [ebp - 0xb8]
call fcn.10001c73
push dword [esi + 8]
lea eax, [ebp - 0xb8]
mov ecx, ebx
mov byte [ebp - 4], 7
push eax
call fcn.1005c02e
lea eax, [ebp - 0xb8]
lea ecx, [ebp - 0xa0]
push eax
call fcn.10001ec1
lea eax, [ebp - 0xa0]
mov ecx, ebx
push eax
call fcn.1005c16f
cmp dword [esi + 0x10], 1
jne 0x1005e4a1
push str.__NOUNLOAD
mov ecx, ebx
call fcn.1000124a
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
dec eax
lea edx, [ecx + 3]
cmp eax, edx
jb 0x1005e4da
imul ecx, ecx, 0x1c
mov esi, eax
sub eax, edx
imul esi, esi, 0x1c
inc eax
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x54], eax
mov eax, esi
mov ecx, ebx
sub eax, dword [ebp - 0x58]
push dword [eax + edi + 4]
add eax, edi
call fcn.1005c1ec
sub esi, 0x1c
dec dword [ebp - 0x54]
jne 0x1005e4c0
mov ecx, ebx
call fcn.1005c930
push 1
mov ecx, ebx
call fcn.1005c5e0
mov eax, dword [ebp - 0x30]
push dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0x40], eax
call fcn.100032c4
push dword [ebp - 0xa0]
mov byte [ebp - 4], 3
call fcn.100032c4
pop ecx
pop ecx
push dword [edi + 0x1c]
mov ecx, ebx
call fcn.1005cc28
cmp eax, 0xd
jne 0x1005e55d
cmp dword [edi + 0x20], eax
jne 0x1005e55d
cmp dword [edi + 0x28], 0
je 0x1005e55d
mov eax, dword [ebp - 0x28]
test eax, eax
jle 0x1005e55d
mov ecx, dword [ebp - 0x44]
test byte [ecx + eax*4 - 4], 0x80
je 0x1005e55d
push str.InitPluginsDir
mov ecx, ebx
call fcn.1000124a
mov ecx, ebx
call fcn.1005c67c
push 1
mov ecx, ebx
call fcn.1005c5e0
mov eax, dword [ebp - 0x2c]
add eax, 2
mov dword [ebp - 0x40], eax
push str.Call
mov ecx, ebx
call fcn.1000124a
mov eax, dword [ebp - 0x28]
test eax, eax
jge 0x1005e582
or ecx, 0xffffffff
sub ecx, eax
push ecx
mov ecx, ebx
call fcn.1005b628
jmp 0x1005f9bd
jne 0x1005e592
push 0x30
mov ecx, ebx
call fcn.100011e2
jmp 0x1005f9bd
cmp dword [ebp - 0x24], 1
lea esi, [eax - 1]
jne 0x1005e5b1
push 0x3a
mov ecx, ebx
call fcn.100011e2
push esi
mov ecx, ebx
call fcn.1005c314
jmp 0x1005f9bd
push esi
mov ecx, ebx
push dword [ebp - 0x44]
call fcn.1005c28e
jmp 0x1005f9bd
cmp dword [ebp - 0x28], 8
jne 0x1005e5d7
cmp dword [ebp - 0x24], 0
jne 0x1005e5d7
push str._show
jmp 0x1005f717
cmp dword [ebp - 0x24], 8
jne 0x1005e5ed
cmp dword [ebp - 0x28], 0
jne 0x1005e5ed
push str._hide
jmp 0x1005f717
push 2
lea esi, [ebp - 0x28]
pop edi
mov ecx, ebx
call fcn.1005c5cd
push dword [esi]
mov ecx, ebx
call fcn.1005c4d4
add esi, 4
dec edi
jne 0x1005e5f3
jmp 0x1005f9bd
lea ecx, [ebp - 0xc4]
call fcn.10001c73
push dword [ebp - 0x24]
lea eax, [ebp - 0xc4]
mov ecx, ebx
mov byte [ebp - 4], 8
push eax
call fcn.1005c02e
push 2
pop esi
cmp dword [ebp - 0x28], esi
jne 0x1005e672
xor edi, edi
cmp dword [ebp - 0x20], edi
jne 0x1005e674
cmp dword [ebp - 0xc0], 1
jne 0x1005e656
mov eax, dword [ebp - 0xc4]
cmp byte [eax], 0x30
mov eax, str.ClearErrors
je 0x1005e65b
mov eax, str.SetErrors
push eax
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0xc4]
mov byte [ebp - 4], 3
jmp 0x1005f816
xor edi, edi
push 0x100c4650
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c53a
cmp dword [ebp - 0x20], edi
je 0x1005e696
push str._lastused
jmp 0x1005e65c
mov ecx, dword [ebp - 0xc4]
lea edx, [ebp - 0x5c]
call fcn.1005fd04
test al, al
je 0x1005e77f
mov eax, dword [ebp - 0x28]
sub eax, edi
je 0x1005e758
dec eax
je 0x1005e740
sub eax, 3
je 0x1005e758
sub eax, 4
je 0x1005e728
sub eax, 4
je 0x1005e70c
dec eax
jne 0x1005e77f
mov eax, dword [ebp - 0x5c]
cmp eax, edi
jne 0x1005e6e9
mov esi, str.both
jmp 0x1005e76c
cmp eax, esi
jne 0x1005e6f4
mov esi, str.textonly
jmp 0x1005e76c
cmp eax, 4
jne 0x1005e700
mov esi, str.listonly
jmp 0x1005e76c
cmp eax, 6
jne 0x1005e77f
mov esi, str.none
jmp 0x1005e76c
cmp dword [ebp - 0x5c], edi
jne 0x1005e718
mov esi, 0x100c4618
jmp 0x1005e76c
cmp dword [ebp - 0x5c], 0x100
jne 0x1005e77f
mov esi, 0x100c3fb8
jmp 0x1005e76c
cmp dword [ebp - 0x5c], esi
jae 0x1005e77f
cmp dword [ebp - 0x5c], edi
jne 0x1005e739
mov esi, str.normal
jmp 0x1005e76c
mov esi, str.silent
jmp 0x1005e76c
cmp dword [ebp - 0x5c], esi
jae 0x1005e77f
cmp dword [ebp - 0x5c], edi
jne 0x1005e751
mov esi, str.current
jmp 0x1005e76c
mov esi, 0x100c45fc
jmp 0x1005e76c
cmp dword [ebp - 0x5c], esi
jae 0x1005e77f
cmp dword [ebp - 0x5c], edi
mov esi, str.false
je 0x1005e76c
mov esi, str.true
cmp esi, edi
je 0x1005e77f
push 0x20
mov ecx, ebx
call fcn.100011e2
push esi
jmp 0x1005e65c
lea eax, [ebp - 0xc4]
mov ecx, ebx
push eax
call fcn.1005c1d5
jmp 0x1005e663
push dword [ebp - 0x20]
mov ecx, ebx
call fcn.1005c53a
lea eax, [ebp - 0x28]
jmp 0x1005eccf
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c53a
push dword [ebp - 0x28]
jmp 0x1005f911
cmp dword [ebp - 0x20], 0
je 0x1005e7c9
push dword [0x100c3494]
mov ecx, ebx
call fcn.1000124a
lea eax, [ebp - 0x28]
push 2
push eax
mov ecx, ebx
call fcn.1005c21d
cmp dword [ebp - 0x1c], 0
je 0x1005f9bd
mov ecx, ebx
call fcn.1005c605
jmp 0x1005f4f4
cmp dword [ebp - 0x20], 0
jne 0x1005e7fe
push str.__SHORT
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005b65a
jmp case.0x1005dcd4.6
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
lea ecx, [ebp - 0x154]
call fcn.10001c73
push dword [ebp - 0x24]
lea eax, [ebp - 0x154]
mov ecx, ebx
mov byte [ebp - 4], 9
push eax
call fcn.1005c02e
push str._TEMP
push dword [ebp - 0x154]
call sub.MSVCRT.dll_strcmp
test eax, eax
setne al
pop ecx
test al, al
pop ecx
je 0x1005e860
lea eax, [ebp - 0x154]
mov ecx, ebx
push eax
call fcn.1005c1d5
push dword [ebp - 0x154]
mov byte [ebp - 4], 3
jmp 0x1005f816
test byte [ebp - 0x24], 4
jmp 0x1005e8e8
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c99f
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c1ec
mov esi, dword [ebp - 0x28]
shr esi, 0x15
je 0x1005e8a5
push str.__SD
mov ecx, ebx
call fcn.1000124a
push esi
mov ecx, ebx
call fcn.1005c39e
push 2
lea esi, [ebp - 0x20]
pop edi
mov eax, dword [esi]
test eax, eax
je 0x1005e8c3
push eax
mov ecx, ebx
call fcn.1005c39e
push dword [esi + 4]
mov ecx, ebx
call fcn.1005c35c
add esi, 8
dec edi
jne 0x1005e8ab
jmp 0x1005f9bd
mov eax, dword [ebp - 0x24]
test al, 2
mov dword [ebp - 0x58], eax
je 0x1005e8e4
push 0x100c45d8
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x58], 4
je case.0x1005dcd4.6
push dword [0x100c3494]
jmp 0x1005ddaf
cmp dword [ebp - 0x18], 0
je 0x1005e908
push 0x53
mov ecx, ebx
call fcn.100011e2
lea eax, [ebp - 0x28]
push 2
push eax
mov ecx, ebx
call fcn.1005c21d
lea eax, [ebp - 0x20]
jmp 0x1005eccf
cmp dword [ebp - 0x20], 0
mov eax, str.ReadEnvStr
jne 0x1005e92d
mov eax, str.ExpandEnvStrings
push eax
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
lea ecx, [ebp - 0xdc]
call fcn.10001c73
push dword [ebp - 0x24]
lea eax, [ebp - 0xdc]
mov ecx, ebx
mov byte [ebp - 4], 0xa
push eax
call fcn.1005c02e
cmp dword [ebp - 0x20], 0
je 0x1005e99a
mov ecx, dword [ebp - 0xd8]
cmp ecx, 2
jb 0x1005e99a
mov eax, dword [ebp - 0xdc]
cmp byte [eax], 0x25
jne 0x1005e99a
cmp byte [eax + ecx - 1], 0x25
jne 0x1005e99a
dec ecx
push 0
mov dword [ebp - 0xd8], ecx
and byte [eax + ecx], 0
lea ecx, [ebp - 0xdc]
call fcn.100020cf
lea eax, [ebp - 0xdc]
mov ecx, ebx
push eax
call fcn.1005c1d5
push dword [ebp - 0xdc]
mov byte [ebp - 4], 3
jmp 0x1005f816
cmp dword [ebp - 0x14], 0
je 0x1005e9c6
push 0x55
mov ecx, ebx
call fcn.100011e2
lea eax, [ebp - 0x28]
push 2
push eax
mov ecx, ebx
call fcn.1005c21d
push dword [ebp - 0x20]
mov ecx, ebx
call fcn.1005c35c
cmp dword [ebp - 0x1c], 0
jne 0x1005e9ed
cmp dword [ebp - 0x18], 0
je 0x1005f9bd
lea eax, [ebp - 0x1c]
jmp 0x1005eccf
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
mov eax, dword [ebp - 0x1c]
cmp eax, 0xd
jae 0x1005ea12
mov cl, byte [eax + str.______]
mov byte [ebp - 0x64], cl
jmp 0x1005ea16
mov byte [ebp - 0x64], 0x3f
cmp eax, 8
jb 0x1005ea28
cmp eax, 0xa
je 0x1005ea28
mov cl, byte [ebp - 0x64]
mov byte [ebp - 0x78], cl
jmp 0x1005ea2c
and byte [ebp - 0x78], 0
push dword [ebp - 0x24]
xor ecx, ecx
cmp eax, 7
setne cl
inc ecx
mov esi, ecx
mov ecx, ebx
call fcn.1005c1ec
cmp esi, 2
jne 0x1005ea6b
cmp byte [ebp - 0x64], 0x5e
jne 0x1005ea6b
push str.0xFFFFFFFF
mov ecx, ebx
push dword [ebp - 0x20]
call fcn.1005c3d9
test al, al
je 0x1005ea6b
push 0x100c4594
mov ecx, ebx
call fcn.1000124a
mov ecx, ebx
call fcn.1005c5cd
push dword [ebp - 0x64]
mov ecx, ebx
call fcn.100011e2
cmp esi, 1
je 0x1005f9bd
cmp byte [ebp - 0x78], 0
je 0x1005ea95
push dword [ebp - 0x78]
mov ecx, ebx
call fcn.100011e2
push dword [ebp - 0x20]
jmp 0x1005f4f7
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push 2
lea eax, [ebp - 0x24]
jmp 0x1005f60d
cmp dword [ebp - 0x20], 0
je 0x1005eadc
push str.Exch
mov ecx, ebx
call fcn.1000124a
cmp dword [ebp - 0x20], 1
je 0x1005f9bd
push dword [ebp - 0x20]
mov ecx, ebx
call fcn.1005b671
jmp 0x1005f9bd
cmp dword [ebp - 0x24], 0
je 0x1005eaf3
push 0x100c4588
mov ecx, ebx
call fcn.1000124a
jmp case.0x1005dcd4.54
mov eax, dword [ebp - 0x44]
mov esi, dword [ebp - 0x2c]
push 2
pop edx
lea ecx, [eax + esi*4 + 4]
call fcn.1005fce6
test al, al
je 0x1005eb61
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0x1c], 0x1f
jne 0x1005eb61
cmp dword [eax + 0x28], 1
jne 0x1005eb61
cmp dword [eax + 0x38], 0x1f
jne 0x1005eb61
cmp dword [eax + 0x40], 0
je 0x1005eb61
push dword [eax + 0x3c]
mov ecx, ebx
push dword [ebp - 0x28]
call fcn.1005d1bc
test al, al
je 0x1005eb61
push str.Exch
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
mov ecx, ebx
call fcn.1005c930
push 1
mov ecx, ebx
call fcn.1005c5e0
add esi, 3
mov dword [ebp - 0x40], esi
push str.Push
jmp 0x1005ddaf
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c1ec
push 3
jmp 0x1005dee7
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c1ec
lea ecx, [ebp - 0x16c]
call fcn.10001c73
push dword [ebp - 0x20]
lea eax, [ebp - 0x16c]
mov ecx, ebx
mov byte [ebp - 4], 0xb
push eax
call fcn.1005c02e
mov ecx, dword [ebp - 0x16c]
lea edx, [ebp - 0x80]
call fcn.1005fd04
test al, al
je 0x1005ec0a
cmp dword [ebp - 0x80], 0xc
je 0x1005ebe2
cmp dword [ebp - 0x80], 0x10
je 0x1005ebdb
cmp dword [ebp - 0x80], 0x30
jne 0x1005ec0a
mov esi, str.SETFONT
jmp 0x1005ebe7
mov esi, str.CLOSE
jmp 0x1005ebe7
mov esi, str.SETTEXT
test esi, esi
je 0x1005ec0a
push str.__WM_
mov ecx, ebx
call fcn.1000124a
push esi
mov ecx, ebx
call fcn.1000124a
push 0x7d
mov ecx, ebx
call fcn.100011e2
jmp 0x1005ec18
lea eax, [ebp - 0x16c]
mov ecx, ebx
push eax
call fcn.1005c1d5
mov eax, dword [ebp - 0x14]
xor edi, edi
mov dword [ebp - 0x34], eax
lea esi, [ebp - 0x1c]
lea ecx, [ebp - 0x13c]
call fcn.10001c73
push 1
mov ecx, edi
pop eax
mov byte [ebp - 4], 0xc
shl eax, cl
mov ecx, dword [ebp - 0x34]
test ecx, eax
je 0x1005ec50
push str.STR:
lea ecx, [ebp - 0x13c]
call fcn.10001e7f
push dword [esi]
lea eax, [ebp - 0x13c]
mov ecx, ebx
push eax
call fcn.1005c02e
lea eax, [ebp - 0x13c]
mov ecx, ebx
push eax
call fcn.1005c1d5
push dword [ebp - 0x13c]
mov byte [ebp - 4], 0xb
call fcn.100032c4
inc edi
add esi, 4
cmp edi, 2
pop ecx
jb 0x1005ec23
cmp dword [ebp - 0x28], 0
jl 0x1005ec97
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
shr dword [ebp - 0x34], 2
je 0x1005ecb3
push str.__TIMEOUT
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x34]
mov ecx, ebx
call fcn.1005b390
push dword [ebp - 0x16c]
mov byte [ebp - 4], 3
jmp 0x1005f816
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
lea eax, [ebp - 0x24]
push eax
mov ecx, ebx
call fcn.1005c37b
jmp 0x1005f9bd
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
mov ecx, dword [ebx + 0x34]
mov eax, dword [ebx + 0x88]
cmp ecx, eax
jb 0x1005ee01
sub ecx, eax
cmp ecx, dword [ebp - 0x24]
jb 0x1005ee01
sub ecx, dword [ebp - 0x24]
cmp ecx, 0x18
jb 0x1005ee01
mov ecx, dword [ebx + 0x14]
add eax, ecx
lea ecx, [ebp - 0x130]
add eax, dword [ebp - 0x24]
push eax
call fcn.1005c422
test byte [ebp - 0x11c], 0xa
je 0x1005ed37
push str.__BRANDING
mov ecx, ebx
call fcn.1000124a
lea ecx, [ebp - 0x148]
call fcn.10001c73
and byte [ebp - 0xd], 0
cmp dword [ebp - 0x120], 1
mov byte [ebp - 4], 0xd
jne 0x1005ed65
push str._transparent
lea ecx, [ebp - 0x148]
call fcn.10001e7f
jmp 0x1005ed84
test byte [ebp - 0x11c], 0x10
je 0x1005ed84
test byte [ebp - 0x11c], 8
jne 0x1005ed84
test byte [ebp - 0x11c], 4
je 0x1005ed84
mov byte [ebp - 0xd], 1
test byte [ebp - 0x11c], 1
jne 0x1005ed9c
cmp dword [ebp - 0x144], 0
jne 0x1005ed9c
cmp byte [ebp - 0xd], 0
je 0x1005edcb
mov ecx, ebx
call fcn.1005c5cd
test byte [ebp - 0x11c], 2
jne 0x1005edc4
test byte [ebp - 0x11c], 1
je 0x1005edc4
push dword [ebp - 0x130]
mov ecx, ebx
call fcn.1005c4b8
jmp 0x1005edcb
mov ecx, ebx
call fcn.1005c687
push dword [ebp - 0x148]
mov ecx, ebx
call fcn.1000124a
cmp byte [ebp - 0xd], 0
je 0x1005edf2
mov ecx, ebx
call fcn.1005c5cd
push dword [ebp - 0x12c]
mov ecx, ebx
call fcn.1005c4b8
push dword [ebp - 0x148]
mov byte [ebp - 4], 3
jmp 0x1005f816
push str.bad_offset
mov ecx, ebx
call fcn.1005c62c
jmp 0x1005f9bd
push str.__IMGID
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005b390
cmp dword [ebp - 0x20], 1
jne case.0x1005dcd4.6
push str.__RESIZETOFIT
jmp 0x1005ddaf
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c1ec
lea eax, [ebp - 0x20]
push 2
push eax
mov ecx, ebx
call fcn.1005c256
test byte [ebp - 0x18], 1
je 0x1005ee6f
push str.__ITALIC
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x18], 2
je 0x1005ee81
push str.__UNDERLINE
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x18], 4
je 0x1005f9bd
push str.__STRIKE
jmp 0x1005f717
lea ecx, [ebp - 0x160]
call fcn.10001c73
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0xe
call fcn.10001c73
push dword [ebp - 0x28]
lea eax, [ebp - 0x160]
mov ecx, ebx
mov byte [ebp - 4], 0xf
push eax
call fcn.1005c02e
push dword [ebp - 0x24]
lea eax, [ebp - 0xac]
mov ecx, ebx
push eax
call fcn.1005c02e
xor esi, esi
cmp dword [ebp - 0x1c], esi
je 0x1005eee6
push str.EnableWindow
jmp 0x1005efd6
mov ecx, dword [ebp - 0xac]
and byte [ebp - 0xd], 0
lea edx, [ebp - 0x4c]
call fcn.1005fd04
test al, al
je 0x1005ef40
cmp dword [ebp - 0x4c], 0xc
jae 0x1005ef40
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xa8], esi
push 0x100c44d0
lea ecx, [ebp - 0xac]
and byte [eax], 0
call fcn.10001e7f
mov edx, dword [ebp - 0x4c]
lea ecx, [ebp - 0xac]
call fcn.1005fd3f
push 0x7d
lea ecx, [ebp - 0xac]
call fcn.10001e48
mov byte [ebp - 0xd], 1
mov al, byte [ebx + 0x55]
mov ecx, ebx
neg al
sbb eax, eax
and al, 0xfe
add eax, 0x1d
push eax
push dword [ebp - 0x28]
call fcn.1005d1bc
cmp dword [ebp - 0x20], esi
je 0x1005ef97
cmp byte [ebp - 0xd], 0
je 0x1005efd1
cmp dword [ebp - 0x4c], esi
jne 0x1005ef97
test al, al
je 0x1005ef97
push str.HideWindow
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0xac]
call fcn.100032c4
push dword [ebp - 0x160]
mov byte [ebp - 4], 3
call fcn.100032c4
pop ecx
jmp 0x1005f81b
cmp byte [ebp - 0xd], 0
je 0x1005efd1
cmp dword [ebp - 0x4c], 5
jne 0x1005efd1
test al, al
je 0x1005efd1
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp + 8]
inc eax
cmp eax, dword [ecx + 4]
jae 0x1005efd1
mov eax, dword [ebp - 0x3c]
mov ecx, ebx
push dword [eax + 0x1c]
call fcn.1005cc28
cmp eax, 8
jne 0x1005efd1
push str.___
mov ecx, ebx
call fcn.1000124a
push str.ShowWindow
mov ecx, ebx
call fcn.1000124a
lea eax, [ebp - 0x160]
mov ecx, ebx
push eax
call fcn.1005c1d5
lea eax, [ebp - 0xac]
mov ecx, ebx
push eax
call fcn.1005c1d5
jmp 0x1005ef77
lea eax, [ebp - 0x28]
push 2
push eax
mov ecx, ebx
call fcn.1005c21d
cmp dword [ebp - 0x20], 0
jne 0x1005f017
cmp dword [ebp - 0x1c], 1
je 0x1005f038
push dword [ebp - 0x20]
mov ecx, ebx
call fcn.1005c1ec
cmp dword [ebp - 0x1c], 1
je 0x1005f038
mov ecx, ebx
call fcn.1005c5cd
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.1005c4d4
cmp dword [ebp - 0x14], 0
je 0x1005f9bd
push 0x100c44a8
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x14]
jmp 0x1005f4f7
cmp dword [ebp - 0x20], 0
je 0x1005f068
push str.Wait
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
cmp dword [ebp - 0x20], 0
je 0x1005f9bd
cmp dword [ebp - 0x24], 0
jl 0x1005f9bd
jmp 0x1005f90e
push dword [ebp - 0x20]
mov ecx, ebx
call fcn.1005c1ec
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
jmp 0x1005f90e
lea ecx, [ebp - 0x118]
call fcn.10001c73
push dword [ebp - 0x24]
lea eax, [ebp - 0x118]
mov ecx, ebx
mov byte [ebp - 4], 0x10
push eax
call fcn.1005c02e
cmp dword [ebp - 0x20], 0
mov byte [ebp - 0xd], 1
jne 0x1005f0f8
push str.CallInstDLL
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
cmp dword [ebp - 0x1c], 1
jne 0x1005f160
push str.__NOUNLOAD
mov ecx, ebx
call fcn.1000124a
jmp 0x1005f160
push str.DllUnregisterServer
push dword [ebp - 0x118]
call sub.MSVCRT.dll_strcmp
neg eax
sbb al, al
pop ecx
inc al
pop ecx
mov byte [ebp - 0x69], al
je 0x1005f123
push str.UnRegDLL
mov ecx, ebx
call fcn.1000124a
jmp 0x1005f14c
push str.RegDLL
mov ecx, ebx
call fcn.1000124a
push str.DllRegisterServer
push dword [ebp - 0x118]
call sub.MSVCRT.dll_strcmp
neg eax
sbb al, al
pop ecx
inc al
pop ecx
mov byte [ebp - 0x69], al
je 0x1005f150
and byte [ebp - 0xd], 0
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
cmp byte [ebp - 0xd], 0
je 0x1005f16e
lea eax, [ebp - 0x118]
mov ecx, ebx
push eax
call fcn.1005c1d5
push dword [ebp - 0x118]
mov byte [ebp - 4], 3
jmp 0x1005f816
push 4
mov dword [ebp - 0x30], 6
lea eax, [ebp - 0x14]
pop esi
cmp dword [eax], 0
jne 0x1005f19a
dec dword [ebp - 0x30]
sub eax, esi
cmp dword [ebp - 0x30], 2
ja 0x1005f18a
mov edi, dword [ebp - 0x18]
test edi, 0x8000
mov dword [ebp - 0x58], edi
je 0x1005f1b4
push str.__NoWorkingDir
mov ecx, ebx
call fcn.1000124a
mov eax, dword [ebp - 0x30]
cmp eax, esi
jbe 0x1005f1bd
mov eax, esi
push eax
lea eax, [ebp - 0x28]
push eax
mov ecx, ebx
call fcn.1005c21d
cmp dword [ebp - 0x30], esi
jbe 0x1005f9bd
mov esi, edi
mov ecx, ebx
and esi, 0xff
call fcn.1005c5cd
test esi, esi
je 0x1005f1ef
push esi
mov ecx, ebx
call fcn.1005b390
jmp 0x1005f1f6
mov ecx, ebx
call fcn.1005c687
test edi, 0xffffff00
jne 0x1005f208
cmp dword [ebp - 0x30], 6
jb 0x1005f9bd
mov esi, edi
mov ecx, ebx
shr esi, 8
and esi, 0x7f
call fcn.1005c5cd
cmp esi, 7
jne 0x1005f21f
push 2
pop esi
test esi, esi
jne 0x1005f22c
mov ecx, ebx
call fcn.1005c687
jmp 0x1005f234
push esi
mov ecx, ebx
call fcn.1005c4d4
push 0
pop eax
mov al, byte [ebp - 0x56]
shr edi, 0x18
mov dword [ebp - 0x34], edi
mov esi, eax
jne 0x1005f265
test esi, esi
jne 0x1005f265
cmp dword [ebp - 0x30], 6
jb 0x1005f9bd
mov ecx, ebx
call fcn.1005c5cd
mov ecx, ebx
call fcn.1005c687
jmp 0x1005f301
mov ecx, ebx
call fcn.1005c5cd
test byte [ebp - 0x34], 1
je 0x1005f27e
push str.SHIFT
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x34], 2
je 0x1005f290
push str.CONTROL
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x34], 4
je 0x1005f2a2
push str.ALT
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x34], 8
je 0x1005f2b4
push str.EXT
mov ecx, ebx
call fcn.1000124a
cmp esi, 0x70
jb 0x1005f2cf
cmp esi, 0x87
ja 0x1005f2cf
push 0x46
mov ecx, ebx
call fcn.100011e2
add esi, 0xffffff91
jmp 0x1005f2f9
cmp esi, 0x41
jb 0x1005f2d9
cmp esi, 0x5a
jbe 0x1005f2e3
cmp esi, 0x30
jb 0x1005f2ed
cmp esi, 0x39
ja 0x1005f2ed
push esi
mov ecx, ebx
call fcn.100011e2
jmp 0x1005f301
push str.Char_
mov ecx, ebx
call fcn.1000124a
push esi
mov ecx, ebx
call fcn.1005b390
push dword [ebp - 0x14]
jmp 0x1005f475
test byte [ebp - 0x20], 4
je 0x1005f31b
push str.__SILENT
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x20], 0x80
je 0x1005f32d
push str.__FILESONLY
mov ecx, ebx
call fcn.1000124a
lea eax, [ebp - 0x28]
push 2
push eax
mov ecx, ebx
call fcn.1005c21d
cmp dword [ebp - 0x1c], 0
je 0x1005f9bd
push 0x100c44a8
mov ecx, ebx
call fcn.1000124a
jmp 0x1005f4f4
cmp dword [ebp - 0x28], 0xbadf00d
je 0x1005f368
push str.___Corrupted____
jmp 0x1005f717
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp + 8]
inc eax
cmp eax, dword [ecx + 4]
jae 0x1005f9bd
mov eax, dword [ebp - 0x3c]
mov ecx, ebx
push dword [eax + 0x1c]
call fcn.1005cc28
cmp eax, 4
jne 0x1005f9bd
mov eax, dword [ebp - 0x2c]
add eax, 2
mov dword [ebp - 0x40], eax
jmp 0x1005f9bd
xor esi, esi
cmp dword [ebp - 0x28], esi
jne 0x1005f3b1
push str.FlushINI
mov ecx, ebx
call fcn.1000124a
jmp 0x1005f3ed
cmp dword [ebp - 0x18], esi
je 0x1005f3c6
push str.WriteINIStr
mov ecx, ebx
call fcn.1000124a
push 3
jmp 0x1005f3ec
push str.DeleteINI
mov ecx, ebx
call fcn.1000124a
cmp dword [ebp - 0x24], 0
mov eax, 0x100c43c8
je 0x1005f3e2
mov eax, 0x100c43c4
push eax
mov ecx, ebx
call fcn.1000124a
push 1
pop esi
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.1005c1ec
lea eax, [ebp - 0x28]
push esi
push eax
mov ecx, ebx
call fcn.1005c21d
push 3
pop eax
sub eax, esi
push eax
lea eax, [ebp + esi*4 - 0x28]
push eax
mov ecx, ebx
call fcn.1005c256
jmp 0x1005f9bd
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.1005c1ec
jmp 0x1005eaa7
cmp dword [ebp - 0x18], 0
jne 0x1005f440
push str.Value
jmp 0x1005f457
push 0x100c43b8
mov ecx, ebx
call fcn.1000124a
test byte [ebp - 0x18], 2
je 0x1005f45e
push str.__ifempty
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c090
push dword [ebp - 0x20]
mov ecx, ebx
call fcn.1005c1ec
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.1005c243
jmp 0x1005f9bd
mov eax, dword [ebp - 0x18]
xor esi, esi
dec eax
je 0x1005f4b5
dec eax
je 0x1005f4c6
dec eax
je 0x1005f4ae
dec eax
je 0x1005f4a7
push 0x3f
mov ecx, ebx
call fcn.100011e2
push dword [ebp - 0x18]
mov ecx, ebx
call fcn.1005b390
jmp 0x1005f4ba
mov esi, str.DWORD
jmp 0x1005f4cb
mov esi, 0x100c43a0
jmp 0x1005f4cb
mov esi, 0x100c43c4
cmp dword [ebp - 0x18], 1
jne 0x1005f4cb
cmp dword [ebp - 0x14], 2
jne 0x1005f4cb
mov esi, str.ExpandStr
test esi, esi
je 0x1005f4d7
push esi
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c090
lea eax, [ebp - 0x24]
push 2
push eax
mov ecx, ebx
call fcn.1005c21d
cmp dword [ebp - 0x18], 3
je 0x1005f503
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.1005c1ec
jmp 0x1005f9bd
mov ecx, ebx
call fcn.1005c5cd
mov eax, dword [ebx + 0x98]
mov edx, dword [ebp - 0x1c]
cmp eax, 4
mov edi, edx
jb 0x1005f5a0
mov ecx, dword [ebx + 0x90]
lea esi, [eax - 4]
cmp ecx, esi
ja 0x1005f5a0
sub eax, ecx
lea esi, [eax - 4]
cmp edx, esi
ja 0x1005f5a0
mov esi, dword [ebx + 0x9c]
sub eax, edx
add esi, edx
sub eax, 4
add esi, ecx
mov ecx, dword [esi]
cmp ecx, eax
mov dword [ebp - 0x58], ecx
ja 0x1005f5a0
and dword [ebp - 0x34], 0
test ecx, ecx
jbe 0x1005f9bd
mov eax, dword [ebp - 0x34]
movzx edi, byte [esi + eax + 4]
mov eax, edi
shr eax, 4
cmp eax, 0xa
jae 0x1005f56f
add eax, 0x30
jmp 0x1005f572
add eax, 0x37
push eax
mov ecx, ebx
call fcn.100011e2
and edi, 0xf
cmp edi, 0xa
lea eax, [edi + 0x30]
jb 0x1005f588
lea eax, [edi + 0x37]
push eax
mov ecx, ebx
call fcn.100011e2
inc dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x58]
jb 0x1005f558
jmp 0x1005f9bd
push str.data_
mov ecx, ebx
call fcn.1000124a
push edi
mov ecx, ebx
call fcn.1005b390
push str._...__
mov ecx, ebx
call fcn.1000124a
push str.________Unsupported
jmp 0x1005f717
cmp dword [ebp - 0x18], 1
mov eax, str.DWORD
je 0x1005f5ec
mov eax, 0x100c43c4
jmp 0x1005f5ec
cmp dword [ebp - 0x18], 0
mov eax, 0x100c43b8
jne 0x1005f5ec
mov eax, str.Value
push eax
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c090
push 2
lea eax, [ebp - 0x20]
push eax
mov ecx, ebx
call fcn.1005c21d
jmp 0x1005f9bd
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x1c]
mov ecx, ebx
call fcn.1005c1ec
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
test ecx, ecx
mov esi, ecx
mov edi, eax
jne 0x1005f644
test eax, eax
je 0x1005f9bd
mov edx, SysReAllocStringLen
cmp ecx, edx
jne 0x1005f658
cmp eax, 3
jne 0x1005f658
mov byte [ebp - 0x74], 0x72
jmp 0x1005f67c
cmp eax, 2
jne 0x1005f66b
cmp ecx, 0x40000000
jne 0x1005f68b
mov byte [ebp - 0x74], 0x77
jmp 0x1005f67c
cmp eax, 4
jne 0x1005f68b
cmp ecx, 0xc0000000
jne 0x1005f68b
mov byte [ebp - 0x74], 0x61
mov ecx, ebx
call fcn.1005c5cd
push dword [ebp - 0x74]
jmp 0x1005e586
test edx, ecx
je 0x1005f69b
push str._GENERIC_READ
mov ecx, ebx
call fcn.1000124a
test esi, 0x40000000
je 0x1005f6af
push str._GENERIC_WRITE
mov ecx, ebx
call fcn.1000124a
test esi, 0x20000000
je 0x1005f6c3
push str._GENERIC_EXECUTE
mov ecx, ebx
call fcn.1000124a
test esi, 0x10000000
je 0x1005f6d7
push str._GENERIC_ALL
mov ecx, ebx
call fcn.1000124a
mov eax, edi
xor esi, esi
dec eax
je 0x1005f706
dec eax
je 0x1005f6ff
dec eax
je 0x1005f6f8
dec eax
je 0x1005f6f1
dec eax
jne 0x1005f70b
mov esi, str.TRUNCATE_EXISTING
jmp 0x1005f70b
mov esi, str.OPEN_ALWAYS
jmp 0x1005f70b
mov esi, str.OPEN_EXISTING
jmp 0x1005f70b
mov esi, str.CREATE_ALWAYS
jmp 0x1005f70b
mov esi, str.CREATE_NEW
mov ecx, ebx
call fcn.1005c5cd
test esi, esi
je 0x1005f723
push esi
mov ecx, ebx
call fcn.1000124a
jmp 0x1005f9bd
push edi
mov ecx, ebx
call fcn.1005b390
jmp 0x1005f9bd
cmp esi, 0x44
jne 0x1005f748
cmp dword [ebp - 0x20], 0
mov eax, str.UTF16LE
je 0x1005f745
mov eax, str.Word
push eax
jmp 0x1005f753
cmp dword [ebp - 0x20], 0
je case.0x1005dcd4.18
push str.Byte
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x24]
jmp 0x1005f4f7
cmp esi, 0x44
jne 0x1005f789
cmp dword [ebp - 0x1c], 0
mov eax, str.UTF16LE
je 0x1005f781
mov eax, str.Word
push eax
mov ecx, ebx
call fcn.1000124a
cmp dword [ebp - 0x1c], 0
je 0x1005f79b
push str.Byte
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005b65a
lea ecx, [ebp - 0xe8]
call fcn.10001c73
push dword [ebp - 0x20]
lea eax, [ebp - 0xe8]
mov ecx, ebx
mov byte [ebp - 4], 0x11
push eax
call fcn.1005c02e
mov ecx, dword [ebp - 0xe8]
lea edx, [ebp - 0x70]
call fcn.1005fd04
test al, al
je 0x1005f7fe
cmp dword [ebp - 0x70], 1
jne 0x1005f7ef
cmp dword [ebp - 0x1c], 0
je 0x1005f7fe
jmp 0x1005f80c
cmp dword [ebp - 0x70], 0x3ff
jne 0x1005f7fe
cmp dword [ebp - 0x1c], 0
je 0x1005f80c
lea eax, [ebp - 0xe8]
mov ecx, ebx
push eax
call fcn.1005c1d5
push dword [ebp - 0xe8]
mov byte [ebp - 4], 3
call fcn.100032c4
pop ecx
jmp 0x1005f9bd
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x20]
mov ecx, ebx
call fcn.1005c1ec
cmp dword [ebp - 0x1c], 1
jne 0x1005f847
push str._CUR
mov ecx, ebx
call fcn.1000124a
cmp dword [ebp - 0x1c], 2
jne 0x1005f859
push str._END
mov ecx, ebx
call fcn.1000124a
cmp dword [ebp - 0x24], 0
jl 0x1005f9bd
cmp dword [ebp - 0x1c], 0
jne 0x1005f90e
push str._SET
mov ecx, ebx
call fcn.1000124a
jmp 0x1005f90e
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005b65a
jmp case.0x1005dcd4.54
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005b65a
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005b65a
jmp 0x1005ea95
cmp dword [ebp - 0x28], 0
je 0x1005f8d2
push str.Set
mov ecx, ebx
call fcn.1000124a
cmp dword [ebp - 0x24], 0
mov eax, 0x100c3638
je 0x1005f8c8
mov eax, 0x100c363c
push eax
mov ecx, ebx
call fcn.1000124a
jmp case.0x1005dcd4.63
push str.Text
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005c1ec
cmp dword [ebp - 0x20], 0
jl 0x1005f91d
push 0x100c3eec
mov ecx, ebx
call fcn.1000124a
push dword [ebp - 0x20]
mov ecx, ebx
call fcn.1005c6c0
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
push dword [ebp - 0x24]
mov ecx, ebx
call fcn.1005b65a
jmp 0x1005f9bd
push 0x100c4650
mov ecx, ebx
call fcn.1000124a
or esi, 0xffffffff
mov ecx, ebx
sub esi, dword [ebp - 0x20]
push esi
call fcn.1005c6c0
push dword [ebp - 0x28]
mov ecx, ebx
call fcn.1005c1ec
neg esi
sbb esi, esi
and esi, 0xfffffffd
add esi, 4
push dword [ebp + esi*4 - 0x28]
jmp 0x1005f4f7
xor esi, esi
cmp dword [ebp - 0x1c], esi
jne 0x1005f970
cmp dword [ebp - 0x20], esi
jne 0x1005f967
mov eax, str.InstTypeGetText
jmp 0x1005f981
mov eax, str.InstTypeSetText
push 2
jmp 0x1005f983
cmp dword [ebp - 0x20], esi
jne 0x1005f97c
mov eax, str.GetCurInstType
jmp 0x1005f984
mov eax, str.SetCurInstType
push 1
pop esi
push eax
mov ecx, ebx
call fcn.1000124a
lea eax, [ebp - 0x28]
push esi
push eax
mov ecx, ebx
call fcn.1005c21d
cmp dword [ebp - 0x20], 0
jne 0x1005f9bd
jmp 0x1005f90e
cmp dword [ebp - 0x28], 0
mov eax, 0x100c4264
je 0x1005f9b3
mov eax, str._off
push eax
jmp 0x1005f717
and dword [ebp - 0x60], 0
push 6
lea eax, [ebp - 0x14]
pop edi
cmp dword [eax], 0
jne 0x1005f9d0
dec edi
sub eax, 4
test edi, edi
ja 0x1005f9c3
cmp edi, dword [ebp - 0x60]
jbe 0x1005fa37
push str.________Unknown_Params:
mov ecx, ebx
call fcn.1000124a
test edi, edi
jbe 0x1005f9fc
lea esi, [ebp - 0x28]
mov dword [ebp - 0x60], edi
push dword [esi]
mov ecx, ebx
call fcn.1005c1ec
add esi, 4
dec dword [ebp - 0x60]
jne 0x1005f9eb
push str.____
mov ecx, ebx
call fcn.1000124a
test edi, edi
jbe 0x1005fa37
lea esi, [ebp - 0x28]
mov ecx, ebx
call fcn.1005c5cd
mov edx, dword [esi]
cmp edx, 0xfff00000
jbe 0x1005fa29
mov ecx, ebx
call fcn.1005fc3f
jmp 0x1005fa31
push edx
mov ecx, ebx
call fcn.1005b390
add esi, 4
dec edi
jne 0x1005fa0f
mov ecx, ebx
call fcn.1005c930
inc dword [ebp - 0x2c]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x2c]
add dword [ebp - 0x3c], 0x1c
cmp ecx, dword [eax + 4]
jb 0x1005daff
cmp byte [ebp - 0xe], 0
je 0x1005fa8c
mov esi, dword [ebp - 0x48]
cmp esi, dword [ebx + 0x84]
jae 0x1005fa8c
mov ecx, dword [ebp - 0x38]
lea eax, [esi + esi*2]
lea eax, [ecx + eax*8]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 8]
lea eax, [ecx + eax + 1]
cmp eax, dword [ebp - 0x2c]
jne 0x1005fa8c
mov ecx, ebx
call fcn.1005c8e4
and byte [ebp - 0xe], 0
inc esi
mov dword [ebp - 0x48], esi
mov esi, dword [ebp - 0x48]
cmp esi, dword [ebx + 0x84]
jae 0x1005fae7
mov ecx, dword [ebp - 0x38]
lea eax, [esi + esi*2]
lea edi, [ecx + eax*8]
cmp byte [ebp - 0xe], 0
je 0x1005face
mov eax, dword [edi + 0xc]
add eax, dword [edi + 8]
cmp eax, dword [ebp - 0x2c]
je 0x1005fabd
push str.SECTION_ERROR
mov ecx, ebx
call fcn.1005c64f
mov ecx, ebx
call fcn.1005c8e4
and byte [ebp - 0xe], 0
inc esi
add edi, 0x18
jmp 0x1005fadf
push esi
push edi
mov ecx, ebx
call fcn.1005c6fc
test al, al
jne 0x1005fac8
mov byte [ebp - 0xe], 1
cmp esi, dword [ebx + 0x84]
jb 0x1005faa0
push dword [ebp - 0xf4]
call fcn.100032c4
push dword [ebp - 0x108]
call fcn.100032c4
push dword [ebp - 0x38]
call fcn.100032c4
push dword [ebp - 0x44]
call fcn.100032c4
mov ecx, dword [ebp - 0xc]
add esp, 0x10
xor eax, eax
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret 4