Function at 0x42b494
Capabilities:
Copy file

Disassembly:
push 0x98
mov eax, 0x469c18
call fcn.00463b20
mov edi, edx
mov dword [ebp - 0x4c], edi
mov ebx, ecx
mov dword [ebp - 0x24], ebx
xor eax, eax
lea ecx, [ebp - 0x7c]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
push str.ApplyXmlIniConfUpdate
call fcn.0041bb53
xor ecx, ecx
mov dword [ebp - 4], ecx
push ecx
lea ecx, [ebp - 0xa4]
call fcn.004327b3
mov byte [ebp - 4], 1
call fcn.004068d0
push eax
lea ecx, [ebp - 0x48]
call fcn.00405f99
mov byte [ebp - 4], 3
call fcn.004068d0
push eax
lea ecx, [ebp - 0x1c]
call fcn.00405f99
mov byte [ebp - 4], 5
call fcn.004068d0
push eax
lea ecx, [ebp - 0x40]
call fcn.00405f99
mov byte [ebp - 4], 7
call fcn.004068d0
push eax
lea ecx, [ebp - 0x44]
call fcn.00405f99
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x20]
call fcn.0043bcb0
lea ecx, [ebp - 0x38]
call fcn.0043bcb0
mov al, byte [0x48bcbc]
xor ecx, ecx
mov byte [ebp - 0xd], cl
mov byte [ebp - 0x39], cl
mov ecx, ebx
mov byte [ebp - 0x31], al
call fcn.0043be00
test al, al
jne 0x42b617
mov ecx, ebx
call fcn.0043fba0
cmp eax, 2
jne 0x42b617
mov ecx, ebx
call fcn.0043cda0
mov esi, eax
mov ecx, esi
call fcn.004082a0
push eax
push esi
lea ecx, [ebp - 0x48]
call fcn.00408222
lea ecx, [ebp - 0x48]
call fcn.004185e2
mov ecx, eax
call fcn.0040751e
push str.iniconf
push dword [ebp - 0x48]
call fcn.004496b9
pop ecx
pop ecx
test eax, eax
jne 0x42b617
mov esi, 0x47e1d4
lea eax, [ebp - 0x30]
push esi
push eax
mov ecx, ebx
call fcn.0043c260
lea ecx, [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
call fcn.0043be00
test al, al
je 0x42b5d3
push esi
push str._s_attribute_is_mandatory_for_iniconf_node
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0xd
jmp 0x42b61e
lea ecx, [ebp - 0x20]
call fcn.0043fbc0
mov esi, eax
mov ecx, esi
call fcn.004082a0
push eax
push esi
lea ecx, [ebp - 0x1c]
call fcn.00408222
lea ecx, [ebp - 0x1c]
call fcn.004185e2
mov ecx, eax
call fcn.0040751e
mov eax, dword [ebp - 0x1c]
cmp dword [eax - 0xc], 0
jne 0x42b681
push 0x47e1d4
push str._s_attribute_is_empty
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0x57
mov esi, dword [ebp - 0x18]
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x44]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x40]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x48]
lea ecx, [ecx - 0x10]
call fcn.00406985
xor eax, eax
mov byte [ebp - 4], al
lea ecx, [ebp - 0xa4]
call fcn.004327d5
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7c]
call fcn.0041bbc1
mov eax, esi
call fcn.00463ae9
ret
push eax
push str.Processing_iniconf_node:__s
call fcn.0041b909
pop ecx
pop ecx
push str.flags
lea eax, [ebp - 0x30]
mov ecx, ebx
push eax
call fcn.0043c260
lea ecx, [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
call fcn.0043be10
test eax, eax
je 0x42b72c
lea ecx, [ebp - 0x20]
mov bl, 1
call fcn.0043fbc0
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x14]
call fcn.0041c376
mov esi, dword [ebp - 0x14]
push 9
push str.mustexist
push esi
call fcn.00454122
add esp, 0xc
test eax, eax
jne 0x42b6e7
add esi, 0x12
mov byte [ebp - 0xd], 1
mov dword [ebp - 0x14], esi
jmp 0x42b70b
push 3
push 0x47d3dc
push esi
call fcn.00454122
add esp, 0xc
test eax, eax
jne 0x42b707
add esi, 6
mov byte [ebp - 0x31], 1
mov dword [ebp - 0x14], esi
jmp 0x42b70b
xor eax, eax
mov bl, al
test bl, bl
jne 0x42b6bc
lea ecx, [ebp - 0x14]
call fcn.0041c376
mov eax, dword [ebp - 0x14]
xor ebx, ebx
cmp word [eax], bx
je 0x42b72e
push eax
push str.Invalid_flag__s
jmp 0x42b5c3
xor ebx, ebx
push edi
push ebx
mov dl, 1
lea ecx, [ebp - 0x1c]
call fcn.0041c6b5
mov dword [ebp - 0x18], eax
pop ecx
pop ecx
test eax, eax
jne 0x42b61e
lea ecx, [ebp - 0x1c]
call fcn.0041cf88
test al, al
jne 0x42b781
lea eax, [ebp - 0x1c]
mov edx, 0x48bd88
push eax
lea ecx, [ebp - 0x30]
call fcn.0041853b
pop ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1c]
push eax
call fcn.0040764f
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx - 0x10]
call fcn.00406985
lea ecx, [ebp - 0x1c]
call fcn.0041dc42
test al, al
je 0x42b7a0
push dword [ebp - 0x1c]
push str.Destination_ini_is_already_scheduled_for_replace__using__s_destination_instead
call fcn.0041b909
pop ecx
pop ecx
mov byte [ebp - 0x31], 1
cmp byte [ebp - 0xd], 0
je 0x42b7d7
mov ecx, dword [ebp - 0x1c]
lea eax, [ebp - 0xd]
push edi
push eax
xor dl, dl
call fcn.00414b94
mov dword [ebp - 0x18], eax
pop ecx
pop ecx
test eax, eax
jne 0x42b61e
cmp byte [ebp - 0xd], al
jne 0x42b7d7
push str.Attribute_mustexist_is_specified__but_the_ini_file_is_missing__skipping
call fcn.0041b909
pop ecx
jmp 0x42b61e
push 0x5c
push dword [ebp - 0x1c]
call fcn.00441d1b
pop ecx
pop ecx
test eax, eax
je 0x42b81d
sub eax, dword [ebp - 0x1c]
sar eax, 1
cmp eax, 0xffffffff
je 0x42b81d
inc eax
lea ecx, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.00414abd
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x44]
push eax
call fcn.0040764f
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42b829
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x44]
call fcn.0040764f
lea eax, [ebp - 0x44]
push eax
lea edx, [edi + 4]
lea ecx, [ebp - 0x14]
call fcn.0041853b
mov byte [ebp - 4], 0xe
lea ecx, [edi + 8]
push ecx
mov edx, eax
lea ecx, [ebp - 0x30]
call fcn.0041853b
pop ecx
pop ecx
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x40]
push eax
call fcn.0040764f
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov ecx, dword [ebp - 0x40]
call fcn.0041d1a9
test al, al
je 0x42b889
mov byte [ebp - 0x39], 1
jmp 0x42b8da
mov ecx, dword [ebp - 0x1c]
call fcn.0041d1a9
test al, al
je 0x42b8da
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
push 9
pop ebx
push 1
push dword [ebp - 0x40]
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov esi, eax
call edi
test esi, esi
jne 0x42b8d8
cmp eax, 0x20
je 0x42b8be
cmp eax, 5
jne 0x42b8ce
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
sub ebx, 1
jns 0x42b89e
call edi
mov dword [ebp - 0x18], eax
jmp 0x42b61e
xor ebx, ebx
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x30]
push eax
call fcn.0043c7a0
lea ecx, [ebp - 0x38]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
call fcn.0043be10
test eax, eax
je 0x42be34
mov edi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
call fcn.004068d0
push eax
lea ecx, [ebp - 0x24]
call fcn.00405f99
mov byte [ebp - 4], 0x13
call fcn.004068d0
push eax
lea ecx, [ebp - 0x2c]
call fcn.00405f99
mov byte [ebp - 4], 0x15
call fcn.004068d0
push eax
lea ecx, [ebp - 0x28]
call fcn.00405f99
mov byte [ebp - 4], 0x17
call fcn.004068d0
push eax
lea ecx, [ebp - 0x14]
call fcn.00405f99
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x38]
mov bh, bl
call fcn.0043fba0
cmp eax, 2
je 0x42b98a
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42bc02
push dword [ebp - 0x4c]
lea edx, [ebp - 0xd]
lea ecx, [ebp - 0x38]
call fcn.00417a35
pop ecx
test eax, eax
je 0x42b9cf
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42bc02
cmp byte [ebp - 0xd], 0
jne 0x42ba07
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42bc02
lea ecx, [ebp - 0x38]
call fcn.0043cda0
mov esi, eax
mov ecx, esi
call fcn.004082a0
push eax
push esi
lea ecx, [ebp - 0x24]
call fcn.00408222
lea ecx, [ebp - 0x24]
call fcn.004185e2
mov ecx, eax
call fcn.0040751e
push 0x47e3a0
push dword [ebp - 0x24]
call fcn.004496b9
pop ecx
pop ecx
test eax, eax
jne 0x42bde2
push str.flags
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x38]
call fcn.0043c260
lea ecx, [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
call fcn.0043be10
test eax, eax
je 0x42babe
lea ecx, [ebp - 0x20]
mov bl, 1
call fcn.0043fbc0
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0x30]
call fcn.0041c376
mov esi, dword [ebp - 0x30]
push 6
push str.delete
push esi
call fcn.00454122
add esp, 0xc
test eax, eax
jne 0x42baa0
add esi, 0xc
mov bh, 1
mov dword [ebp - 0x30], esi
jmp 0x42baa4
xor eax, eax
mov bl, al
test bl, bl
jne 0x42ba77
lea ecx, [ebp - 0x30]
call fcn.0041c376
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp word [eax], cx
jne 0x42bc39
mov esi, str.name
lea eax, [ebp - 0x64]
push esi
push eax
lea ecx, [ebp - 0x38]
call fcn.0043c260
lea ecx, [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
call fcn.0043be00
test al, al
jne 0x42bd9f
lea ecx, [ebp - 0x20]
call fcn.0043fbc0
mov esi, eax
mov ecx, esi
call fcn.004082a0
push eax
push esi
lea ecx, [ebp - 0x2c]
call fcn.00408222
lea ecx, [ebp - 0x2c]
call fcn.004185e2
mov ecx, eax
call fcn.0040751e
mov eax, dword [ebp - 0x2c]
cmp dword [eax - 0xc], 0
je 0x42bd55
mov esi, str.section
lea eax, [ebp - 0x68]
push esi
push eax
lea ecx, [ebp - 0x38]
call fcn.0043c260
lea ecx, [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
call fcn.0043be00
test al, al
jne 0x42bd0f
lea ecx, [ebp - 0x20]
call fcn.0043fbc0
mov esi, eax
mov ecx, esi
call fcn.004082a0
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.00408222
lea ecx, [ebp - 0x28]
call fcn.004185e2
mov ecx, eax
call fcn.0040751e
mov eax, dword [ebp - 0x28]
cmp dword [eax - 0xc], 0
je 0x42bcc5
mov esi, str.value
lea eax, [ebp - 0x6c]
push esi
push eax
lea ecx, [ebp - 0x38]
call fcn.0043c260
lea ecx, [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
call fcn.0043be00
test al, al
je 0x42bba5
test bh, bh
je 0x42bc7f
lea ecx, [ebp - 0x20]
call fcn.0043fbc0
mov esi, eax
mov ecx, esi
call fcn.004082a0
push eax
push esi
lea ecx, [ebp - 0x14]
call fcn.00408222
mov esi, dword [ebp - 0x14]
push dword [ebp - 0x40]
test bh, bh
je 0x42bbcf
xor eax, eax
push eax
jmp 0x42bbd0
push esi
push dword [ebp - 0x2c]
push dword [ebp - 0x28]
call edi
mov byte [ebp - 4], 0x17
lea ecx, [esi - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00406985
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x38]
call fcn.0043ce30
lea ecx, [ebp - 0x38]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
call fcn.0043be10
test eax, eax
je 0x42be34
xor ebx, ebx
jmp 0x42b901
push eax
push str.Invalid_flag__s_in_key_node
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0xd
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42be25
push esi
push str._s_attribute_is_mandatory_for_key_node
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0xd
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42be25
push str.section
push str._s_attribute_is_empty_for_key_node
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0x57
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42be25
push esi
push str._s_attribute_is_mandatory_for_key_node
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0xd
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42be25
push str.name
push str._s_attribute_is_empty_for_key_node
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0x57
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42be25
push esi
push str._s_attribute_is_mandatory_for_key_node
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0xd
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
jmp 0x42be25
push dword [ebp - 0x24]
push str.Unsupported_node:__s
call fcn.0041b909
pop ecx
pop ecx
mov dword [ebp - 0x18], 0x57
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00406985
cmp dword [ebp - 0x18], 0
jne 0x42b61e
cmp byte [ebp - 0x39], 0
jne 0x42b61e
mov ecx, dword [ebp - 0x40]
call fcn.0041d1a9
test al, al
je 0x42b61e
lea ecx, [ebp - 0x5c]
call fcn.0042f724
mov byte [ebp - 4], 0x46
xor eax, eax
mov ebx, dword [ebp - 0x4c]
mov edx, ebx
mov ecx, dword [ebp - 0x40]
push eax
call fcn.0042d55b
mov dword [ebp - 0x18], eax
pop ecx
test eax, eax
je 0x42be8d
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x5c]
call fcn.0042f7f7
jmp 0x42b61e
mov al, byte [ebp - 0x31]
lea ecx, [ebp - 0x5c]
mov byte [ebp - 0x4d], al
lea eax, [ebp - 0x40]
push eax
call fcn.0040764f
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x54]
call fcn.0040764f
push str..Conf
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x30]
call fcn.004074c4
mov byte [ebp - 4], 0x47
lea ecx, [ebx + 8]
push ecx
mov edx, eax
lea ecx, [ebp - 0x4c]
call fcn.0041853b
pop ecx
pop ecx
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x58]
push eax
call fcn.0040764f
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00406985
mov byte [ebp - 4], 0x46
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx - 0x10]
call fcn.00406985
lea eax, [ebp - 0x5c]
lea ecx, [ebx + 0x18]
push eax
call fcn.0042e8b0
jmp 0x42be7c