Function at 0x140020530
Capabilities:
Contain obfuscated stackstrings
Delete file
Encode data using xor
Set file attributes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1150]
mov eax, 0x1250
call fcn.14011eb20
sub rsp, rax
mov rax, qword [0x1401973d0]
xor rax, rsp
mov qword [rbp + 0x1140], rax
xor r13d, r13d
mov dword [rsp + 0x78], r13d
mov dword [rsp + 0x40], 0x11
mov dword [rsp + 0x44], 0x4a001d
mov dword [rsp + 0x48], 0x680066
mov dword [rsp + 0x4c], 0x520048
mov dword [rsp + 0x50], 0x530051
mov dword [rsp + 0x54], 0x28001c
mov dword [rsp + 0x58], 0x25002c
mov dword [rsp + 0x5c], 0x6b002b
mov dword [rsp + 0x60], 0x260036
mov dword [rsp + 0x64], 0x490023
mov edx, r13d
nop dword [rax]
mov eax, edx
lea rcx, [rsp + 0x44]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x1400205d0
mov word [rsp + rax*2 + 0x44], r13w
mov r8, qword [0x1401a6c00]
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0xb20]
call fcn.14000d180
lea rcx, [rbp + 0xb20]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov rsi, 0xffffffffffffffff
mov r9d, esi
lea r8, [rbp + 0xb20]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea ebx, [rax + 1]
lea edx, [rbx + 1]
movsxd rcx, edx
call fcn.14011e058
mov rdi, rax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rax
mov r9d, esi
lea r8, [rbp + 0xb20]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
xor r9d, r9d
mov r15d, 6
mov r8d, r15d
lea rdx, [rbp - 0x80]
mov rcx, rdi
call fcn.1400f55c0
mov ebx, eax
lea rdx, [rbp + 0x430]
call fcn.1400226b0
lea r9, [rax + 4]
mov r8d, r13d
mov ecx, dword [rax]
test ecx, ecx
je 0x1400206d8
nop word [rax + rax]
mov ecx, r8d
lea rdx, [r9 + rcx*2]
lea ecx, [r8 + 0x38]
xor word [rdx], cx
inc r8d
mov ecx, dword [rax]
cmp r8d, ecx
jb 0x1400206c0
mov eax, ecx
mov word [r9 + rax*2], r13w
lea rax, [rbp + 0x288]
mov qword [rbp + 0x280], rax
mov r8d, 3
mov rdx, r9
lea rcx, [rbp + 0x280]
call fcn.14000afb0
nop
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp + 0x280]
mov rcx, qword [rbp - 0x80]
call fcn.1400a91f0
nop
lea rax, [rbp + 0x288]
mov rcx, qword [rbp + 0x280]
cmp rcx, rax
je 0x140020737
call fcn.14012d07c
test ebx, ebx
je 0x140020904
lea rax, [rbp - 0x10]
mov qword [rbp + 0x218], rax
lea rax, [rbp - 0x18]
mov qword [rbp + 0x568], rax
mov eax, r13d
mov dword [rbp - 0x70], eax
mov dword [rbp - 0x6c], 0x38
mov word [rbp + rax*2 - 0x6c], r13w
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x1400223da
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x10], rax
lea rax, [rbp - 0x6c]
cmp rax, 0x10000
lea rax, [rbp - 0x6c]
jae 0x1400207a5
movzx edx, ax
lea rcx, [rbp - 0x10]
call fcn.14000c690
jmp 0x1400207c9
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1400207b0
lea rdx, [rbp - 0x6c]
lea rcx, [rbp - 0x10]
call fcn.14000c910
nop
mov eax, 0x13
mov dword [rbp + 0x18], eax
mov dword [rbp + 0x1c], 0x5eb67a33
mov dword [rbp + 0x20], 0x966b6779
mov dword [rbp + 0x24], 0x8d8e4e31
mov dword [rbp + 0x28], 0x62290012
mov dword [rbp + 0x2c], 0x7e9e7cbb
mov dword [rbp + 0x30], 0x656c4e4f
mov dword [rbp + 0x34], 0x6b216345
mov dword [rbp + 0x38], 0x5ec87a4d
mov dword [rbp + 0x3c], 0x6d726f88
mov dword [rbp + 0x40], 0x4b006b
mov edx, r13d
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp + 0x1c]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp + 0x18]
cmp edx, eax
jb 0x140020820
mov word [rbp + rax*2 + 0x1c], r13w
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x1400223e5
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x1c]
cmp rax, 0x10000
lea rax, [rbp + 0x1c]
jae 0x14002087c
movzx edx, ax
lea rcx, [rbp - 0x18]
call fcn.14000c690
jmp 0x140020899
mov r8, rsi
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x140020880
lea rdx, [rbp + 0x1c]
lea rcx, [rbp - 0x18]
call fcn.14000c910
nop
cmp dword [0x1401a2bb8], 0
jne 0x1400208ca
mov r9d, 0x10
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x18]
mov rcx, qword [0x1401a2bb0]
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp dword [0x1401a2bb8], 0
je 0x1400223f0
mov rdx, qword [rbp - 0x18]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400208e7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rbp - 0x10]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140020904
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov eax, 0x15
mov dword [rbp + 0x50], eax
mov dword [rbp + 0x54], 0x4a001d
mov dword [rbp + 0x58], 0x760066
mov dword [rbp + 0x5c], 0x690045
mov dword [rbp + 0x60], 0x52005b
mov dword [rbp + 0x64], 0x1d0030
mov dword [rbp + 0x68], 0x330003
mov dword [rbp + 0x6c], 0x90034
mov dword [rbp + 0x70], 0x34002f
mov dword [rbp + 0x74], 0x67003c
mov dword [rbp + 0x78], 0x33003e
mov dword [rbp + 0x7c], 0x4d0038
mov edx, r13d
nop dword [rax]
mov eax, edx
lea rcx, [rbp + 0x54]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp + 0x50]
cmp edx, eax
jb 0x140020960
mov word [rbp + rax*2 + 0x54], r13w
mov r8, qword [0x1401a6c08]
lea rdx, [rbp + 0x54]
lea rcx, [rbp + 0xb20]
call fcn.14000d180
xor edx, edx
lea rcx, [rbp + 0xb20]
call fcn.140125278
test eax, eax
je 0x140020b54
mov edx, 1
mov rcx, qword [rbp - 0x80]
call fcn.1400f2a30
lea rax, [rbp]
mov qword [rbp + 0x210], rax
lea rax, [rbp - 8]
mov qword [rbp + 0x48], rax
mov eax, r13d
mov dword [rbp - 0x68], eax
mov dword [rbp - 0x64], 0x38
mov word [rbp + rax*2 - 0x64], r13w
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x1400223f8
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp], rax
lea rax, [rbp - 0x64]
cmp rax, 0x10000
lea rax, [rbp - 0x64]
jae 0x140020a1d
movzx edx, ax
lea rcx, [rbp]
call fcn.14000c690
jmp 0x140020a39
mov r8, rsi
inc r8
cmp word [rax + r8*2], 0
jne 0x140020a20
lea rdx, [rbp - 0x64]
lea rcx, [rbp]
call fcn.14000c910
nop
mov dword [rbp - 0x30], 9
mov dword [rbp - 0x2c], 0x48004b
mov dword [rbp - 0x28], 0x7e0056
mov dword [rbp - 0x24], 0x4f004e
mov dword [rbp - 0x20], 0x4d0051
mov dword [rbp - 0x1c], 0x41ff41
mov edx, r13d
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x2c]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp - 0x30]
cmp edx, eax
jb 0x140020a70
mov word [rbp + rax*2 - 0x2c], r13w
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x140022403
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 8], rax
lea rax, [rbp - 0x2c]
cmp rax, 0x10000
lea rax, [rbp - 0x2c]
jae 0x140020acc
movzx edx, ax
lea rcx, [rbp - 8]
call fcn.14000c690
jmp 0x140020ae9
mov r8, rsi
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x140020ad0
lea rdx, [rbp - 0x2c]
lea rcx, [rbp - 8]
call fcn.14000c910
nop
cmp dword [0x1401a2bb8], 0
jne 0x140020b1a
mov r9d, 0x10
mov r8, qword [rbp]
mov rdx, qword [rbp - 8]
mov rcx, qword [0x1401a2bb0]
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp dword [0x1401a2bb8], 0
je 0x14002240e
mov rdx, qword [rbp - 8]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140020b37
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rbp]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140020b54
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0xa10]
call fcn.140120b10
lea rdx, [rbp + 0xb20]
lea rcx, [rbp + 0xa10]
call fcn.140007e50
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x550], r13
mov qword [rbp + 0x558], 0xf
mov byte [rbp + 0x540], 0
xor dil, dil
mov r12d, 0x18
lea r14d, [r12 - 0x14]
nop dword [rax]
mov rax, qword [rbp + 0xa10]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbp + rcx + 0xa50]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x228], rcx
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rbp + 0x220]
call fcn.14000f7f0
mov r8, qword [rax]
mov dl, 0xa
mov rcx, rax
call qword [r8 + 0x40]
movzx ebx, al
mov rcx, qword [rbp + 0x228]
test rcx, rcx
je 0x140020c15
mov rdx, qword [rcx]
call qword [rdx + 0x10]
test rax, rax
je 0x140020c15
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
movzx r8d, bl
lea rdx, [rbp + 0x540]
lea rcx, [rbp + 0xa10]
call fcn.14000e510
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
test byte [rdx + rax + 0x10], 6
jne 0x140020f30
cmp qword [rbp + 0x550], 0
je 0x140020bb0
xor edx, edx
mov r8d, 0x118
lea rcx, [rbp + 0x7e0]
call fcn.140120b10
lea rax, [0x140000000]
lea rax, [rax + 0x174e88]
mov qword [rbp + 0x7e0], rax
lea rax, [0x140174e80]
mov qword [rbp + 0x7f0], rax
mov qword [rbp + 0x8a0], r13
mov qword [rbp + 0x8c8], r13
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x8d0], xmm0
lea rax, vtable.std::basic_ios_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x898], rax
or dword [rsp + 0x78], 1
xor r8d, r8d
lea rdx, [rbp + 0x7f8]
lea rcx, [rbp + 0x7e0]
call fcn.14000eea0
nop
mov rax, qword [rbp + 0x7e0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_fstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x7e0], rax
mov rax, qword [rbp + 0x7e0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb8]
mov dword [rbp + rcx + 0x7dc], edx
lea rcx, [rbp + 0x7f8]
call fcn.14000aee0
nop
mov eax, r12d
mov dword [rbp + 0x80], eax
mov dword [rbp + 0x84], 0x4a001d
mov dword [rbp + 0x88], 0x480066
mov dword [rbp + 0x8c], 0x510059
mov dword [rbp + 0x90], 0x4f0058
mov dword [rbp + 0x94], 0x2e0032
mov dword [rbp + 0x98], 0x310025
mov dword [rbp + 0x9c], 0x280025
mov dword [rbp + 0xa0], 0x26001a
mov dword [rbp + 0xa4], 0x390038
mov dword [rbp + 0xa8], 0x2f0023
mov dword [rbp + 0xac], 0x390062
mov dword [rbp + 0xb0], 0x3b0036
mov dword [rbp + 0xb4], 0x50
mov edx, r13d
nop dword [rax]
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp + 0x84]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp + 0x80]
cmp edx, eax
jb 0x140020da0
mov word [rbp + rax*2 + 0x84], r13w
mov r8, qword [0x1401a6c00]
lea rdx, [rbp + 0x84]
lea rcx, [rbp + 0xb20]
call fcn.14000d180
mov r8d, 8
lea rdx, [rbp + 0xb20]
lea rcx, [rbp + 0x7f8]
call fcn.14000add0
test rax, rax
mov rax, qword [rbp + 0x7e0]
movsxd rcx, dword [rax + 4]
je 0x140020e36
mov eax, r14d
cmp qword [rbp + rcx + 0x828], 0
cmovne eax, r13d
mov dword [rbp + rcx + 0x7f0], eax
test dword [rbp + rcx + 0x7f4], eax
jne 0x140022416
mov ebx, 2
jmp 0x140020e68
mov eax, r15d
cmp qword [rbp + rcx + 0x828], 0
mov ebx, 2
cmovne eax, ebx
or eax, dword [rbp + rcx + 0x7f0]
and eax, 0x17
mov dword [rbp + rcx + 0x7f0], eax
and eax, dword [rbp + rcx + 0x7f4]
jne 0x14002249e
lea rcx, [rbp + 0x7f0]
test dil, dil
jne 0x140020eab
lea rdx, [0x14016e150]
call fcn.14000cbb0
lea rdx, [rbp + 0x540]
cmp qword [rbp + 0x558], 0x10
cmovae rdx, qword [rbp + 0x540]
mov r8, qword [rbp + 0x550]
mov rcx, rax
call fcn.14000e760
mov dil, 1
jmp 0x140020ece
lea rdx, [rbp + 0x540]
cmp qword [rbp + 0x558], 0x10
cmovae rdx, qword [rbp + 0x540]
mov r8, qword [rbp + 0x550]
call fcn.14000e760
mov rcx, rax
call fcn.14000ce60
lea rcx, [rbp + 0x7f8]
call fcn.14000acd0
test rax, rax
jne 0x140020f1f
mov rax, qword [rbp + 0x7e0]
movsxd rcx, dword [rax + 4]
mov eax, r15d
cmp qword [rbp + rcx + 0x828], 0
cmovne eax, ebx
or eax, dword [rbp + rcx + 0x7f0]
and eax, 0x17
mov dword [rbp + rcx + 0x7f0], eax
and eax, dword [rbp + rcx + 0x7f4]
jne 0x14002244d
lea rcx, [rbp + 0x7e0]
call fcn.140009c00
jmp 0x140020bb0
lea rcx, [rbp + 0xa20]
call fcn.14000acd0
test rax, rax
jne 0x140020f7e
mov rax, qword [rbp + 0xa10]
movsxd rcx, dword [rax + 4]
mov eax, r15d
cmp qword [rbp + rcx + 0xa58], 0
mov edx, 2
cmovne eax, edx
or eax, dword [rbp + rcx + 0xa20]
and eax, 0x17
mov dword [rbp + rcx + 0xa20], eax
and eax, dword [rbp + rcx + 0xa24]
jne 0x1400224ef
mov eax, r12d
mov dword [rbp + 0xb8], eax
mov dword [rbp + 0xbc], 0x4a001d
mov dword [rbp + 0xc0], 0x480066
mov dword [rbp + 0xc4], 0x510059
mov dword [rbp + 0xc8], 0x4f0058
mov dword [rbp + 0xcc], 0x2e0032
mov dword [rbp + 0xd0], 0x310025
mov dword [rbp + 0xd4], 0x280025
mov dword [rbp + 0xd8], 0x26001a
mov dword [rbp + 0xdc], 0x390038
mov dword [rbp + 0xe0], 0x2f0023
mov dword [rbp + 0xe4], 0x390062
mov dword [rbp + 0xe8], 0x3b0036
mov dword [rbp + 0xec], 0x50
mov edx, r13d
nop dword [rax]
mov eax, edx
lea rcx, [rbp + 0xbc]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp + 0xb8]
cmp edx, eax
jb 0x140021010
mov word [rbp + rax*2 + 0xbc], r13w
mov r8, qword [0x1401a6c00]
lea rdx, [rbp + 0xbc]
lea rcx, [rbp + 0xb20]
call fcn.14000d180
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x900]
call fcn.140120b10
lea rdx, [rbp + 0xb20]
lea rcx, [rbp + 0x900]
call fcn.140007e50
nop
mov edi, 0x35
nop
mov rax, qword [rbp + 0x900]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbp + rcx + 0x940]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x238], rcx
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rbp + 0x230]
call fcn.14000f7f0
mov r8, qword [rax]
mov dl, 0xa
mov rcx, rax
call qword [r8 + 0x40]
movzx ebx, al
mov rcx, qword [rbp + 0x238]
test rcx, rcx
je 0x1400210e5
mov rdx, qword [rcx]
call qword [rdx + 0x10]
test rax, rax
je 0x1400210e5
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
movzx r8d, bl
lea rdx, [rbp + 0x540]
lea rcx, [rbp + 0x900]
call fcn.14000e510
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
test byte [rdx + rax + 0x10], 6
jne 0x1400216c6
cmp qword [rbp + 0x550], 0
je 0x140021080
mov eax, r14d
mov dword [rbp - 0x40], eax
mov dword [rbp - 0x3c], 0x16171415
mov byte [rbp - 0x38], 0x3c
xor ecx, ecx
mov word [rbp - 0x37], cx
mov byte [rbp - 0x35], cl
mov edx, r13d
nop dword [rax]
mov eax, edx
lea rcx, [rbp - 0x3c]
add rcx, rax
lea eax, [rdx + 0x38]
xor byte [rcx], al
inc edx
mov eax, dword [rbp - 0x40]
cmp edx, eax
jb 0x140021140
mov byte [rbp + rax - 0x3c], 0
lea rdx, [rbp - 0x3c]
lea rcx, [rbp + 0x540]
call fcn.140009460
cmp rax, 0xffffffffffffffff
je 0x1400214f8
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x580], xmm0
mov qword [rbp + 0x590], rax
mov eax, r14d
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x4c], 0x16171415
mov byte [rbp - 0x48], 0x3c
xor ecx, ecx
mov word [rbp - 0x47], cx
mov byte [rbp - 0x45], cl
mov edx, r13d
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x4c]
add rcx, rax
lea eax, [rdx + 0x38]
xor byte [rcx], al
inc edx
mov eax, dword [rbp - 0x50]
cmp edx, eax
jb 0x1400211b0
mov byte [rbp + rax - 0x4c], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], r13
mov qword [rbp + 0x268], r13
lea rax, [rbp - 0x4c]
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400211f0
lea rdx, [rbp - 0x4c]
lea rcx, [rbp + 0x250]
call fcn.140010b60
nop
lea r8, [rbp + 0x250]
lea rdx, [rbp + 0x540]
lea rcx, [rbp + 0x580]
call fcn.140005410
nop
lea rcx, [rbp + 0x250]
call fcn.140010cc0
mov rbx, qword [rbp + 0x580]
add rbx, 0x20
cmp qword [rbx + 0x18], 0x10
jb 0x140021247
mov rbx, qword [rbx]
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x140022546
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x568], rax
test rbx, rbx
je 0x140021288
cmp rbx, 0x10000
jae 0x140021288
movzx edx, bx
lea rcx, [rbp + 0x568]
call fcn.14000c690
jmp 0x140021298
mov rdx, rbx
lea rcx, [rbp + 0x568]
call fcn.140009650
nop
mov rcx, qword [rbp + 0x580]
cmp qword [rcx + 0x18], 0x10
jb 0x1400212a9
mov rcx, qword [rcx]
mov r8d, 0x2f
mov dword [rbp + 0x130], r8d
mov dword [rbp + 0x134], 0x570051
mov dword [rbp + 0x138], 0x5e0049
mov dword [rbp + 0x13c], 0x49004e
mov dword [rbp + 0x140], 0x56001e
mov dword [rbp + 0x144], 0x35002e
mov dword [rbp + 0x148], 0x63002d
mov dword [rbp + 0x14c], 0x350005
mov dword [rbp + 0x150], 0x2e0036
mov dword [rbp + 0x154], 0x2f0026
mov dword [rbp + 0x158], 0x6b0025
mov dword [rbp + 0x15c], 0x2c003a
mov dword [rbp + 0x160], 0x3a0022
mov dword [rbp + 0x164], 0x220035
mov dword [rbp + 0x168], 0x76007a
mov dword [rbp + 0x16c], 0x790030
mov dword [rbp + 0x170], 0x20018
mov dword [rbp + 0x174], 0x150014
mov dword [rbp + 0x178], 0x6a0076
mov dword [rbp + 0x17c], 0x130070
mov dword [rbp + 0x180], 0x13000b
mov dword [rbp + 0x184], 0x4d002c
mov dword [rbp + 0x188], 0x460040
mov dword [rbp + 0x18c], 0x470017
mov dword [rbp + 0x190], 0x67004f
mov r8d, r13d
nop dword [rax]
mov eax, r8d
lea rdx, [rbp + 0x134]
lea rdx, [rdx + rax*2]
lea eax, [r8 + 0x38]
xor word [rdx], ax
inc r8d
mov eax, dword [rbp + 0x130]
cmp r8d, eax
jb 0x1400213b0
mov word [rbp + rax*2 + 0x134], r13w
call fcn.140136fe0
mov r8d, eax
mov rbx, qword [rbp + 0x568]
mov r9, rbx
lea rdx, [rbp + 0x134]
lea rcx, [rbp + 0xd30]
call fcn.14002a460
lea rax, [rbp + 0x318]
mov qword [rbp + 0x310], rax
mov r8d, 3
lea rdx, [rbp + 0xd30]
lea rcx, [rbp + 0x310]
call fcn.14000afb0
nop
lea rax, [rbp + 0x218]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp + 0x310]
mov rcx, qword [rbp - 0x80]
call fcn.1400a91f0
nop
lea rax, [rbp + 0x318]
mov rcx, qword [rbp + 0x310]
cmp rcx, rax
je 0x140021465
call fcn.14012d07c
nop
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14002147f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rbx, qword [rbp + 0x580]
test rbx, rbx
je 0x140021080
mov rdi, qword [rbp + 0x588]
cmp rbx, rdi
je 0x1400214b8
nop dword [rax + rax]
mov rcx, rbx
call fcn.140010cc0
add rbx, 0x20
cmp rbx, rdi
jne 0x1400214a0
mov rbx, qword [rbp + 0x580]
mov rdx, qword [rbp + 0x590]
sub rdx, rbx
and rdx, 0xffffffffffffffe0
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400214eb
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140022540
mov rcx, rbx
call fcn.14011e050
jmp 0x14002107a
mov edx, 0x2f
mov dword [rbp + 0x1a0], edx
mov dword [rbp + 0x1a4], 0x570051
mov dword [rbp + 0x1a8], 0x5e0049
mov dword [rbp + 0x1ac], 0x49004e
mov dword [rbp + 0x1b0], 0x56001e
mov dword [rbp + 0x1b4], 0x35002e
mov dword [rbp + 0x1b8], 0x63002d
mov dword [rbp + 0x1bc], 0x350005
mov dword [rbp + 0x1c0], 0x2e0036
mov dword [rbp + 0x1c4], 0x2f0026
mov dword [rbp + 0x1c8], 0x6b0025
mov dword [rbp + 0x1cc], 0x2c003a
mov dword [rbp + 0x1d0], 0x3a0022
mov dword [rbp + 0x1d4], 0x220035
mov dword [rbp + 0x1d8], 0x76007a
mov dword [rbp + 0x1dc], 0x790030
mov dword [rbp + 0x1e0], 0x20018
mov dword [rbp + 0x1e4], 0x150014
mov dword [rbp + 0x1e8], 0x6a0076
mov dword [rbp + 0x1ec], 0x130070
mov dword [rbp + 0x1f0], 0x13000b
mov dword [rbp + 0x1f4], 0x4d002c
mov dword [rbp + 0x1f8], 0x36002c
mov dword [rbp + 0x1fc], 0x290028
mov dword [rbp + 0x200], 0x67004f
mov edx, r13d
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp + 0x1a4]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp + 0x1a0]
cmp edx, eax
jb 0x140021600
mov word [rbp + rax*2 + 0x1a4], r13w
lea rcx, [rbp + 0x540]
cmp qword [rbp + 0x558], 0x10
cmovae rcx, qword [rbp + 0x540]
call fcn.140136fe0
mov r8d, eax
lea rdx, [rbp + 0x1a4]
lea rcx, [rbp + 0xd30]
call fcn.14002a460
lea rax, [rbp + 0x3a8]
mov qword [rbp + 0x3a0], rax
mov r8d, 3
lea rdx, [rbp + 0xd30]
lea rcx, [rbp + 0x3a0]
call fcn.14000afb0
nop
lea rax, [rbp + 0x218]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp + 0x3a0]
mov rcx, qword [rbp - 0x80]
call fcn.1400a91f0
nop
lea rax, [rbp + 0x3a8]
mov rcx, qword [rbp + 0x3a0]
cmp rcx, rax
je 0x140021080
call fcn.14012d07c
jmp 0x140021080
lea rcx, [rbp + 0x910]
call fcn.14000acd0
test rax, rax
jne 0x140021714
mov rax, qword [rbp + 0x900]
movsxd rcx, dword [rax + 4]
mov eax, r15d
cmp qword [rbp + rcx + 0x948], 0
mov edx, 2
cmovne eax, edx
or eax, dword [rbp + rcx + 0x910]
and eax, 0x17
mov dword [rbp + rcx + 0x910], eax
and eax, dword [rbp + rcx + 0x914]
jne 0x140022551
mov edx, 1
mov rcx, qword [rbp - 0x80]
call fcn.1400f2a30
mov eax, r12d
mov dword [rbp + 0xf0], eax
mov dword [rbp + 0xf4], 0x4a001d
mov dword [rbp + 0xf8], 0x480066
mov dword [rbp + 0xfc], 0x510059
mov dword [rbp + 0x100], 0x4f0058
mov dword [rbp + 0x104], 0x2e0032
mov dword [rbp + 0x108], 0x310025
mov dword [rbp + 0x10c], 0x280025
mov dword [rbp + 0x110], 0x26001a
mov dword [rbp + 0x114], 0x390038
mov dword [rbp + 0x118], 0x2f0023
mov dword [rbp + 0x11c], 0x390062
mov dword [rbp + 0x120], 0x3b0036
mov dword [rbp + 0x124], 0x50
mov edx, r13d
mov eax, edx
lea rcx, [rbp + 0xf4]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rbp + 0xf0]
cmp edx, eax
jb 0x1400217b0
mov word [rbp + rax*2 + 0xf4], r13w
mov r8, qword [0x1401a6c00]
lea rdx, [rbp + 0xf4]
lea rcx, [rbp + 0xb20]
call fcn.14000d180
xor edx, edx
lea rcx, [rbp + 0xb20]
call fcn.140125278
lea rbx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
lea rdi, vtable.std::ios_base.0
test eax, eax
jne 0x140021fa7
mov edx, 0x80
lea rcx, [rbp + 0xb20]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
xorps xmm0, xmm0
movups xmmword [rbp + 0x570], xmm0
mov qword [rbp + 0x570], r13
mov qword [rbp + 0x578], r13
mov ecx, 0x40
call fcn.14011e060
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp + 0x570], rax
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x5c0]
call fcn.140120b10
lea rax, [0x140000000]
lea rax, [rax + 0x174fa8]
mov qword [rbp + 0x5c0], rax
mov qword [rbp + 0x678], r13
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x6a0], xmm0
mov qword [rbp + 0x6b0], r13
mov ebx, dword [rsp + 0x78]
or ebx, 8
mov dword [rsp + 0x78], ebx
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x670], rax
mov dword [rbp + 0x66c], 0x98
mov qword [rbp + 0x5c8], r13
xor r8d, r8d
lea rdx, [rbp + 0x5d0]
lea rcx, [rbp + 0x670]
call fcn.14000c430
nop
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x5c0], rax
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x5bc], edx
lea rcx, [rbp + 0x5d0]
call fcn.14000aee0
nop
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x6d0]
call fcn.140120b10
lea rax, [0x140000000]
lea rax, [rax + 0x174e80]
mov qword [rbp + 0x6d0], rax
mov qword [rbp + 0x780], r13
mov qword [rbp + 0x7a8], r13
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x7b0], xmm0
or ebx, 2
mov dword [rsp + 0x78], ebx
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x778], rax
mov dword [rbp + 0x774], 0x98
xor r8d, r8d
lea rdx, [rbp + 0x6d8]
lea rcx, [rbp + 0x778]
call fcn.14000c430
nop
mov rax, qword [rbp + 0x6d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x6d0], rax
mov rax, qword [rbp + 0x6d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x6cc], edx
lea rcx, [rbp + 0x6d8]
call fcn.14000aee0
nop
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x1400225a2
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x560], rax
lea rax, [rbp + 0xb20]
cmp rax, 0x10000
lea rax, [rbp + 0xb20]
jae 0x140021a24
movzx edx, ax
lea rcx, [rbp + 0x560]
call fcn.14000c690
jmp 0x140021a4f
mov r8, rsi
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140021a30
lea rdx, [rbp + 0xb20]
lea rcx, [rbp + 0x560]
call fcn.14000c910
nop
lea rcx, [rbp + 0x5c0]
call fcn.140007db0
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
mov eax, r14d
cmp qword [rbp + rcx + 0x608], 0
cmovne eax, r13d
mov dword [rbp + rcx + 0x5d0], eax
test dword [rbp + rcx + 0x5d4], eax
jne 0x1400225ad
mov r8d, 1
mov rdx, qword [rbp + 0x560]
lea rcx, [rbp + 0x5d0]
call fcn.14000add0
test rax, rax
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
je 0x140021ad9
mov eax, r14d
cmp qword [rbp + rcx + 0x608], 0
cmovne eax, r13d
mov dword [rbp + rcx + 0x5d0], eax
test dword [rbp + rcx + 0x5d4], eax
jne 0x14002236c
jmp 0x140021b0b
mov eax, r15d
cmp qword [rbp + rcx + 0x608], 0
mov edx, 2
cmovne eax, edx
or eax, dword [rbp + rcx + 0x5d0]
and eax, 0x17
mov dword [rbp + rcx + 0x5d0], eax
and eax, dword [rbp + rcx + 0x5d4]
jne 0x1400225e4
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
test byte [rbp + rcx + 0x5d0], 6
je 0x140021c84
lea rax, [rbp + 0x10]
mov qword [rbp + 0x48], rax
lea rax, [rbp + 8]
mov qword [rbp + 0x210], rax
mov eax, r13d
mov dword [rbp - 0x60], eax
mov dword [rbp - 0x5c], 0x38
mov word [rbp + rax*2 - 0x5c], r13w
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x140022635
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x10], rax
lea rax, [rbp - 0x5c]
cmp rax, 0x10000
lea rax, [rbp - 0x5c]
jae 0x140021b87
movzx edx, ax
lea rcx, [rbp + 0x10]
call fcn.14000c690
jmp 0x140021ba9
mov r8, rsi
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140021b90
lea rdx, [rbp - 0x5c]
lea rcx, [rbp + 0x10]
call fcn.14000c910
nop
mov eax, r13d
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x54], 0x38
mov word [rbp + rax*2 - 0x54], r13w
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x140022640
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 8], rax
lea rax, [rbp - 0x54]
cmp rax, 0x10000
lea rax, [rbp - 0x54]
jae 0x140021bf9
movzx edx, ax
lea rcx, [rbp + 8]
call fcn.14000c690
jmp 0x140021c19
mov r8, rsi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140021c00
lea rdx, [rbp - 0x54]
lea rcx, [rbp + 8]
call fcn.14000c910
nop
cmp dword [0x1401a2bb8], 0
jne 0x140021c4a
mov r9d, 0x10
mov r8, qword [rbp + 0x10]
mov rdx, qword [rbp + 8]
mov rcx, qword [0x1401a2bb0]
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp dword [0x1401a2bb8], 0
je 0x14002264b
mov rdx, qword [rbp + 8]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140021c67
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rdx, qword [rbp + 0x10]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140021c84
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xorps xmm0, xmm0
movups xmmword [rbp + 0x598], xmm0
mov qword [rbp + 0x5a8], r13
mov qword [rbp + 0x5b0], 0xf
mov byte [rbp + 0x598], 0
nop word [rax + rax]
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbp + rcx + 0x600]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x248], rcx
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rbp + 0x240]
call fcn.14000f7f0
mov r8, qword [rax]
mov dl, 0xa
mov rcx, rax
call qword [r8 + 0x40]
movzx ebx, al
mov rcx, qword [rbp + 0x248]
test rcx, rcx
je 0x140021d15
mov rdx, qword [rcx]
call qword [rdx + 0x10]
test rax, rax
je 0x140021d15
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
movzx r8d, bl
lea rdx, [rbp + 0x598]
lea rcx, [rbp + 0x5c0]
call fcn.14000e510
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
test byte [rdx + rax + 0x10], 6
jne 0x140021d59
lea r8, [rbp + 0x598]
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x570]
call fcn.14002a860
jmp 0x140021cb0
mov ebx, 2
mov r8d, ebx
lea rdx, [rbp + 0xb20]
lea rcx, [rbp + 0x6d8]
call fcn.14000add0
test rax, rax
mov rax, qword [rbp + 0x6d0]
movsxd rcx, dword [rax + 4]
je 0x140021da9
cmp qword [rbp + rcx + 0x718], 0
cmovne r14d, r13d
mov dword [rbp + rcx + 0x6e0], r14d
test dword [rbp + rcx + 0x6e4], r14d
jne 0x1400223a3
jmp 0x140021dd8
cmp qword [rbp + rcx + 0x718], 0
cmovne r15d, ebx
or r15d, dword [rbp + rcx + 0x6e0]
and r15d, 0x17
mov dword [rbp + rcx + 0x6e0], r15d
and r15d, dword [rbp + rcx + 0x6e4]
jne 0x140022653
mov rax, qword [rbp + 0x570]
mov rbx, qword [rax]
cmp rbx, rax
je 0x140021e69
nop dword [rax + rax]
lea rdx, [rbx + 0x20]
cmp qword [rbx + 0x38], 0x10
jb 0x140021dff
mov rdx, qword [rbx + 0x20]
mov r8, qword [rbx + 0x30]
lea rcx, [rbp + 0x6d0]
call fcn.14000e760
mov rcx, rax
call fcn.14000ce60
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x140021e48
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x140021e43
nop dword [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x140021e43
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140021e30
mov rbx, rax
jmp 0x140021e60
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x140021e60
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140021e54
cmp rbx, qword [rbp + 0x570]
jne 0x140021df0
lea rcx, [rbp + 0x598]
call fcn.140010cc0
nop
mov rdx, qword [rbp + 0x560]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140021e97
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rax, qword [rbp + 0x6d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x6d0], rax
mov rax, qword [rbp + 0x6d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x6cc], edx
lea rcx, [rbp + 0x6d8]
call fcn.140008b90
mov rax, qword [rbp + 0x6d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x6d0], rax
mov rax, qword [rbp + 0x6d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x6cc], edx
mov qword [rbp + 0x778], rdi
lea rcx, [rbp + 0x778]
call fcn.14011ab80
nop
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
lea rbx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x5c0], rbx
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x5bc], edx
lea rcx, [rbp + 0x5d0]
call fcn.140008b90
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
lea r14, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x5c0], r14
mov rax, qword [rbp + 0x5c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x5bc], edx
mov qword [rbp + 0x670], rdi
lea rcx, [rbp + 0x670]
call fcn.14011ab80
nop
lea rcx, [rbp + 0x570]
call fcn.140029640
jmp 0x140021fae
lea r14, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov edx, 0x2006
lea rcx, [rbp + 0xb20]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov eax, 0x15
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x4a001d
mov dword [rsp + 0x48], 0x760066
mov dword [rsp + 0x4c], 0x690045
mov dword [rsp + 0x50], 0x52005b
mov dword [rsp + 0x54], 0x1d0030
mov dword [rsp + 0x58], 0x330003
mov dword [rsp + 0x5c], 0x90034
mov dword [rsp + 0x60], 0x34002f
mov dword [rsp + 0x64], 0x67003c
mov dword [rsp + 0x68], 0x33003e
mov dword [rsp + 0x6c], 0x4d0038
mov edx, r13d
nop dword [rax]
nop dword [rax + rax]
mov eax, edx
lea rcx, [rsp + 0x44]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x140022030
mov word [rsp + rax*2 + 0x44], r13w
mov r8, qword [0x1401a6c08]
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0xb20]
call fcn.14000d180
lea rcx, [rbp + 0xb20]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, 0x13
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x4a001d
mov dword [rsp + 0x48], 0x680066
mov dword [rsp + 0x4c], 0x520048
mov dword [rsp + 0x50], 0x530051
mov dword [rsp + 0x54], 0x22001c
mov dword [rsp + 0x58], 0x2d002d
mov dword [rsp + 0x5c], 0x2c0022
mov dword [rsp + 0x60], 0x690021
mov dword [rsp + 0x64], 0x270021
mov dword [rsp + 0x68], 0x4b0023
mov edx, r13d
mov eax, edx
lea rcx, [rsp + 0x44]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov eax, dword [rsp + 0x40]
cmp edx, eax
jb 0x1400220d2
mov word [rsp + rax*2 + 0x44], r13w
mov r8, qword [0x1401a6c00]
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0xb20]
call fcn.14000d180
lea rcx, [rbp + 0xb20]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov dword [rsp + 0x40], r12d
mov dword [rsp + 0x44], 0x4a001d
mov dword [rsp + 0x48], 0x480066
mov dword [rsp + 0x4c], 0x510059
mov dword [rsp + 0x50], 0x4f0058
mov dword [rsp + 0x54], 0x2e0032
mov dword [rsp + 0x58], 0x310025
mov dword [rsp + 0x5c], 0x280025
mov dword [rsp + 0x60], 0x26001a
mov dword [rsp + 0x64], 0x390038
mov dword [rsp + 0x68], 0x2f0023
mov dword [rsp + 0x6c], 0x390062
mov dword [rsp + 0x70], 0x3b0036
mov dword [rsp + 0x74], 0x50
mov edx, r13d
nop dword [rax + rax]
mov eax, edx
lea rcx, [rsp + 0x44]
lea rcx, [rcx + rax*2]
lea eax, [rdx + 0x38]
xor word [rcx], ax
inc edx
mov r12d, dword [rsp + 0x40]
cmp edx, r12d
jb 0x140022190
mov word [rsp + r12*2 + 0x44], r13w
mov r8, qword [0x1401a6c00]
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0xb20]
call fcn.14000d180
lea rax, [rbp - 0x80]
mov qword [rbp + 0x48], rax
call fcn.14000fb60
mov rcx, rax
test rax, rax
je 0x140022361
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x80], rax
lea rax, [rbp + 0xb20]
cmp rax, 0x10000
lea rax, [rbp + 0xb20]
jae 0x140022216
movzx edx, ax
lea rcx, [rbp - 0x80]
call fcn.14000c690
jmp 0x140022234
inc rsi
cmp word [rax + rsi*2], 0
jne 0x140022216
mov r8d, esi
lea rdx, [rbp + 0xb20]
lea rcx, [rbp - 0x80]
call fcn.14000c910
nop
lea rcx, [rbp - 0x80]
call fcn.14001d290
nop
mov rax, qword [rbp + 0x900]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x900], rbx
mov rax, qword [rbp + 0x900]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x8fc], edx
lea rcx, [rbp + 0x910]
call fcn.140008b90
mov rax, qword [rbp + 0x900]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x900], r14
mov rax, qword [rbp + 0x900]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x8fc], edx
mov qword [rbp + 0x9b0], rdi
lea rcx, [rbp + 0x9b0]
call fcn.14011ab80
nop
lea rcx, [rbp + 0x540]
call fcn.140010cc0
nop
mov rax, qword [rbp + 0xa10]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0xa10], rbx
mov rax, qword [rbp + 0xa10]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0xa0c], edx
lea rcx, [rbp + 0xa20]
call fcn.140008b90
mov rax, qword [rbp + 0xa10]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0xa10], r14
mov rax, qword [rbp + 0xa10]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0xa0c], edx
mov qword [rbp + 0xac0], rdi
lea rcx, [rbp + 0xac0]
call fcn.14011ab80
nop
mov rcx, qword [rbp + 0x1140]
xor rcx, rsp
call fcn.14011e030
lea r11, [rsp + 0x1250]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov ecx, 0x80004005
call fcn.14000fc90
nop
lea rbx, str.ios_base::badbit_set
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
nop
lea rbx, str.ios_base::badbit_set
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
nop
mov ecx, 0x80004005
call fcn.14000fc90
nop
mov ecx, 0x80004005
call fcn.14000fc90
nop
mov ecx, esi
call fcn.14012c640
int3
mov ecx, 0x80004005
call fcn.14000fc90
nop
mov ecx, 0x80004005
call fcn.14000fc90
nop
mov ecx, esi
call fcn.14012c640
nop
lea rbx, str.ios_base::badbit_set
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
int3
test al, 4
je 0x14002245a
lea rbx, str.ios_base::badbit_set
jmp 0x14002246e
test al, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
int3
test al, 4
je 0x1400224ab
lea rbx, str.ios_base::badbit_set
jmp 0x1400224bf
test bl, al
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
nop
test al, 4
je 0x1400224fc
lea rbx, str.ios_base::badbit_set
jmp 0x140022510
test dl, al
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
nop
call fcn.140124df4
nop
mov ecx, 0x80004005
call fcn.14000fc90
nop
test al, 4
je 0x14002255e
lea rbx, str.ios_base::badbit_set
jmp 0x140022572
test dl, al
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
nop
mov ecx, 0x80004005
call fcn.14000fc90
nop
lea rbx, str.ios_base::badbit_set
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
int3
test al, 4
je 0x1400225f1
lea rbx, str.ios_base::badbit_set
jmp 0x140022605
test dl, al
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
int3
mov ecx, 0x80004005
call fcn.14000fc90
nop
mov ecx, 0x80004005
call fcn.14000fc90
nop
mov ecx, esi
call fcn.14012c640
nop
test r15b, 4
je 0x140022662
lea rbx, str.ios_base::badbit_set
jmp 0x140022677
test bl, r15b
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.140010310
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140010080
lea rdx, [0x140194580]
lea rcx, [rsp + 0x40]
call fcn.140120214
int3