Function at 0x42da7c
Capabilities:
Copy file

Disassembly:
push 0x94
mov eax, 0x47a59e
call fcn.00450508
mov dword [ebp - 0x40], edx
mov edi, ecx
mov dword [ebp - 0x24], edi
lea eax, [ebp - 0x20]
xor ebx, ebx
push eax
push str.ApplyXmlIniConfUpdate
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x20], ebx
call fcn.0041dfa0
mov dword [ebp - 4], ebx
push ecx
lea ecx, [ebp - 0xa0]
call fcn.00434cd9
mov byte [ebp - 4], 1
call fcn.00409480
push eax
lea ecx, [ebp - 0x48]
call fcn.00408c39
mov byte [ebp - 4], 3
call fcn.00409480
push eax
lea ecx, [ebp - 0x14]
call fcn.00408c39
mov byte [ebp - 4], 5
call fcn.00409480
push eax
lea ecx, [ebp - 0x3c]
call fcn.00408c39
mov byte [ebp - 4], 7
call fcn.00409480
push eax
lea ecx, [ebp - 0x44]
call fcn.00408c39
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x1c]
call fcn.0044a4d0
lea ecx, [ebp - 0x34]
call fcn.0044a4d0
mov bh, byte [0x4a0318]
xor eax, eax
mov ecx, edi
mov byte [ebp - 0x2d], bh
mov byte [ebp - 0x35], al
call fcn.0044a600
test al, al
jne 0x42dbf9
mov ecx, edi
call fcn.0044e390
cmp eax, 2
jne 0x42dbf9
mov ecx, edi
call fcn.0044b5e0
mov esi, eax
mov ecx, esi
call fcn.0040b056
push eax
push esi
lea ecx, [ebp - 0x48]
call fcn.0040afd8
lea ecx, [ebp - 0x48]
call fcn.0041ab4d
mov ecx, eax
call fcn.0040a092
push str.iniconf
push dword [ebp - 0x48]
call fcn.00458623
pop ecx
pop ecx
test eax, eax
jne 0x42dbf9
mov esi, 0x48f084
lea eax, [ebp - 0x18]
push esi
push eax
mov ecx, edi
call fcn.0044aa60
lea ecx, [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.0044a600
test al, al
je 0x42dbb5
push esi
push str._s_attribute_is_mandatory_for_iniconf_node
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0xd
jmp 0x42dc00
lea ecx, [ebp - 0x1c]
call fcn.0044e3b0
mov esi, eax
mov ecx, esi
call fcn.0040b056
push eax
push esi
lea ecx, [ebp - 0x14]
call fcn.0040afd8
lea ecx, [ebp - 0x14]
call fcn.0041ab4d
mov ecx, eax
call fcn.0040a092
mov eax, dword [ebp - 0x14]
cmp dword [eax - 0xc], 0
jne 0x42dc63
push 0x48f084
push str._s_attribute_is_empty
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0x57
mov esi, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x20]
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x44]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 5
lea ecx, [esi - 0x10]
call fcn.00409575
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x48]
lea ecx, [ecx - 0x10]
call fcn.00409575
xor eax, eax
mov byte [ebp - 4], al
lea ecx, [ebp - 0xa0]
call fcn.00434cfb
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x78]
call fcn.0041e015
mov eax, edi
call fcn.004504d1
ret
push eax
push str.Processing_iniconf_node:__s
call fcn.0041dafb
pop ecx
pop ecx
push str.flags
lea eax, [ebp - 0x18]
mov ecx, edi
push eax
call fcn.0044aa60
lea ecx, [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.0044a630
test eax, eax
je 0x42dd00
lea ecx, [ebp - 0x1c]
call fcn.0044e3b0
mov dword [ebp - 0x10], eax
lea ecx, [ebp - 0x10]
call fcn.0041e8af
mov esi, dword [ebp - 0x10]
push 9
push str.mustexist
push esi
call fcn.00464e21
add esp, 0xc
test eax, eax
jne 0x42dcc2
mov bl, 1
add esi, 0x12
jmp 0x42dcdb
push 3
push 0x48e16c
push esi
call fcn.00464e21
add esp, 0xc
test eax, eax
jne 0x42dce0
mov bh, 1
add esi, 6
mov dword [ebp - 0x10], esi
jmp 0x42dc9c
lea ecx, [ebp - 0x10]
call fcn.0041e8af
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov byte [ebp - 0x2d], bh
cmp word [eax], cx
je 0x42dd00
push eax
push str.Invalid_flag__s
jmp 0x42dba5
mov esi, dword [ebp - 0x40]
lea ecx, [ebp - 0x14]
xor eax, eax
mov dl, 1
push esi
push eax
call fcn.0041ec18
mov dword [ebp - 0x20], eax
pop ecx
pop ecx
test eax, eax
jne 0x42dc00
lea ecx, [ebp - 0x14]
call fcn.0041f4d8
test al, al
jne 0x42dd58
lea eax, [ebp - 0x14]
mov edx, 0x4a03e8
push eax
lea ecx, [ebp - 0x18]
call fcn.0041aaa2
pop ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x14]
push eax
call fcn.0040a1c3
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.00409575
lea ecx, [ebp - 0x14]
call fcn.0042011f
test al, al
je 0x42dd77
push dword [ebp - 0x14]
push str.Destination_ini_is_already_scheduled_for_replace__using__s_destination_instead
call fcn.0041dafb
pop ecx
pop ecx
mov byte [ebp - 0x2d], 1
test bl, bl
je 0x42ddac
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x2e]
push esi
push eax
xor dl, dl
call fcn.00416de4
mov dword [ebp - 0x20], eax
pop ecx
pop ecx
test eax, eax
jne 0x42dc00
cmp byte [ebp - 0x2e], al
jne 0x42ddac
push str.Attribute_mustexist_is_specified__but_the_ini_file_is_missing__skipping
call fcn.0041dafb
pop ecx
jmp 0x42dc00
push 0x5c
push dword [ebp - 0x14]
call fcn.00450d4e
pop ecx
pop ecx
test eax, eax
je 0x42ddf2
sub eax, dword [ebp - 0x14]
sar eax, 1
cmp eax, 0xffffffff
je 0x42ddf2
inc eax
lea ecx, [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.00416d0f
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x44]
push eax
call fcn.0040a1c3
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42ddfe
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x44]
call fcn.0040a1c3
lea eax, [ebp - 0x44]
push eax
lea edx, [esi + 4]
lea ecx, [ebp - 0x10]
call fcn.0041aaa2
mov byte [ebp - 4], 0xe
lea ecx, [esi + 8]
push ecx
mov edx, eax
lea ecx, [ebp - 0x18]
call fcn.0041aaa2
pop ecx
pop ecx
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x3c]
push eax
call fcn.0040a1c3
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov esi, dword [ebp - 0x3c]
mov ecx, esi
call fcn.0041f708
test al, al
je 0x42de5e
mov bh, 1
jmp 0x42deb6
mov ecx, dword [ebp - 0x14]
call fcn.0041f708
test al, al
je 0x42deb3
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x18], 9
push 1
push esi
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov edi, eax
call ebx
test edi, edi
jne 0x42deb0
cmp eax, 0x20
je 0x42de95
cmp eax, 5
jne 0x42dea6
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
sub dword [ebp - 0x18], 1
jns 0x42de77
call ebx
mov dword [ebp - 0x20], eax
jmp 0x42dc03
mov edi, dword [ebp - 0x24]
mov bh, byte [ebp - 0x35]
lea eax, [ebp - 0x18]
mov ecx, edi
push eax
call fcn.0044aff0
jmp 0x42e1dc
call fcn.00409480
push eax
lea ecx, [ebp - 0x24]
call fcn.00408c39
mov byte [ebp - 4], 0x13
call fcn.00409480
push eax
lea ecx, [ebp - 0x2c]
call fcn.00408c39
mov byte [ebp - 4], 0x15
call fcn.00409480
push eax
lea ecx, [ebp - 0x28]
call fcn.00408c39
mov byte [ebp - 4], 0x17
call fcn.00409480
push eax
lea ecx, [ebp - 0x10]
call fcn.00408c39
mov byte [ebp - 4], 0x19
xor eax, eax
lea ecx, [ebp - 0x34]
mov bl, al
call fcn.0044e390
cmp eax, 2
je 0x42df51
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e1c1
push dword [ebp - 0x40]
lea edx, [ebp - 0x2e]
lea ecx, [ebp - 0x34]
call fcn.0041a573
pop ecx
test eax, eax
je 0x42df96
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e1c1
cmp byte [ebp - 0x2e], 0
jne 0x42dfce
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e1c1
lea ecx, [ebp - 0x34]
call fcn.0044b5e0
mov edi, eax
mov ecx, edi
call fcn.0040b056
push eax
push edi
lea ecx, [ebp - 0x24]
call fcn.0040afd8
lea ecx, [ebp - 0x24]
call fcn.0041ab4d
mov ecx, eax
call fcn.0040a092
push 0x48f250
push dword [ebp - 0x24]
call fcn.00458623
pop ecx
pop ecx
test eax, eax
jne 0x42e39f
push str.flags
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x34]
call fcn.0044aa60
lea ecx, [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.0044a630
test eax, eax
je 0x42e07b
lea ecx, [ebp - 0x1c]
call fcn.0044e3b0
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x18]
call fcn.0041e8af
mov edi, dword [ebp - 0x18]
push 6
push str.delete
push edi
call fcn.00464e21
add esp, 0xc
test eax, eax
jne 0x42e065
add edi, 0xc
mov bl, 1
mov dword [ebp - 0x18], edi
jmp 0x42e03c
lea ecx, [ebp - 0x18]
call fcn.0041e8af
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp word [eax], cx
jne 0x42e1f6
mov edi, str.name
lea eax, [ebp - 0x60]
push edi
push eax
lea ecx, [ebp - 0x34]
call fcn.0044aa60
lea ecx, [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.0044a600
test al, al
jne 0x42e35c
lea ecx, [ebp - 0x1c]
call fcn.0044e3b0
mov edi, eax
mov ecx, edi
call fcn.0040b056
push eax
push edi
lea ecx, [ebp - 0x2c]
call fcn.0040afd8
lea ecx, [ebp - 0x2c]
call fcn.0041ab4d
mov ecx, eax
call fcn.0040a092
mov eax, dword [ebp - 0x2c]
cmp dword [eax - 0xc], 0
je 0x42e312
mov edi, str.section
lea eax, [ebp - 0x64]
push edi
push eax
lea ecx, [ebp - 0x34]
call fcn.0044aa60
lea ecx, [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.0044a600
test al, al
jne 0x42e2cc
lea ecx, [ebp - 0x1c]
call fcn.0044e3b0
mov edi, eax
mov ecx, edi
call fcn.0040b056
push eax
push edi
lea ecx, [ebp - 0x28]
call fcn.0040afd8
lea ecx, [ebp - 0x28]
call fcn.0041ab4d
mov ecx, eax
call fcn.0040a092
mov eax, dword [ebp - 0x28]
cmp dword [eax - 0xc], 0
je 0x42e282
mov edi, str.value
lea eax, [ebp - 0x68]
push edi
push eax
lea ecx, [ebp - 0x34]
call fcn.0044aa60
lea ecx, [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.0044a600
test al, al
je 0x42e162
test bl, bl
je 0x42e23c
lea ecx, [ebp - 0x1c]
call fcn.0044e3b0
mov edi, eax
mov ecx, edi
call fcn.0040b056
push eax
push edi
lea ecx, [ebp - 0x10]
call fcn.0040afd8
mov edi, dword [ebp - 0x10]
push esi
test bl, bl
je 0x42e18a
xor eax, eax
push eax
jmp 0x42e18b
push edi
push dword [ebp - 0x2c]
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov byte [ebp - 4], 0x17
lea ecx, [edi - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x24]
add ecx, 0xfffffff0
call fcn.00409575
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x34]
call fcn.0044b670
mov eax, dword [eax]
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x34], eax
call fcn.0044a630
test eax, eax
jne 0x42dec6
jmp 0x42e3f1
push eax
push str.Invalid_flag__s_in_key_node
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0xd
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e3e2
push edi
push str._s_attribute_is_mandatory_for_key_node
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0xd
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e3e2
push str.section
push str._s_attribute_is_empty_for_key_node
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0x57
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e3e2
push edi
push str._s_attribute_is_mandatory_for_key_node
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0xd
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e3e2
push str.name
push str._s_attribute_is_empty_for_key_node
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0x57
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e3e2
push edi
push str._s_attribute_is_mandatory_for_key_node
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0xd
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
jmp 0x42e3e2
push dword [ebp - 0x24]
push str.Unsupported_node:__s
call fcn.0041dafb
pop ecx
pop ecx
mov dword [ebp - 0x20], 0x57
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x28]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x24]
lea ecx, [ecx - 0x10]
call fcn.00409575
cmp dword [ebp - 0x20], 0
jne 0x42dc03
test bh, bh
jne 0x42dc03
mov ecx, esi
call fcn.0041f708
test al, al
je 0x42dc03
lea ecx, [ebp - 0x58]
call fcn.0043203a
mov byte [ebp - 4], 0x46
xor eax, eax
mov ebx, dword [ebp - 0x40]
mov ecx, esi
push eax
mov edx, ebx
call fcn.0042fe22
mov dword [ebp - 0x20], eax
pop ecx
test eax, eax
je 0x42e446
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x58]
call fcn.0043207c
jmp 0x42dc03
mov al, byte [ebp - 0x2d]
lea ecx, [ebp - 0x58]
mov byte [ebp - 0x49], al
lea eax, [ebp - 0x3c]
push eax
call fcn.0040a1c3
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x50]
call fcn.0040a1c3
push str..Conf
lea edx, [ebp - 0x14]
lea ecx, [ebp - 0x18]
call fcn.0040a03a
mov byte [ebp - 4], 0x47
lea ecx, [ebx + 8]
push ecx
mov edx, eax
lea ecx, [ebp - 0x40]
call fcn.0041aaa2
pop ecx
pop ecx
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x54]
push eax
call fcn.0040a1c3
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x40]
lea ecx, [ecx - 0x10]
call fcn.00409575
mov byte [ebp - 4], 0x46
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.00409575
lea eax, [ebp - 0x58]
lea ecx, [ebx + 0x18]
push eax
push dword [ecx]
call fcn.0043157d
jmp 0x42e435