Function at 0x40e900
Capabilities:
Delete registry key
Delete registry value

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
sub rsp, 0x490
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x428], 0xfffffffffffffffe
mov qword [rbp + 0x18], 0
mov qword [rbp + 8], 0
mov qword [rbp + 0x28], 0
mov dword [rbp], 1
mov eax, dword [rbp + 0x480]
mov dword [rbp + 0x20], eax
mov dword [rbp + 0x24], 0
xor eax, eax
cmp eax, 1
je 0x40e964
jmp 0x40e980
mov r9d, 2
lea r8, str.Num_Els___d_n
mov edx, 2
mov ecx, 0x100
call fcn.0040d330
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40e9e6
mov eax, dword [rbp + 0x24]
mov dword [rbp + 0x170], eax
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
cmp qword [rbp + 0x18], 0
je 0x40e9db
mov rax, qword [rbp + 0x18]
mov qword [rbp + 0x1b0], rax
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
mov qword [rbp + 0x18], rax
mov rcx, qword [rbp + 0x1b0]
call qword [sym.imp.msvcrt.dll_free]
jmp 0x40e9af
mov eax, dword [rbp + 0x170]
jmp 0x40f6e9
mov rax, qword [rbp + 0x468]
movsx eax, byte [rax]
cmp eax, 0x7d
je 0x40f6c7
mov rdx, qword [0x00436b20]
mov rcx, qword [rbp + 0x468]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x40ea1d
mov dword [rbp + 0x430], 1
jmp 0x40ea27
mov dword [rbp + 0x430], 0
mov eax, dword [rbp + 0x430]
mov dword [rbp + 0x30], eax
mov rdx, qword [0x00436af8]
mov rcx, qword [rbp + 0x468]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x40ea52
cmp dword [rbp + 0x30], 0
je 0x40ec72
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40ea73
jmp 0x40f6c7
cmp dword [rbp + 0x478], 0
je 0x40ec72
mov qword [rbp + 0x38], 0
mov rax, qword [rbp + 0x468]
mov qword [rbp + 0x1d8], rax
mov qword [rbp + 0x1d0], 0
cmp qword [rbp + 0x1d8], 0
jne 0x40eab8
mov qword [rbp + 0x1e0], 0
jmp 0x40eb0d
mov rax, qword [rbp + 0x1d8]
movsx eax, byte [rax]
test eax, eax
je 0x40eaff
mov rax, qword [rbp + 0x1d8]
movsx eax, byte [rax]
mov ecx, 0x5c
cmp eax, ecx
jne 0x40eae9
mov rax, qword [rbp + 0x1d8]
mov qword [rbp + 0x1d0], rax
jmp 0x40eaff
mov rcx, qword [rbp + 0x1d8]
call qword [sym.imp.USER32.dll_CharNextA]
mov qword [rbp + 0x1d8], rax
jmp 0x40eab8
mov rax, qword [rbp + 0x1d0]
mov qword [rbp + 0x1e0], rax
cmp qword [rbp + 0x1e0], 0
je 0x40eb6c
mov dword [rbp + 0x174], 0x80020009
lea rcx, [rbp + 0x38]
call fcn.0040f7e0
nop
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
cmp qword [rbp + 0x18], 0
je 0x40eb61
mov rax, qword [rbp + 0x18]
mov qword [rbp + 0x1e8], rax
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
mov qword [rbp + 0x18], rax
mov rcx, qword [rbp + 0x1e8]
call qword [sym.imp.msvcrt.dll_free]
jmp 0x40eb35
mov eax, dword [rbp + 0x174]
jmp 0x40f6e9
mov dword [rbp + 0x1f0], 0
jmp 0x40eb86
mov eax, dword [rbp + 0x1f0]
inc eax
mov dword [rbp + 0x1f0], eax
cmp dword [rbp + 0x1f0], 2
jge 0x40ebc0
movsxd rax, dword [rbp + 0x1f0]
lea rcx, [0x004450e0]
mov rdx, qword [rcx + rax*8]
mov rcx, qword [rbp + 0x468]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x40ebbe
mov dword [rbp + 0x1f4], 0
jmp 0x40ebca
jmp 0x40eb78
mov dword [rbp + 0x1f4], 1
cmp dword [rbp + 0x1f4], 0
je 0x40ec01
mov rax, qword [rbp + 0x470]
mov qword [rbp + 0x38], rax
mov rdx, qword [rbp + 0x468]
lea rcx, [rbp + 0x38]
call fcn.0040f9d0
mov rax, qword [rbp + 0x38]
mov qword [rbp + 0x330], rax
mov qword [rbp + 0x38], 0
cmp dword [rbp + 0x30], 0
je 0x40ec69
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40ec31
lea rcx, [rbp + 0x38]
call fcn.0040f7e0
jmp 0x40f6c7
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.00411040
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40ec5b
lea rcx, [rbp + 0x38]
call fcn.0040f7e0
jmp 0x40f6c7
lea rcx, [rbp + 0x38]
call fcn.0040f7e0
jmp 0x40f649
lea rcx, [rbp + 0x38]
call fcn.0040f7e0
mov rdx, qword [0x00436b10]
mov rcx, qword [rbp + 0x468]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x40ecb2
mov dword [rbp], 0
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40ecb2
jmp 0x40f6c7
mov rdx, qword [0x00436ae0]
mov rcx, qword [rbp + 0x468]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x40efc1
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40ecec
jmp 0x40f6c7
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40ed0d
jmp 0x40f6c7
mov rax, qword [rbp + 0x468]
movsx eax, byte [rax]
cmp eax, 0x3d
je 0x40ed67
mov dword [rbp + 0x178], 0x80020009
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
cmp qword [rbp + 0x18], 0
je 0x40ed5c
mov rax, qword [rbp + 0x18]
mov qword [rbp + 0x3a8], rax
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
mov qword [rbp + 0x18], rax
mov rcx, qword [rbp + 0x3a8]
call qword [sym.imp.msvcrt.dll_free]
jmp 0x40ed30
mov eax, dword [rbp + 0x178]
jmp 0x40f6e9
cmp dword [rbp + 0x478], 0
je 0x40ee3f
mov qword [rbp + 0x150], 0
mov rax, qword [rbp + 0x470]
mov qword [rbp + 0x150], rax
mov byte [rsp + 0x20], 0
mov r9, qword [rbp + 0x468]
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x150]
mov rcx, qword [rbp + 0x460]
call fcn.0040fc60
mov dword [rbp + 0x24], eax
mov rax, qword [rbp + 0x150]
mov qword [rbp + 0x3b0], rax
mov qword [rbp + 0x150], 0
cmp dword [rbp + 0x24], 0
jge 0x40ee29
mov eax, dword [rbp + 0x24]
mov dword [rbp + 0x17c], eax
lea rcx, [rbp + 0x150]
call fcn.0040f7e0
nop
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
cmp qword [rbp + 0x18], 0
je 0x40ee1e
mov rax, qword [rbp + 0x18]
mov qword [rbp + 0x3b8], rax
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
mov qword [rbp + 0x18], rax
mov rcx, qword [rbp + 0x3b8]
call qword [sym.imp.msvcrt.dll_free]
jmp 0x40edf2
mov eax, dword [rbp + 0x17c]
jmp 0x40f6e9
lea rcx, [rbp + 0x150]
call fcn.0040f7e0
jmp 0x40f649
cmp dword [rbp + 0x480], 0
jne 0x40ef9b
xor eax, eax
cmp eax, 1
je 0x40ee55
jmp 0x40ee6f
lea r9, [rbp + 0x40]
lea r8, str.Deleting__s_n
mov edx, 1
mov ecx, 0x100
call fcn.0040d330
mov qword [rbp + 0x158], 0
mov qword [rbp + 0x3c0], 0
lea rax, [rbp + 0x3c0]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp + 0x470]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [rbp + 0x3c8], eax
cmp dword [rbp + 0x3c8], 0
jne 0x40eed8
lea rcx, [rbp + 0x158]
call fcn.0040f7e0
mov dword [rbp + 0x3c8], eax
mov rax, qword [rbp + 0x3c0]
mov qword [rbp + 0x158], rax
mov eax, dword [rbp + 0x3c8]
mov dword [rbp + 0x10], eax
cmp dword [rbp + 0x10], 0
jne 0x40ef4c
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp + 0x158]
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov dword [rbp + 0x10], eax
cmp dword [rbp + 0x10], 0
je 0x40ef4a
cmp dword [rbp + 0x10], 2
je 0x40ef4a
cmp dword [rbp + 0x10], 0
jg 0x40ef18
mov eax, dword [rbp + 0x10]
mov dword [rbp + 0x434], eax
jmp 0x40ef30
mov eax, dword [rbp + 0x10]
and eax, 0xffff
or eax, 0x70000
or eax, 0x80000000
mov dword [rbp + 0x434], eax
mov eax, dword [rbp + 0x434]
mov dword [rbp + 0x24], eax
lea rcx, [rbp + 0x158]
call fcn.0040f7e0
jmp 0x40f6c7
jmp 0x40ef8f
cmp dword [rbp + 0x10], 0
jg 0x40ef5d
mov eax, dword [rbp + 0x10]
mov dword [rbp + 0x438], eax
jmp 0x40ef75
mov eax, dword [rbp + 0x10]
and eax, 0xffff
or eax, 0x70000
or eax, 0x80000000
mov dword [rbp + 0x438], eax
mov eax, dword [rbp + 0x438]
mov dword [rbp + 0x24], eax
lea rcx, [rbp + 0x158]
call fcn.0040f7e0
jmp 0x40f6c7
lea rcx, [rbp + 0x158]
call fcn.0040f7e0
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.00411040
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40efbc
jmp 0x40f6c7
jmp 0x40e9e6
mov rax, qword [rbp + 0x468]
mov qword [rbp + 0x3e0], rax
mov qword [rbp + 0x3d8], 0
cmp qword [rbp + 0x3e0], 0
jne 0x40eff1
mov qword [rbp + 0x3e8], 0
jmp 0x40f046
mov rax, qword [rbp + 0x3e0]
movsx eax, byte [rax]
test eax, eax
je 0x40f038
mov rax, qword [rbp + 0x3e0]
movsx eax, byte [rax]
mov ecx, 0x5c
cmp eax, ecx
jne 0x40f022
mov rax, qword [rbp + 0x3e0]
mov qword [rbp + 0x3d8], rax
jmp 0x40f038
mov rcx, qword [rbp + 0x3e0]
call qword [sym.imp.USER32.dll_CharNextA]
mov qword [rbp + 0x3e0], rax
jmp 0x40eff1
mov rax, qword [rbp + 0x3d8]
mov qword [rbp + 0x3e8], rax
cmp qword [rbp + 0x3e8], 0
je 0x40f09b
mov dword [rbp + 0x180], 0x80020009
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
cmp qword [rbp + 0x18], 0
je 0x40f090
mov rax, qword [rbp + 0x18]
mov qword [rbp + 0x3f0], rax
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
mov qword [rbp + 0x18], rax
mov rcx, qword [rbp + 0x3f0]
call qword [sym.imp.msvcrt.dll_free]
jmp 0x40f064
mov eax, dword [rbp + 0x180]
jmp 0x40f6e9
cmp dword [rbp + 0x478], 0
je 0x40f281
mov qword [rbp + 0x3f8], 0
lea rax, [rbp + 0x3f8]
mov qword [rsp + 0x20], rax
mov r9d, 0xf003f
xor r8d, r8d
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x470]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [rbp + 0x400], eax
cmp dword [rbp + 0x400], 0
jne 0x40f105
lea rcx, [rbp + 8]
call fcn.0040f7e0
mov dword [rbp + 0x400], eax
mov rax, qword [rbp + 0x3f8]
mov qword [rbp + 8], rax
mov eax, dword [rbp + 0x400]
mov dword [rbp + 0x10], eax
cmp dword [rbp + 0x10], 0
je 0x40f1d5
mov r9d, 0x20019
mov r8, qword [rbp + 0x468]
mov rdx, qword [rbp + 0x470]
lea rcx, [rbp + 8]
call fcn.0040f930
mov dword [rbp + 0x10], eax
cmp dword [rbp + 0x10], 0
je 0x40f1d5
xor eax, eax
cmp eax, 1
je 0x40f14b
jmp 0x40f168
mov r9, qword [rbp + 0x468]
lea r8, str.Creating_key__s_n
mov edx, 2
mov ecx, 0x100
call fcn.0040d330
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rbp + 0x468]
mov rdx, qword [rbp + 0x470]
lea rcx, [rbp + 8]
call fcn.0040f830
mov dword [rbp + 0x10], eax
cmp dword [rbp + 0x10], 0
je 0x40f1d5
mov dword [rbp + 0x184], 0x80020009
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
lea rcx, [rbp + 0x18]
call fcn.00419420
mov eax, dword [rbp + 0x184]
jmp 0x40f6e9
mov byte [rbp + 0x160], 0
mov rax, qword [rbp + 0x468]
movsx eax, byte [rax]
cmp eax, 0x4c
je 0x40f1fa
mov rax, qword [rbp + 0x468]
movsx eax, byte [rax]
cmp eax, 0x6c
jne 0x40f219
lea rdx, str.LocalServer32
mov rcx, qword [rbp + 0x468]
call qword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x40f219
mov byte [rbp + 0x160], 1
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f23a
jmp 0x40f6c7
mov rax, qword [rbp + 0x468]
movsx eax, byte [rax]
cmp eax, 0x3d
jne 0x40f27c
movzx eax, byte [rbp + 0x160]
mov byte [rsp + 0x20], al
mov r9, qword [rbp + 0x468]
xor r8d, r8d
lea rdx, [rbp + 8]
mov rcx, qword [rbp + 0x460]
call fcn.0040fc60
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f27c
jmp 0x40f6c7
jmp 0x40f649
cmp dword [rbp + 0x480], 0
jne 0x40f2b5
mov r9d, 0x20019
mov r8, qword [rbp + 0x468]
mov rdx, qword [rbp + 0x470]
lea rcx, [rbp + 8]
call fcn.0040f930
test eax, eax
je 0x40f2b5
mov dword [rbp + 0x480], 1
cmp qword [rbp + 0x28], 0
jne 0x40f342
xor eax, eax
cmp eax, 1
je 0x40f2f3
mov ecx, 0x104
call fcn.0040c430
movzx eax, al
test eax, eax
je 0x40f2f3
mov eax, dword [rsp]
mov eax, 0x110
sub rsp, rax
lea rax, [rsp + 0x40]
mov ecx, dword [rax]
mov qword [rbp + 0x440], rax
jmp 0x40f308
mov edx, 0x104
lea rcx, [rbp + 0x18]
call fcn.004193c0
mov qword [rbp + 0x440], rax
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x28], rax
cmp qword [rbp + 0x28], 0
jne 0x40f342
mov dword [rbp + 0x188], 0x8007000e
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
lea rcx, [rbp + 0x18]
call fcn.00419420
mov eax, dword [rbp + 0x188]
jmp 0x40f6e9
mov r8d, 0x104
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.KERNEL32.dll_lstrcpynA]
cmp dword [rbp + 0x480], 0
jne 0x40f3aa
mov rax, qword [rbp + 8]
mov qword [rbp + 0x408], rax
mov rdx, qword [rbp + 0x408]
mov rcx, qword [rbp + 0x460]
call fcn.00410e00
test eax, eax
jne 0x40f3aa
mov rax, qword [rbp + 8]
mov qword [rbp + 0x410], rax
mov rdx, qword [rbp + 0x410]
mov rcx, qword [rbp + 0x460]
call fcn.00410ec0
test eax, eax
je 0x40f54e
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f3cb
jmp 0x40f6c7
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.00411040
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f3ec
jmp 0x40f6c7
mov rax, qword [rbp + 0x468]
movsx eax, byte [rax]
cmp eax, 0x7b
jne 0x40f4aa
mov eax, dword [rbp + 0x480]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x478]
mov r8, qword [rbp + 8]
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040e900
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f435
jmp 0x40f6c7
cmp dword [rbp + 0x480], 0
je 0x40f4aa
mov eax, dword [rbp + 0x20]
mov dword [rbp + 0x480], eax
xor eax, eax
cmp eax, 1
je 0x40f450
jmp 0x40f463
lea r8, str.Ending_Recovery_Mode_n
xor edx, edx
mov ecx, 0x100
call fcn.0040d330
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f484
jmp 0x40f6c7
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.00411040
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f4a5
jmp 0x40f6c7
jmp 0x40e9e6
cmp dword [rbp + 0x480], 0
jne 0x40f540
mov rax, qword [rbp + 8]
mov qword [rbp + 0x418], rax
mov rdx, qword [rbp + 0x418]
mov rcx, qword [rbp + 0x460]
call fcn.00410e00
test eax, eax
je 0x40f540
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x460]
call fcn.00410da0
test eax, eax
je 0x40f51a
xor eax, eax
cmp eax, 1
je 0x40f4f6
jmp 0x40f50d
mov r9, qword [rbp + 0x28]
lea r8, str.Deleting_non_empty_subkey__s_by_force_n
xor edx, edx
mov ecx, 0x100
call fcn.0040d330
mov rdx, qword [rbp + 0x28]
lea rcx, [rbp + 8]
call fcn.0040f9d0
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f53b
jmp 0x40f6c7
jmp 0x40e9e6
cmp dword [rbp + 0x480], 0
je 0x40f54e
jmp 0x40e9e6
cmp dword [rbp + 0x480], 0
jne 0x40f58c
lea rcx, [rbp + 8]
call fcn.0040f7e0
test eax, eax
je 0x40f58c
mov dword [rbp + 0x18c], 0x80020009
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
lea rcx, [rbp + 0x18]
call fcn.00419420
mov eax, dword [rbp + 0x18c]
jmp 0x40f6e9
cmp dword [rbp + 0x480], 0
jne 0x40f60a
cmp dword [rbp], 0
je 0x40f60a
xor eax, eax
cmp eax, 1
je 0x40f5a4
jmp 0x40f5bb
mov r9, qword [rbp + 0x28]
lea r8, str.Deleting_Key__s_n
xor edx, edx
mov ecx, 0x100
call fcn.0040d330
mov qword [rbp + 0x168], 0
mov rax, qword [rbp + 0x470]
mov qword [rbp + 0x168], rax
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x168]
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x420], rax
mov qword [rbp + 0x168], 0
lea rcx, [rbp + 0x168]
call fcn.0040f7e0
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f62b
jmp 0x40f6c7
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.00411040
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f649
jmp 0x40f6c7
cmp dword [rbp + 0x478], 0
je 0x40f6c2
mov rax, qword [rbp + 0x468]
movsx eax, byte [rax]
cmp eax, 0x7b
jne 0x40f6c2
mov rcx, qword [rbp + 0x468]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 1
jne 0x40f6c2
mov dword [rsp + 0x20], 0
mov r9d, dword [rbp + 0x478]
mov r8, qword [rbp + 8]
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040e900
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f6a4
jmp 0x40f6c7
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0x460]
call fcn.0040d910
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0
jge 0x40f6c2
jmp 0x40f6c7
jmp 0x40e9e6
mov eax, dword [rbp + 0x24]
mov dword [rbp + 0x190], eax
lea rcx, [rbp + 8]
call fcn.0040f7e0
nop
lea rcx, [rbp + 0x18]
call fcn.00419420
mov eax, dword [rbp + 0x190]
lea rsp, [rbp + 0x450]
pop rbp
ret