Function at 0x100ca3a0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1022fa7c
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x258
mov eax, dword [0x102db080]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x12c], 0
mov byte [ebp - 0x15], 0
lea ecx, [ebp - 0x7c]
call fcn.1007e380
mov dword [ebp - 4], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x64]
call fcn.10089820
mov byte [ebp - 4], 2
push 0
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x34]
push ecx
call fcn.100ca9a0
add esp, 0xc
mov dword [ebp - 0x16c], eax
mov byte [ebp - 4], 3
lea edx, [ebp - 0x34]
push edx
call fcn.1004eac0
add esp, 4
movzx eax, byte [eax]
test eax, eax
je 0x100ca443
lea ecx, [ebp - 0x64]
call fcn.10083220
movzx ecx, al
test ecx, ecx
je 0x100ca46c
lea edx, [ebp - 0x34]
push edx
call fcn.100527a0
add esp, 4
push eax
lea ecx, [ebp - 0x178]
call fcn.100831f0
push 0x102ca4c4
lea eax, [ebp - 0x178]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
lea ecx, [ebp - 0x88]
call fcn.100800b0
lea ecx, [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x1b4]
call fcn.1007e300
mov dword [ebp - 0x164], eax
mov byte [ebp - 4], 4
lea edx, [ebp - 0x88]
push edx
lea eax, [ebp - 0x1b4]
push eax
call fcn.10080080
add esp, 8
mov byte [ebp - 0x121], al
mov cl, byte [ebp - 0x121]
mov byte [ebp - 0x122], cl
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1b4]
call fcn.100729b0
movzx edx, byte [ebp - 0x122]
test edx, edx
je 0x100ca52b
mov byte [ebp - 0x123], 1
push 0x1023a14b
lea eax, [ebp - 0x123]
push eax
mov ecx, dword [ebp + 8]
call fcn.100bc7d0
mov ecx, dword [ebp - 0x12c]
or ecx, 1
mov dword [ebp - 0x12c], ecx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x34]
call fcn.1004c440
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x64]
call fcn.10089b10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7c]
call fcn.100895a0
mov eax, dword [ebp + 8]
jmp 0x100ca92a
lea ecx, [ebp - 0x4c]
call fcn.10089820
mov byte [ebp - 4], 5
lea edx, [ebp - 0x4c]
push edx
lea eax, [ebp - 0x230]
push eax
call fcn.100cae20
add esp, 8
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp - 0x138]
push ecx
lea ecx, [ebp - 0x34]
call fcn.100bc830
lea ecx, [ebp - 0x230]
call fcn.1004c440
lea edx, [ebp - 0x34]
push edx
call fcn.1004eac0
add esp, 4
movzx eax, byte [eax]
test eax, eax
je 0x100ca58c
lea ecx, [ebp - 0x4c]
call fcn.10083220
movzx ecx, al
test ecx, ecx
je 0x100ca5b5
lea edx, [ebp - 0x34]
push edx
call fcn.100527a0
add esp, 4
push eax
lea ecx, [ebp - 0x184]
call fcn.100831f0
push 0x102ca4c4
lea eax, [ebp - 0x184]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
lea ecx, [ebp - 0x4c]
push ecx
lea ecx, [ebp - 0x1cc]
call fcn.1007e300
mov dword [ebp - 0x168], eax
mov byte [ebp - 4], 6
lea edx, [ebp - 0x88]
push edx
lea eax, [ebp - 0x1cc]
push eax
call fcn.10080080
add esp, 8
mov byte [ebp - 0x124], al
movzx ecx, byte [ebp - 0x124]
test ecx, ecx
jne 0x100ca601
mov dword [ebp - 0x130], 1
jmp 0x100ca60b
mov dword [ebp - 0x130], 0
mov dl, byte [ebp - 0x130]
mov byte [ebp - 0x126], dl
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1cc]
call fcn.100729b0
movzx eax, byte [ebp - 0x126]
test eax, eax
je 0x100ca696
mov byte [ebp - 0x125], 1
push 0x1023a14c
lea ecx, [ebp - 0x125]
push ecx
mov ecx, dword [ebp + 8]
call fcn.100bc7d0
mov edx, dword [ebp - 0x12c]
or edx, 1
mov dword [ebp - 0x12c], edx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x4c]
call fcn.10089b10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x34]
call fcn.1004c440
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x64]
call fcn.10089b10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7c]
call fcn.100895a0
mov eax, dword [ebp + 8]
jmp 0x100ca92a
push 1
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x24c]
push ecx
mov ecx, dword [ebp - 0x134]
call fcn.100cb0d0
mov dword [ebp - 0x13c], eax
mov edx, dword [ebp - 0x13c]
push edx
lea ecx, [ebp - 0x34]
call fcn.100bc830
lea ecx, [ebp - 0x24c]
call fcn.1004c440
lea eax, [ebp - 0x34]
push eax
call fcn.1004eac0
add esp, 4
movzx ecx, byte [eax]
test ecx, ecx
jne 0x100ca74a
lea edx, [ebp - 0x34]
push edx
call fcn.100527a0
add esp, 4
push eax
push str.failed_to_read_old_binary_config.
lea eax, [ebp - 0x1e4]
push eax
call fcn.100c8e70
add esp, 0xc
mov dword [ebp - 0x140], eax
mov ecx, dword [ebp - 0x140]
mov dword [ebp - 0x144], ecx
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x144]
push edx
lea ecx, [ebp - 0x190]
call fcn.100831f0
push 0x102ca4c4
lea eax, [ebp - 0x190]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1e4]
call fcn.100895a0
push 1
lea ecx, [ebp - 0x268]
push ecx
mov ecx, dword [ebp - 0x134]
call fcn.100cb1b0
mov dword [ebp - 0x148], eax
mov edx, dword [ebp - 0x148]
push edx
lea ecx, [ebp - 0x34]
call fcn.100bc830
lea ecx, [ebp - 0x268]
call fcn.1004c440
lea eax, [ebp - 0x34]
push eax
call fcn.1004eac0
add esp, 4
mov cl, byte [eax]
mov byte [ebp - 0x15], cl
movzx edx, byte [ebp - 0x15]
test edx, edx
jne 0x100ca800
lea eax, [ebp - 0x34]
push eax
call fcn.100527a0
add esp, 4
push eax
push str.failed_to_save_new_config.
lea ecx, [ebp - 0x1fc]
push ecx
call fcn.100c8e70
add esp, 0xc
mov dword [ebp - 0x14c], eax
mov edx, dword [ebp - 0x14c]
mov dword [ebp - 0x160], edx
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x160]
push eax
lea ecx, [ebp - 0x19c]
call fcn.100831f0
push 0x102ca4c4
lea ecx, [ebp - 0x19c]
push ecx
call sub.VCRUNTIME140.dll__CxxThrowException
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1fc]
call fcn.100895a0
lea ecx, [ebp - 0x4c]
call fcn.1007dd30
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x4c]
call fcn.10089b10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x34]
call fcn.1004c440
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x64]
call fcn.10089b10
jmp 0x100ca8e9
mov dword [ebp - 4], 0
jmp 0x100ca8f9
lea edx, [ebp - 0x7c]
push edx
lea eax, [ebp - 0x15]
push eax
mov ecx, dword [ebp + 8]
call fcn.1004ef70
mov ecx, dword [ebp - 0x12c]
or ecx, 1
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x7c]
call fcn.100895a0
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100b9f43
mov esp, ebp
pop ebp
ret 4