Function at 0x1400d2358
Capabilities:
Clear file content

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x4050]
mov eax, 0x4150
call fcn.1401282a0
sub rsp, rax
mov rax, qword [0x14016a040]
xor rax, rsp
mov qword [rbp + 0x4040], rax
mov rax, qword [rcx + 0x38]
xor r15d, r15d
mov rdi, rdx
mov rsi, rcx
movzx r12d, word [rax + 0xa412]
mov word [rsp + 0x58], r12w
test r8, r8
jne 0x1400d23eb
cmp byte [rcx + 0xd7], r15b
je 0x1400d23e4
lea rdx, [rcx + 0x40]
movzx r9d, r12w
mov rcx, rdi
call fcn.1400da274
test al, al
jne 0x1400d23eb
cmp dword [0x14016f7e8], r15d
jne 0x1400d23de
mov dword [0x14016f7e8], 1
inc dword [0x14016f7ec]
xor al, al
jmp 0x1400d36c8
mov eax, dword [rdi + 0x1b7c]
cmp eax, 2
jne 0x1400d3664
mov rcx, qword [rsi + 0x20]
mov rax, qword [rcx + 0x2008]
test rax, rax
je 0x1400d243f
cmp rax, qword [rdi + 0x7110]
jne 0x1400d243f
lea rax, [rcx + 0x1008]
cmp word [rax], r15w
je 0x1400d23e4
lea r8, [rdi + 0x3a]
sub r8, rax
movzx ecx, word [rax]
movzx edx, word [rax + r8]
sub ecx, edx
jne 0x1400d243b
add rax, 2
test edx, edx
jne 0x1400d2427
test ecx, ecx
je 0x1400d23e4
mov byte [rsi + 0x119b], r15b
cmp qword [rdi + 0x3730], r15
jge 0x1400d2456
mov qword [rdi + 0x3730], r15
cmp qword [rdi + 0x3738], r15
jge 0x1400d2466
mov qword [rdi + 0x3738], r15
mov rcx, qword [rsi + 0x38]
cmp dword [rcx + 0x7070], r15d
jne 0x1400d248f
mov eax, dword [rsi + 0x190]
cmp rax, qword [rcx + 0xc460]
jb 0x1400d248f
cmp byte [rsi + 0x195], r15b
jne 0x1400d23e4
lea rax, [rbp + 0xfe0]
mov byte [rsp + 0x50], r15b
lea rdx, [rdi + 0x26d0]
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x50]
call fcn.1400dae98
mov rcx, qword [rsi + 0x38]
test eax, eax
mov r14d, eax
mov r10d, 0x5c
setne r13b
mov dword [rsp + 0x5c], r13d
cmp dword [rcx + 0x706c], 2
jne 0x1400d2562
lea rdx, [rbp + 0xfe0]
add rcx, 0x4030
mov r8d, 0x7ff
movzx eax, word [rdx]
test ax, ax
je 0x1400d2503
mov word [rcx], ax
add rdx, 2
add rcx, 2
sub r8, 1
jne 0x1400d24ea
mov word [rcx], r15w
mov r9d, 0x4030
mov rcx, qword [rsi + 0x38]
add rcx, r9
call fcn.1400d4b64
mov word [rax], r15w
mov rcx, qword [rsi + 0x38]
add rcx, r9
je 0x1400d2562
cmp word [rcx], r10w
jne 0x1400d2545
cmp word [rcx + 2], r10w
jne 0x1400d2545
cmp word [rcx + 4], 0x3f
jne 0x1400d2545
cmp word [rcx + 6], r10w
jne 0x1400d2545
add rcx, 8
lea rdx, [0x140156158]
call fcn.140116aac
test rax, rax
je 0x1400d2562
mov rax, qword [rsi + 0x38]
mov word [rax + 0x4030], r15w
mov bl, byte [rsp + 0x50]
test r14d, r14d
je 0x1400d2576
test bl, bl
jne 0x1400d2576
mov byte [rsi + 0x195], r15b
cmp dword [rdi + 0x37dc], r15d
je 0x1400d2595
mov al, byte [rdi + 0x37c9]
neg al
sbb ecx, ecx
and ecx, 0xfffffff0
add ecx, 0x20
mov dword [rdi + 0x26f4], ecx
lea rcx, [rdi + 0x26f8]
mov r8d, 0x800
lea rdx, [rbp + 0x2040]
call fcn.1400d4bb8
cmp byte [rdi + 0x37cb], r15b
je 0x1400d2642
mov rax, qword [rsi + 0x38]
mov ecx, dword [rax + 0x83bc]
cmp ecx, 1
je 0x1400d2661
test bl, bl
jne 0x1400d2661
neg ecx
mov r14d, 0x3b
mov edx, r14d
lea rcx, [rbp + 0x2040]
sbb al, al
mov ebx, r15d
and r13b, al
mov dword [rsp + 0x5c], r13d
call fcn.1400f68d8
test rax, rax
je 0x1400d260b
lea rcx, [rax + 2]
call fcn.1400d1f4c
mov rbx, rax
mov rcx, qword [rsi + 0x38]
mov edx, dword [rcx + 0x83bc]
dec edx
cmp edx, ebx
jne 0x1400d2636
mov edx, r14d
lea rcx, [rbp + 0x2040]
call fcn.1400f68d8
xor ebx, ebx
test rax, rax
je 0x1400d2663
mov word [rax], bx
jmp 0x1400d2663
xor ebx, ebx
mov r13b, bl
mov dword [rsp + 0x5c], r13d
jmp 0x1400d2663
xor ebx, ebx
cmp byte [rdi + 0x37c9], bl
jne 0x1400d2663
mov rax, qword [rsi + 0x38]
movzx r13d, r13b
cmp dword [rax + 0x83bc], 1
cmova r13d, ebx
jmp 0x1400d263b
xor ebx, ebx
mov al, byte [rdi + 0x3771]
xor r8d, r8d
mov byte [rsi + 0xd7], al
mov rcx, rdi
mov byte [rsi + 0xd8], bl
mov rdx, qword [rdi + 0x7118]
mov rax, qword [rdi]
sub rdx, qword [rdi + 0x3730]
call qword [rax + 0x20]
mov r15b, bl
mov byte [rsp + 0x50], bl
cmp byte [rsi + 0x194], bl
je 0x1400d26de
test r13b, r13b
jne 0x1400d26ab
cmp byte [rdi + 0x7124], bl
je 0x1400d26de
cmp byte [rdi + 0x3770], bl
je 0x1400d26de
test r13b, r13b
je 0x1400d26d6
mov rax, qword [rsi + 0x38]
mov dword [rax + 0xa3e0], 0xc
inc dword [0x14016f7ec]
mov dword [0x14016f7e8], 6
mov r13b, bl
mov dword [rsp + 0x5c], r13d
mov byte [rsi + 0x194], bl
mov r11b, bl
test r13b, r13b
jne 0x1400d2802
mov rcx, rbx
cmp qword [rsi + 8], rbx
jbe 0x1400d2802
mov r9, qword [rsi]
mov r10, qword [r9]
lea rax, [rbp + 0x2040]
sub r10, rax
movzx r8d, word [rax]
movzx edx, word [rax + r10]
sub r8d, edx
jne 0x1400d2723
add rax, 2
test edx, edx
jne 0x1400d270d
test r8d, r8d
je 0x1400d273a
inc rcx
add r9, 0x18
cmp rcx, qword [rsi + 8]
jb 0x1400d2700
jmp 0x1400d2802
mov r8, qword [rsi + 0x38]
lea rbx, [rcx + rcx*2]
mov r14, qword [rsi]
xor r11d, r11d
cmp byte [r8 + 0x72f9], r11b
jne 0x1400d27fd
movzx eax, word [r8 + 0x18]
lea rdx, [rsi + 0x119c]
neg ax
mov r9d, 0x7ff
sbb rcx, rcx
and rcx, 0xffffffffffffdffa
lea r10, [rcx + 0x201e]
sub r10, rdx
add r10, r8
movzx eax, word [r10 + rdx]
test ax, ax
je 0x1400d2798
mov word [rdx], ax
add rdx, 2
sub r9, 1
jne 0x1400d2781
lea rcx, [rsi + 0x119c]
mov word [rdx], r11w
call fcn.1400d4df0
or rax, 0xffffffffffffffff
inc rax
cmp word [rsi + rax*2 + 0x119c], r11w
jne 0x1400d27ac
mov ecx, 0x800
cmp rax, rcx
jae 0x1400d27e0
mov r8d, ecx
lea rdx, str.__tmp_reference_source_
sub r8, rax
add rax, 0x8ce
lea rcx, [rsi + rax*2]
call fcn.1400d4710
lea rcx, [rsi + 0x119c]
call fcn.1400ddce8
lea rcx, [rsi + 0x119c]
call fcn.140128498
mov qword [r14 + rbx*8 + 8], rax
mov r11b, 1
xor ebx, ebx
cmp byte [rdi + 0x3773], bl
je 0x1400d2828
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x6031], bl
je 0x1400d2828
cmp byte [rdi + 0x7124], bl
jne 0x1400d23e4
mov byte [rsp + 0x5c], bl
jmp 0x1400d282d
test r13b, r13b
jne 0x1400d2849
test r11b, r11b
jne 0x1400d2849
mov r13b, byte [rdi + 0x7124]
mov byte [rsp + 0x50], r13b
test r13b, r13b
je 0x1400d3640
jmp 0x1400d284e
mov r13b, byte [rsp + 0x50]
test r11b, r11b
jne 0x1400d286c
lea r9, [rsi + 0x119c]
mov rdx, rdi
lea r8, [rbp + 0x2040]
mov rcx, rsi
call fcn.1400d3af0
test r13b, r13b
jne 0x1400d2885
cmp word [rsi + 0x119c], bx
je 0x1400d2885
mov r15b, 1
cmp byte [rdi + 0x3770], bl
je 0x1400d2888
mov r15b, bl
mov rax, qword [rsi + 0x38]
mov ecx, 0x45
mov dword [rsp + 0x54], r15d
lea edx, [rcx + 0x13]
cmp byte [rax + 0x7067], bl
jne 0x1400d28a9
cmp byte [rax + 0x7068], bl
je 0x1400d291d
cmp r12w, cx
je 0x1400d28b5
cmp r12w, dx
jne 0x1400d291d
lea rcx, [rsi + 0x119c]
mov qword [rbp + 0x1ff0], rbx
lea rdx, [rbp + 0xfe0]
mov qword [rbp + 0x1ff8], rbx
mov qword [rbp + 0x2000], rbx
call fcn.1400de124
test al, al
je 0x1400d2906
mov rax, qword [rbp + 0x1ff0]
cmp rax, qword [rdi + 0x3718]
ja 0x1400d28f3
jne 0x1400d291d
cmp byte [rbp + 0x1fec], bl
je 0x1400d2901
cmp rax, qword [rsi + 0x30]
jae 0x1400d291d
mov r15b, bl
jmp 0x1400d2918
mov rax, qword [rsi + 0x38]
movzx r15d, r15b
cmp byte [rax + 0x7067], bl
cmovne r15d, ebx
mov dword [rsp + 0x54], r15d
mov ecx, dword [rdi + 0x7120]
mov eax, dword [rdi + 0x26ec]
cmp ecx, 3
jne 0x1400d2936
cmp eax, 0x32
seta al
jmp 0x1400d2944
cmp eax, 0xd
jb 0x1400d2942
cmp eax, 0x1d
mov al, bl
jbe 0x1400d2944
mov al, 1
cmp byte [rdi + 0x26f0], bl
je 0x1400d29a7
test al, al
je 0x1400d29a7
mov ecx, dword [0x14016f7e8]
cmp ecx, 1
ja 0x1400d2971
mov ecx, 2
mov dword [0x14016f7e8], ecx
cmp ecx, 1
ja 0x1400d2971
mov dword [0x14016f7e8], ecx
add dword [0x14016f7ec], 2
xor r8d, r8d
mov rax, qword [rsi + 0x38]
mov rcx, rdi
mov dword [rax + 0xa3e0], 0xe
mov rax, qword [rdi]
mov rdx, qword [rdi + 0x7118]
call qword [rax + 0x20]
cmp byte [rdi + 0x7124], bl
sete al
jmp 0x1400d36c8
mov r14d, 0xb
cmp byte [rdi + 0x3773], bl
je 0x1400d2d40
mov r14, rbx
cmp ecx, 3
jne 0x1400d29e6
cmp byte [rdi + 0x3799], bl
je 0x1400d29e6
cmp byte [rdi + 0x7138], bl
jne 0x1400d29e6
mov ecx, 0x9d8
call fcn.1400f44e0
mov rcx, rax
call fcn.1400ea4c8
mov r14, rax
mov rcx, rsi
call fcn.1400d3e18
mov r15, qword [rsi + 0x38]
test al, al
jne 0x1400d2a24
mov dword [r15 + 0xa3e0], 0x16
test r14, r14
je 0x1400d23e4
mov rcx, r14
call fcn.1400d2018
mov edx, 0x9d8
mov rcx, r14
call fcn.1400f451c
jmp 0x1400d23e4
mov qword [rsp + 0x78], rbx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov rax, qword [r15 + 0xc7d8]
sub rax, qword [r15 + 0xc7d0]
sar rax, 1
je 0x1400d2ad9
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
ja 0x1400d37c1
lea rbx, [rax + rax]
xor r11d, r11d
test rbx, rbx
jne 0x1400d2a6d
mov r12d, r11d
jmp 0x1400d2a88
mov rcx, rbx
cmp rbx, 0x1000
jb 0x1400d2a80
call fcn.1400d1bd0
jmp 0x1400d2a85
call fcn.1400f44e0
mov r12, rax
lea rax, [rbx + r12]
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x78], rax
mov rcx, r12
mov rdx, qword [r15 + 0xc7d0]
mov rbx, qword [r15 + 0xc7d8]
sub rbx, rdx
mov r8, rbx
call fcn.14012ad20
sar rbx, 1
lea rcx, [rbp + 0x2030]
lea rax, [r12 + rbx*2]
xor ebx, ebx
mov qword [rbp + 0x2030], rbx
mov qword [rsp + 0x70], rax
call fcn.1400d1b58
movzx r12d, word [rsp + 0x58]
mov al, byte [r15 + 0xc7e8]
lea r8, [rsp + 0x68]
mov rdx, rdi
mov byte [rbp - 0x80], al
mov rcx, rsi
call fcn.1400d3fd4
mov al, byte [rdi + 0x3778]
lea r8, [rdi + 0x37a3]
neg al
lea r9, [rdi + 0x3789]
lea rax, [rbp + 0x2030]
mov qword [rsp + 0x40], rax
lea rcx, [rdi + 0x3779]
mov eax, dword [rdi + 0x37c4]
sbb rdx, rdx
mov qword [rsp + 0x38], r8
and rdx, rcx
mov r8d, dword [rdi + 0x3774]
lea rcx, [rsi + 0x40]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r9
lea r9, [rsp + 0x68]
mov qword [rsp + 0x20], rdx
call fcn.1400de8e4
cmp byte [rdi + 0x3799], bl
je 0x1400d2bba
cmp byte [rdi + 0x7138], bl
jne 0x1400d2bba
mov rax, qword [rdi + 0x379a]
cmp rax, qword [rbp + 0x2030]
je 0x1400d2bba
cmp byte [rsi + 0x119a], bl
jne 0x1400d2b88
mov rcx, qword [rsi + 0x38]
add rcx, 0xc7d0
call fcn.1400d175c
mov rax, qword [rsi + 0x38]
cmp dword [rax + 0xa3e0], 0xf
je 0x1400d2b9f
mov dword [rax + 0xa3e0], 0x18
inc dword [0x14016f7ec]
mov eax, 0xb
mov r15b, bl
mov dword [0x14016f7e8], eax
mov dword [rsp + 0x54], r15d
jmp 0x1400d2bbf
mov r15d, dword [rsp + 0x54]
lea rcx, [rsp + 0x68]
call fcn.1400d16f8
test r14, r14
je 0x1400d2be3
mov rcx, r14
call fcn.1400d2018
mov edx, 0x9d8
mov rcx, r14
call fcn.1400f451c
mov r14d, 0xb
mov rcx, qword [rsi + 0x38]
add rcx, 0x93dc
cmp word [rcx], bx
je 0x1400d2c22
lea rax, [rsi + 0x119c]
mov r8d, 0x7ff
movzx edx, word [rcx]
test dx, dx
je 0x1400d2c1f
mov word [rax], dx
add rcx, 2
add rax, 2
sub r8, 1
jne 0x1400d2c06
mov word [rax], bx
test r15b, r15b
je 0x1400d2c6c
cmp r12w, 0x50
je 0x1400d2c6c
mov rdx, qword [rsi + 0x38]
cmp byte [rdx + 0x72f9], bl
jne 0x1400d2c6c
cmp byte [rdx + 0x7093], bl
jne 0x1400d2c6c
cmp byte [rsi + 0x219d], bl
je 0x1400d2c6c
lea r8, [rsi + 0x21a0]
add rdx, 0x201e
lea rcx, [rsi + 0x119c]
call fcn.1400dc9ac
mov r15b, al
mov dword [rsp + 0x54], r15d
or qword [rbp - 0x68], 0xffffffffffffffff
lea rax, [0x140156378]
and word [rbp - 0x58], 0
and word [rbp - 0x48], 0
mov qword [rbp - 0x70], rax
mov eax, dword [rdi + 0x37e0]
mov word [rbp - 0x36], bx
mov word [rbp - 0x50], 0x100
mov byte [rbp - 0x60], bl
mov dword [rbp - 0x5c], ebx
mov dword [rbp + 0xfcc], ebx
mov byte [rbp - 0x38], bl
mov byte [rbp - 0x4e], 1
mov dword [rbp - 0x4c], 0x100
mov dword [rbp - 0x54], ebx
mov qword [rbp - 0x40], rbx
mov dword [rsp + 0x60], eax
test eax, eax
je 0x1400d2d6c
cmp eax, 5
je 0x1400d2d6c
test r15b, r15b
je 0x1400d2e32
cmp r12w, 0x50
je 0x1400d2e56
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x72f9], bl
jne 0x1400d2e56
mov byte [rsp + 0x51], bl
lea rbx, [rsi + 0x119c]
mov rcx, rbx
call fcn.1400ddbe8
cmp eax, 0xffffffff
je 0x1400d2e49
mov rcx, qword [rsi + 0x38]
lea rax, [rsp + 0x51]
xor r11d, r11d
mov r8, rbx
mov byte [rsp + 0x38], r11b
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.1400eb12c
xor ebx, ebx
cmp byte [rsp + 0x51], bl
je 0x1400d2e56
mov r15b, bl
jmp 0x1400d2e28
mov qword [rsp + 0x40], rbx
lea rcx, [rsi + 0x40]
mov qword [rsp + 0x38], rbx
xor r9d, r9d
mov dword [rsp + 0x30], ebx
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call fcn.1400de8e4
jmp 0x1400d2be9
cmp byte [rdi + 0x37c9], bl
je 0x1400d2e14
test r15b, r15b
je 0x1400d36c6
sub r12w, 0x45
cmp r12w, r14w
ja 0x1400d2d9b
mov ecx, 0x811
bt ecx, r12d
jb 0x1400d36c6
mov rax, qword [rsi + 0x38]
cmp dword [rax + 0x706c], 1
je 0x1400d36c6
inc dword [rsi + 0x188]
lea r8, [rbp + 0x2040]
mov rdx, rdi
mov rcx, rsi
call fcn.1400d40a0
cmp qword [rbp - 0x68], 0xffffffffffffffff
je 0x1400d36c6
cmp byte [rbp - 0x57], bl
jne 0x1400d36c6
cmp byte [rbp - 0x50], bl
je 0x1400d2e06
cmp dword [rbp - 0x5c], ebx
jne 0x1400d36c6
lea rcx, [rbp - 0x70]
call fcn.1400dd0bc
cmp byte [rbp - 0x4f], bl
je 0x1400d36c6
lea rcx, [rbp - 0x36]
call fcn.1400ddf18
jmp 0x1400d36c6
lea rcx, [rbp - 0x70]
call fcn.1400dd0bc
jmp 0x1400d36c6
test r15b, r15b
je 0x1400d2e32
lea r8, [rbp - 0x70]
mov rcx, rsi
call fcn.1400d4378
mov r15b, al
mov dword [rsp + 0x54], r15d
test r15b, r15b
jne 0x1400d2e56
cmp byte [rdi + 0x7124], bl
je 0x1400d2e4d
mov r13b, 1
mov byte [rsp + 0x50], r13b
mov byte [rsp + 0x54], r13b
jmp 0x1400d2e56
xor ebx, ebx
jmp 0x1400d2e56
test r15b, r15b
je 0x1400d35f1
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x72f9], bl
je 0x1400d2e71
mov byte [rsi + 0x119b], 1
cmp byte [rax + 0x72f9], bl
jne 0x1400d2ea2
test r13b, r13b
jne 0x1400d2ea2
mov byte [rsp + 0x51], bl
mov r14b, bl
cmp r12w, 0x50
je 0x1400d2eaf
mov rcx, qword [rbp - 0x68]
cmp rcx, 0xffffffffffffffff
je 0x1400d2eaf
call qword [sym.imp.KERNEL32.dll_GetFileType]
add eax, 0xfffffffe
cmp eax, 1
jbe 0x1400d37c7
jmp 0x1400d2eaf
mov r14b, 1
mov byte [rsp + 0x51], r14b
test r13b, r13b
jne 0x1400d2eb9
inc dword [rsi + 0x188]
mov rax, qword [rsi + 0x38]
inc dword [rsi + 0x18c]
lea rbx, [0x14013ff40]
xor r11d, r11d
cmp r12w, 0x49
je 0x1400d2f20
cmp byte [rax + 0x7057], r11b
jne 0x1400d2f20
test r13b, r13b
jne 0x1400d2f11
cmp byte [rax + 0x72f9], r11b
lea edx, [r11 + 0x54]
movzx ecx, r12w
lea eax, [rdx - 0xf]
cmovne ecx, edx
cmp ecx, eax
je 0x1400d2f08
lea eax, [rcx - 0x50]
test eax, 0xfffffffb
je 0x1400d2f11
lea eax, [rdx + 4]
cmp ecx, eax
jne 0x1400d2f20
lea rdx, [rsi + 0x119c]
jmp 0x1400d2f18
lea rdx, [rbp + 0x2040]
mov rcx, rbx
call fcn.140074c14
mov r8, qword [rsi + 0x38]
lea rcx, [rsi + 0x158]
mov qword [rsi + 0xf0], r11
mov qword [rsi + 0xf8], r11
mov edx, dword [rdi + 0x3748]
mov r8d, dword [r8 + 0x93d8]
call fcn.1400eacd4
mov r8, qword [rsi + 0x38]
lea rcx, [rsi + 0x118]
mov edx, dword [rdi + 0x3748]
mov r8d, dword [r8 + 0x93d8]
call fcn.1400eacd4
mov rax, qword [rdi + 0x3730]
xor edx, edx
mov qword [rsi + 0x88], rax
mov qword [rsi + 0x80], rax
lea rax, [rbp - 0x70]
or dword [rsi + 0xd0], 0xffffffff
mov qword [rsi + 0xa0], rax
mov qword [rsi + 0x98], rdi
mov byte [rsi + 0x91], r14b
mov byte [rsi + 0x92], r13b
mov qword [rbp + 0x2030], rdx
test r14b, r14b
jne 0x1400d3049
cmp byte [rdi + 0x7138], dl
jne 0x1400d3049
mov rcx, qword [rdi + 0x3738]
cmp rcx, 0xf4240
jle 0x1400d3049
mov rax, qword [rdi + 0x3730]
shl rax, 0xa
cmp rax, rcx
jle 0x1400d3049
cmp dword [rdi + 0x14], 1
je 0x1400d3049
cmp rcx, 0x5f5e100
jl 0x1400d3002
mov rcx, rdi
call fcn.1400dd770
cmp rax, qword [rdi + 0x3730]
jle 0x1400d3047
mov rdx, qword [rdi + 0x3738]
lea rcx, [rbp - 0x70]
xor r8d, r8d
call fcn.1400dd49c
xor edx, edx
test al, al
je 0x1400d3037
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov rax, qword [rbp - 0x70]
lea rcx, [rbp - 0x70]
xor r8d, r8d
xor edx, edx
call qword [rax + 0x20]
xor edx, edx
mov rax, qword [rdi + 0x3738]
mov qword [rbp + 0x2030], rax
jmp 0x1400d3049
xor edx, edx
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x709c], dl
sete byte [rbp - 0x4f]
test r14b, r14b
jne 0x1400d306b
test r13b, r13b
jne 0x1400d306b
mov r15b, 1
cmp r12w, 0x50
jne 0x1400d306e
mov r15b, dl
mov r13b, 1
mov r12b, r13b
cmp dword [rsp + 0x60], edx
je 0x1400d32eb
mov r14d, dword [rdi + 0x37e0]
lea eax, [r14 - 4]
cmp eax, 1
jbe 0x1400d3130
lea eax, [r14 - 1]
cmp eax, 2
jbe 0x1400d30a3
mov r12b, dl
jmp 0x1400d325f
test r15b, r15b
je 0x1400d3251
cmp dword [rdi + 0x7120], 3
mov bl, r13b
mov r14, qword [rsi + 0x38]
jne 0x1400d3108
lea rcx, [rdi + 0x37e4]
lea rdx, [0x1401562e8]
call fcn.1400f66cc
xor edx, edx
test rax, rax
setne bl
cmp dword [rdi + 0x7120], 3
jne 0x1400d3108
lea r8, [rdi + 0x26d0]
mov rcx, r14
lea rdx, [rsi + 0x119c]
call fcn.1400dc1d8
xor edx, edx
mov r12b, al
test al, al
je 0x1400d310b
test bl, bl
je 0x1400d310b
mov al, r13b
jmp 0x1400d310d
mov r12b, dl
mov al, dl
or byte [rsi + 0x219d], al
lea rax, [rsi + 0x21a0]
mov qword [rax + 0x10], rdx
cmp qword [rax + 0x18], 7
jbe 0x1400d3128
mov rax, qword [rax]
mov word [rax], dx
jmp 0x1400d324c
mov rax, rdx
mov r8d, 0x5c
movzx ecx, word [rdi + rax*2 + 0x37e4]
test cx, cx
je 0x1400d3163
cmp cx, 0x2f
jne 0x1400d3150
movzx ecx, r8w
mov word [rbp + rax*2 + 0x3040], cx
inc rax
cmp rax, 0x7ff
jb 0x1400d3139
mov word [rbp + rax*2 + 0x3040], dx
lea rcx, [rbp + 0x3040]
lea rdx, [rbp + 0x3040]
mov r8d, 0x800
call fcn.1400d4bb8
lea r9, [rbp + 0xfe0]
mov rdx, rdi
lea r8, [rbp + 0x3040]
mov rcx, rsi
call fcn.1400d3af0
xor edx, edx
test r15b, r15b
je 0x1400d3251
cmp word [rbp + 0xfe0], dx
je 0x1400d3251
lea rbx, [rsi + 0x119c]
cmp r14d, 4
jne 0x1400d3223
lea rcx, [rbp + 0xfe0]
call fcn.1400ddbe8
cmp eax, 0xffffffff
jne 0x1400d31ea
inc dword [0x14016f7ec]
xor edx, edx
mov dword [0x14016f7e8], 9
mov r12b, dl
jmp 0x1400d324c
mov rcx, rbx
call fcn.1400dd8b8
xor r8d, r8d
lea rdx, [rbp + 0xfe0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateHardLinkW]
xor edx, edx
test eax, eax
setne r12b
test eax, eax
jne 0x1400d324c
inc dword [0x14016f7ec]
mov dword [0x14016f7e8], 9
jmp 0x1400d324c
lea rax, [rbp + 0xfe0]
mov rcx, rsi
mov qword [rsp + 0x28], rax
lea r9, [rbp + 0x3040]
lea rdx, [rbp - 0x70]
mov qword [rsp + 0x20], rbx
call fcn.1400d387c
mov r12b, al
xor edx, edx
test r12b, r12b
je 0x1400d325f
cmp dword [rdi + 0x7120], 2
jne 0x1400d3262
test r15b, r15b
jne 0x1400d3267
mov r13b, dl
test r15b, r15b
je 0x1400d326e
mov al, 1
test r12b, r12b
jne 0x1400d3270
mov al, dl
mov r14b, byte [rsp + 0x51]
lea rbx, [0x14013ff40]
mov byte [rsi + 0x119b], al
xor r15d, r15d
mov rax, qword [rdi]
xor r8d, r8d
mov rdx, qword [rdi + 0x7118]
mov rcx, rdi
call qword [rax + 0x20]
cmp byte [rdi + 0x3771], r15b
jne 0x1400d32cf
mov al, byte [rdi + 0x37a2]
lea rcx, [rdi + 0x37a3]
neg al
lea rdx, [rdi + 0x3748]
sbb r8, r8
and r8, rcx
lea rcx, [rsi + 0x158]
call fcn.1400eb080
test al, al
mov al, 1
jne 0x1400d32d2
mov al, r15b
cmp byte [rdi + 0x37c8], r15b
jne 0x1400d33af
mov byte [rsi + 0x198], r15b
jmp 0x1400d33cc
cmp byte [rdi + 0x3770], dl
jne 0x1400d3282
cmp byte [rdi + 0x26f0], dl
jne 0x1400d3310
mov rdx, qword [rdi + 0x3738]
lea rcx, [rsi + 0x40]
call fcn.1400d37d0
jmp 0x1400d3282
mov r8b, byte [rdi + 0x37c8]
mov rdx, qword [rdi + 0x37d0]
mov rcx, qword [rsi + 0x180]
call fcn.1400e894c
mov rcx, qword [rsi + 0x180]
xor r15d, r15d
mov rax, qword [rdi + 0x3738]
mov qword [rcx + 0x4da0], rax
mov byte [rcx + 0x4db8], r15b
cmp dword [rdi + 0x7120], 3
je 0x1400d3391
cmp dword [rdi + 0x26ec], 0xf
ja 0x1400d3391
cmp dword [rsi + 0x18c], 1
jbe 0x1400d3370
mov dl, r13b
cmp byte [rdi + 0x7124], r15b
jne 0x1400d3373
mov dl, r15b
mov rcx, qword [rsi + 0x180]
cmp byte [rcx + 0x4d98], r15b
jne 0x1400d3285
call fcn.1400e2510
jmp 0x1400d3285
mov r8b, byte [rdi + 0x37c8]
mov edx, dword [rdi + 0x26ec]
mov rcx, qword [rsi + 0x180]
call fcn.1400e8b18
jmp 0x1400d3285
cmp byte [rdi + 0x26f0], r15b
je 0x1400d33cc
cmp qword [rdi + 0x3738], r15
jle 0x1400d33cc
test al, al
je 0x1400d33cc
mov byte [rsi + 0x198], 1
cmp byte [rsp + 0x50], 0
mov r9b, r15b
jne 0x1400d3496
test r13b, r13b
je 0x1400d3496
test al, al
je 0x1400d3450
movzx r10d, word [rsp + 0x58]
cmp r10w, 0x50
je 0x1400d349c
cmp r10w, 0x49
je 0x1400d349c
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x7057], r15b
jne 0x1400d349c
cmp dword [rdi + 0x3748], r15d
lea rcx, [0x140156120]
lea rdx, str._b_b_b_b_b
cmove rbx, rcx
cmp byte [rax + 0x7054], r15b
lea rcx, [0x140143a28]
mov r8, rbx
cmovne rdx, rcx
lea rcx, str._s_s
call fcn.140074c14
jmp 0x1400d349c
mov eax, 0xb
mov r9b, 1
cmp dword [0x14016f7e8], eax
je 0x1400d346a
mov dword [0x14016f7e8], 3
inc dword [0x14016f7ec]
mov rcx, qword [rsi + 0x38]
mov eax, dword [rcx + 0xa3e0]
cmp eax, 0xf
je 0x1400d3496
movzx r10d, word [rsp + 0x58]
cmp eax, 0x18
je 0x1400d349c
mov dword [rcx + 0xa3e0], 0xc
jmp 0x1400d349c
movzx r10d, word [rsp + 0x58]
mov eax, dword [rsp + 0x60]
xor ebx, ebx
test eax, eax
je 0x1400d34b6
cmp dword [rdi + 0x37e0], 4
jne 0x1400d34b6
mov cl, 1
test r12b, r12b
jne 0x1400d34b8
mov cl, bl
test r14b, r14b
jne 0x1400d35e7
mov edx, 0x58
cmp r10w, dx
je 0x1400d34db
mov edx, 0x45
cmp r10w, dx
jne 0x1400d35e7
test eax, eax
je 0x1400d34f9
test cl, cl
jne 0x1400d34f9
cmp dword [rdi + 0x37e0], 5
jne 0x1400d35e7
test r12b, r12b
je 0x1400d35e7
test r9b, r9b
je 0x1400d350e
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x709c], bl
je 0x1400d35e7
test cl, cl
jne 0x1400d358b
mov rax, qword [rbp + 0x2030]
test rax, rax
je 0x1400d3536
test r9b, r9b
jne 0x1400d352c
cmp qword [rsi + 0xf8], rax
je 0x1400d3536
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
mov rdx, qword [rsi + 0x38]
lea rcx, [rdi + 0x3728]
mov eax, dword [rdx + 0x83d0]
neg eax
mov eax, dword [rdx + 0x83cc]
sbb r9, r9
and r9, rcx
lea rcx, [rdi + 0x3720]
neg eax
mov eax, dword [rdx + 0x83c8]
sbb r8, r8
and r8, rcx
lea rcx, [rdi + 0x3718]
neg eax
sbb rdx, rdx
and rdx, rcx
lea rcx, [rbp - 0x70]
call fcn.1400dd64c
lea rcx, [rbp - 0x70]
call fcn.1400dd0bc
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x72a5], bl
je 0x1400d35af
test dword [rdi + 0x26f4], 0x800
je 0x1400d35af
lea rcx, [rsi + 0x119c]
call fcn.1400de010
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x7064], bl
je 0x1400d35c2
and dword [rdi + 0x26f4], 0xffffffdf
mov rax, qword [rsi + 0x38]
cmp byte [rax + 0x72a6], bl
jne 0x1400d35e0
mov edx, dword [rdi + 0x26f4]
lea rcx, [rsi + 0x119c]
call fcn.1400ddc60
mov byte [rsi + 0x119b], 1
mov r13b, byte [rsp + 0x50]
mov r15d, dword [rsp + 0x54]
cmp qword [rbp - 0x68], 0xffffffffffffffff
lea rax, [0x140156378]
mov qword [rbp - 0x70], rax
je 0x1400d3634
cmp byte [rbp - 0x57], bl
jne 0x1400d3634
cmp byte [rbp - 0x50], bl
je 0x1400d362b
cmp dword [rbp - 0x5c], ebx
jne 0x1400d3634
lea rcx, [rbp - 0x70]
call fcn.1400dd0bc
cmp byte [rbp - 0x4f], bl
je 0x1400d3634
lea rcx, [rbp - 0x36]
call fcn.1400ddf18
jmp 0x1400d3634
lea rcx, [rbp - 0x70]
call fcn.1400dd0bc
cmp byte [rsp + 0x5c], bl
je 0x1400d3640
inc dword [rsi + 0x190]
cmp byte [rsi + 0xd8], bl
jne 0x1400d23e4
test r15b, r15b
jne 0x1400d36c6
cmp byte [rdi + 0x7124], bl
je 0x1400d36b3
test r13b, r13b
je 0x1400d23e4
jmp 0x1400d36c6
cmp dword [rdi + 0x7120], 2
jne 0x1400d3705
cmp eax, 0x77
jne 0x1400d3705
cmp byte [rsi + 0x119b], r15b
je 0x1400d36b3
mov r8, qword [rsi + 0x38]
lea rdx, [rsi + 0x119c]
cmp byte [r8 + 0x72f9], r15b
jne 0x1400d36b3
movzx ecx, word [rdi + 0x4a28]
sub ecx, 0x104
je 0x1400d36f2
cmp ecx, 1
jne 0x1400d36b3
mov rcx, rdi
call fcn.1400db338
mov rdx, qword [rdi + 0x7118]
mov rax, qword [rdi]
xor r8d, r8d
mov rcx, rdi
call qword [rax + 0x20]
mov al, 1
mov rcx, qword [rbp + 0x4040]
xor rcx, rsp
call fcn.1400f44c0
mov rbx, qword [rsp + 0x41a0]
add rsp, 0x4150
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp byte [r8 + 0x7090], r15b
je 0x1400d36b3
mov rcx, rdi
call fcn.1400dbda0
jmp 0x1400d36b3
cmp eax, 3
jne 0x1400d3784
cmp byte [rsi + 0x119b], r15b
je 0x1400d36b3
mov rbx, qword [rsi + 0x38]
lea r14, [rsi + 0x119c]
cmp byte [rbx + 0x72f9], r15b
jne 0x1400d3752
cmp byte [rbx + 0x7090], r15b
je 0x1400d3752
lea rcx, [rdi + 0x4a58]
lea rdx, [0x1401562d8]
call fcn.14010af2c
test eax, eax
jne 0x1400d3752
mov rdx, r14
mov rcx, rdi
call fcn.1400dbfe8
lea rcx, [rdi + 0x4a58]
lea rdx, [0x1401562e0]
call fcn.14010af2c
test eax, eax
jne 0x1400d36b3
mov r8b, byte [rbx + 0x72f9]
mov rdx, r14
mov rcx, rdi
call fcn.1400db818
jmp 0x1400d36b3
cmp eax, 5
jne 0x1400d36b3
cmp byte [rdi + 0x4a0c], r15b
je 0x1400d23e4
lea rdx, [rsi + 0x40]
movzx r9d, r12w
xor r8d, r8d
mov rcx, rdi
call fcn.1400da274
test al, al
je 0x1400d23cb
mov rdx, qword [rdi + 0x7110]
jmp 0x1400d36ba
call fcn.1400d1bbc
int3
call fcn.1400daa34
int3