Function at 0x140098fd8
Capabilities:
Get file system object information
Parse pe header
Write file on windows

Disassembly:
push r12
mov eax, 0x5f00
call fcn.1400baa60
sub rsp, rax
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x5f10], rbx
mov qword [rsp + 0x5f18], rbp
mov qword [rsp + 0x5f20], rsi
mov qword [rsp + 0x5f28], rdi
mov rax, qword [0x1400e0920]
xor rax, rsp
mov qword [rsp + 0x5ef0], rax
lea rax, [rsp + 0x330]
mov qword [rsp + 0x20], rax
lea r9, [0x140095294]
mov r8, qword [0x1400ffd80]
lea rdx, str.VIRSCAN
mov rcx, qword [0x1400ec660]
call qword [sym.imp.USER32.dll_DialogBoxParamW]
xor ebp, ebp
cmp rax, rbp
je 0x1400996c4
lea rcx, [rsp + 0x50]
call fcn.14003f248
nop
lea rsi, [0x140105fe0]
lea r12d, [rbp + 1]
cmp byte [0x1400fec05], bpl
je 0x1400990b2
mov r8d, 0x400
lea rdx, [rsp + 0x16f0]
mov rcx, rsi
call fcn.140012a08
lea rdx, [rsp + 0x16f0]
lea rcx, [rsp + 0x50]
call fcn.14003efb0
lea rcx, [rsp + 0x50]
call fcn.14003f0d4
jmp 0x1400991a2
lea rcx, [rsp + 0x1e0]
call fcn.14006bae0
nop
xor r8d, r8d
lea rdx, [rsp + 0x1e0]
lea rcx, [0x1401055a0]
call fcn.1400407ec
mov qword [rsp + 0x38], rbp
mov dword [rsp + 0x30], r12d
mov byte [rsp + 0x28], bpl
mov byte [rsp + 0x20], r12b
xor r9d, r9d
lea r8, [rsp + 0x50]
lea edx, [r9 + 3]
lea rcx, [rsp + 0x1e0]
call fcn.140063f44
cmp al, bpl
jne 0x14009917d
mov rcx, qword [rsp + 0x200]
cmp rcx, rbp
je 0x14009911c
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x1e0]
cmp rcx, rbp
je 0x14009912f
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x1c0]
cmp rcx, rbp
je 0x140099142
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x1a0]
cmp rcx, rbp
je 0x140099155
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x70]
cmp rcx, rbp
je 0x140099165
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x50]
cmp rcx, rbp
je 0x1400996c4
call fcn.1400a8854
jmp 0x1400996c4
mov rcx, qword [rsp + 0x200]
cmp rcx, rbp
je 0x140099190
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x1e0]
cmp rcx, rbp
je 0x1400991a2
call fcn.1400a8854
lea rdx, [rsp + 0x1ef0]
lea rcx, str.Rar_VRXXXXXX
call fcn.140086dec
cmp al, bpl
jne 0x140099209
mov rcx, qword [rsp + 0x1c0]
cmp rcx, rbp
je 0x1400991ce
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x1a0]
cmp rcx, rbp
je 0x1400991e1
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x70]
cmp rcx, rbp
je 0x1400991f1
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x50]
cmp rcx, rbp
je 0x1400996c4
call fcn.1400a8854
jmp 0x1400996c4
mov edx, 0x400
lea rcx, [rsp + 0x36f0]
call fcn.140087598
mov rbx, rbp
cmp qword [rsp + 0x1b8], rbp
jbe 0x1400993b6
cmp byte [0x1400ffcf0], bpl
jne 0x1400993b6
lea rcx, [rsp + 0x1ef0]
call fcn.140087580
mov r8, rbx
lea rdx, [rsp + 0x26f0]
lea rcx, [rsp + 0x50]
call fcn.14003f030
mov rcx, rax
call fcn.140052af8
lea rdx, [rsp + 0x16f0]
movzx ecx, word [rax]
mov word [rdx], cx
add rax, 2
add rdx, 2
cmp cx, bp
jne 0x14009926b
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x16f0]
xor ecx, ecx
call fcn.140031a30
cmp eax, ebp
je 0x1400992eb
mov dl, r12b
lea rcx, [rsp + 0x16f0]
call fcn.1400525c8
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x16f0]
xor ecx, ecx
call fcn.140031a30
cmp eax, ebp
je 0x1400992eb
mov ecx, 0x1f7
call fcn.140061d94
mov rcx, rax
lea rdx, [rsp + 0x16f0]
call fcn.140096028
lea rcx, [0x1400ec668]
call fcn.1400286f0
jmp 0x1400993a5
lea rcx, [rsp + 0x16f0]
call fcn.140087580
call fcn.1400829f8
mov r8, rbx
lea rdx, [rsp + 0x26f0]
lea rcx, [rsp + 0x50]
call fcn.14003f030
mov rcx, rax
lea rdx, [0x14010e71c]
call fcn.1400527bc
cmp byte [0x1400fec05], bpl
jne 0x14009933f
xor r9d, r9d
mov r8b, r12b
lea rdx, [0x14010e71c]
mov rcx, rsi
call fcn.140015b20
mov eax, dword [0x1401063f4]
mov dword [0x14010c6b4], eax
mov rcx, qword [0x14010ef38]
call fcn.14006b85c
mov rcx, qword [0x14010ef20]
call fcn.14006b85c
lea rdx, [0x1400c3120]
mov rcx, qword [0x14010ef20]
call fcn.14006bb20
mov edi, dword [0x140128570]
mov r8b, r12b
xor edx, edx
mov rcx, rsi
call fcn.140017374
movzx edx, byte [0x1400fec04]
cmp edi, dword [0x140128570]
cmovne edx, r12d
mov byte [0x1400fec04], dl
cmp dl, bpl
jne 0x1400993b6
add rbx, r12
cmp rbx, qword [rsp + 0x1b8]
jb 0x14009922c
mov bl, bpl
cmp byte [0x1400fec04], bpl
jne 0x140099652
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x14010e71c]
lea ecx, [r9 + 9]
call fcn.14008a1d0
mov bl, al
lea rcx, [rsp + 0x330]
call fcn.140087994
mov ecx, 0x543
call fcn.140061d94
mov rcx, rax
call fcn.140087994
lea rcx, [rsp + 0x1ef0]
call fcn.140087580
lea rdx, [rsp + 0x1ef0]
lea rcx, [rsp + 0xb30]
call fcn.14008ec8c
mov dword [rsp + 0x20], 0x2000
mov r9d, 0x2b8
lea r8, [rsp + 0x1430]
xor edx, edx
lea rcx, [rsp + 0x330]
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov rcx, rax
shr rcx, 0x10
cmp cx, bp
jne 0x1400995b2
mov ecx, 0x5a4d
cmp ax, cx
je 0x14009946d
mov ecx, 0x4550
cmp ax, cx
jne 0x1400995b2
mov rcx, rbp
movzx eax, word [rsp + rcx + 0x1ef0]
mov word [rsp + rcx + 0x16f0], ax
add rcx, 2
cmp ax, bp
jne 0x140099470
lea rcx, [rsp + 0x16f0]
call fcn.140052588
call fcn.1400a97ac
mov r9d, eax
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x16f0]
repne scasw ax, word [rdi]
not rcx
sub rcx, r12
lea rcx, [rsp + rcx*2 + 0x16f0]
lea r8, str.__rar_scan_d.bat
mov edx, 0x400
call fcn.1400287d0
xor r8d, r8d
lea rdx, [0x1400c40f8]
lea rcx, [rsp + 0x16f0]
call fcn.140031a0c
mov rsi, rax
cmp rax, rbp
je 0x1400995b2
cmp word [rsp + 0x330], 0x22
je 0x140099509
lea rcx, [rsp + 0x330]
call fcn.1400475f4
lea rax, [rsp + 0xb30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x330]
lea r8, str.__s__s_r_n_echo._r_n_pause
mov edi, 0x1000
mov rdx, rdi
lea rcx, [rsp + 0x3ef0]
call fcn.1400287d0
mov r8, rdi
lea rdx, [rsp + 0x26f0]
lea rcx, [rsp + 0x3ef0]
call fcn.140073c10
mov byte [rsp + 0x36ef], bpl
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x26f0]
repne scasb al, byte [rdi]
not rcx
sub rcx, r12
mov r8, rcx
mov r9, rsi
mov rdx, r12
lea rcx, [rsp + 0x26f0]
call fcn.1400aa848
mov rcx, rsi
call fcn.1400aa5c0
mov rdx, rbp
movzx eax, word [rsp + rdx + 0x16f0]
mov word [rsp + rdx + 0x330], ax
add rdx, 2
cmp ax, bp
jne 0x140099591
mov word [rsp + 0xb30], bp
mov qword [rsp + 0x30], rbp
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], bpl
lea r9, [rsp + 0xb30]
lea r8, [rsp + 0x1ef0]
lea rdx, [rsp + 0x330]
xor ecx, ecx
call fcn.14009fcd8
cmp al, bpl
jne 0x140099604
mov ecx, 0x201
call fcn.140061d94
mov rcx, rax
lea rdx, [rsp + 0x330]
call fcn.140096028
mov edi, 0xc8
mov edx, edi
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea esi, [rdi + 0x3a]
cmp eax, esi
jne 0x140099647
cmp byte [0x1400ffcf0], bpl
jne 0x140099647
mov ecx, 0x14
call qword [sym.imp.KERNEL32.dll_Sleep]
call fcn.140047564
mov edx, edi
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, esi
je 0x14009961d
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rsp + 0x36f0]
call fcn.140087580
lea rcx, [rsp + 0x1ef0]
call fcn.140087284
cmp bl, bpl
je 0x14009967f
mov rcx, qword [0x1400fec08]
call qword [sym.imp.USER32.dll_DestroyWindow]
nop
mov rcx, qword [rsp + 0x1c0]
cmp rcx, rbp
je 0x140099692
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x1a0]
cmp rcx, rbp
je 0x1400996a5
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x70]
cmp rcx, rbp
je 0x1400996b5
call fcn.1400a8854
nop
mov rcx, qword [rsp + 0x50]
cmp rcx, rbp
je 0x1400996c4
call fcn.1400a8854
mov rcx, qword [rsp + 0x5ef0]
xor rcx, rsp
call fcn.1400a86e0
lea r11, [rsp + 0x5f00]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r12
ret