Function at 0x1403ac370
Capabilities:
Write file on windows

Disassembly:
push rbx
push rdi
push r13
push r15
push rbp
sub rsp, 0x3a0
mov ebp, edx
mov r13, rcx
mov r15, r9
mov qword [rsp + 0x3e0], r8
mov ecx, ebp
mov r8, r13
lea rdx, [rsp + 0x98]
mov r9d, 1
mov rax, qword [0x14194d6d8]
xor rax, rsp
mov qword [rdx + 0x300], rax
call fcn.1403bf1e0
mov ebx, eax
test ebx, ebx
je 0x1403ac4af
lea rdi, [rsp + 0x3f8]
mov qword [rsp + 0x30], rdi
movzx r11d, byte [rsp + 0x3e3]
and r11d, 0x80
mov dword [rsp + 0x40], 0
shr r11d, 7
je 0x1403ac3f7
mov edi, dword [rsp + 0x3e4]
mov dword [rsp + 0x40], edi
mov dil, byte [rsp + 0x41]
and dil, 0x80
shr dil, 7
mov r10b, byte [rsp + 0x3e0]
and r10b, 1
or r10b, dil
je 0x1403ac486
test r11d, r11d
je 0x1403ac450
test byte [rsp + 0x40], 0x10
je 0x1403ac450
mov rdi, qword [rsp + 0x30]
lea r10, [rdi + 8]
mov qword [rsp + 0x30], r10
add rdi, 0x10
mov r11, qword [r10 - 8]
mov qword [rsp + 0x30], rdi
mov rdi, qword [r10]
cmp byte [r11], 0x38
jne 0x1403ac450
cmp byte [r11 + 2], 0x4e
je 0x1403ad2ca
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
movzx eax, bx
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov ecx, ebx
mov edx, 2
mov r8d, ebp
lea r9, str.unknown
call fcn.140383960
mov qword [rsp + 0x30], 0
mov r10, qword [rsp + 0x98]
jmp 0x1403ac4c0
mov r10, qword [rsp + 0x98]
test r10, r10
je 0x1403ac3c1
mov r9b, byte [rsp + 0x3e0]
mov dil, r9b
mov al, byte [r10 + 0x294]
and dil, 1
and al, 0xfe
and r9b, 2
or al, dil
mov byte [r10 + 0x294], al
mov r10b, byte [rsp + 0x3e2]
shr r10b, 5
and r10b, 1
shl r10b, 2
mov rbp, qword [rsp + 0x98]
mov dword [rsp + 0x40], 0
mov bl, byte [rbp + 0x294]
and bl, 0xfb
or bl, r10b
mov byte [rbp + 0x294], bl
mov rdi, qword [rsp + 0x98]
mov r11b, byte [rdi + 0x294]
and r11b, 0xfd
or r11b, r9b
mov byte [rdi + 0x294], r11b
xor edi, edi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0x118], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0x1c0], rdi
mov rax, qword [rsp + 0x98]
and byte [rax + 0x29d], 0xf7
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0x168]
mov qword [rbx + 0x160], rax
movzx eax, byte [rsp + 0x3e3]
test eax, 0x80
jne 0x1403ac59d
mov rbp, qword [rsp + 0x98]
xor r11b, r11b
jmp 0x1403ac790
lea rax, [rsp + 0x3f8]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x3e4]
mov rbp, qword [rsp + 0x98]
mov dword [rsp + 0x40], eax
test rbp, rbp
je 0x1403af41c
test al, 0x20
je 0x1403ac5d9
or byte [rbp + 0x29b], 0x40
mov rbp, qword [rsp + 0x98]
and byte [rbp + 0x29d], 0xbf
mov r11b, byte [rsp + 0x41]
test r11b, 0x20
je 0x1403ac5fa
mov rbx, qword [rsp + 0x98]
or byte [rbx + 0x29d], 0x40
mov rbx, qword [rsp + 0x98]
and byte [rbx + 0x29d], 0x7f
test r11b, 0x40
je 0x1403ac61e
mov rbx, qword [rsp + 0x98]
or byte [rbx + 0x29d], 0x80
mov rbx, qword [rsp + 0x98]
and byte [rbx + 0x29e], 0xef
test r11b, 0x80
je 0x1403ac642
mov rbx, qword [rsp + 0x98]
or byte [rbx + 0x29e], 0x10
mov rbx, qword [rsp + 0x98]
mov bpl, byte [rsp + 0x42]
and byte [rbx + 0x29e], 0xdf
test bpl, 1
je 0x1403ac66b
mov rbx, qword [rsp + 0x98]
or byte [rbx + 0x29e], 0x20
mov rbx, qword [rsp + 0x98]
and byte [rbx + 0x29e], 0xbf
test bpl, 2
je 0x1403ac68f
mov rbx, qword [rsp + 0x98]
or byte [rbx + 0x29e], 0x40
mov rbx, qword [rsp + 0x98]
and byte [rbx + 0x29e], 0x7f
test bpl, 4
je 0x1403ac6b3
mov rbx, qword [rsp + 0x98]
or byte [rbx + 0x29e], 0x80
mov rbx, qword [rsp + 0x98]
and byte [rbx + 0x29f], 0xfe
test bpl, 8
je 0x1403ac6d7
mov rbx, qword [rsp + 0x98]
or byte [rbx + 0x29f], 1
test al, 0x10
je 0x1403ac77f
mov rax, qword [rsp + 0x30]
lea rbp, [rax + 8]
mov qword [rsp + 0x30], rbp
add rax, 0x10
mov rbx, qword [rbp - 8]
mov qword [rsp + 0x30], rax
mov rbp, qword [rbp]
cmp byte [rbx], 0x38
je 0x1403ae48d
cmp byte [rbx], 0xb
je 0x1403adf0f
cmp byte [rbx], 0x38
je 0x1403add40
cmp byte [rbx], 0x38
je 0x1403adba0
cmp byte [rbx], 0x38
je 0x1403ad9cc
cmp byte [rbx], 0x38
je 0x1403ad7bc
cmp byte [rbx], 0x38
je 0x1403ad61c
cmp byte [rbx], 0x38
je 0x1403ad482
cmp byte [rbx], 1
je 0x1403ac770
mov ecx, 8
mov edx, 2
lea r8, str.for_rseq.c
mov r9d, 0x4c2
mov qword [rsp + 0x30], 0
call fcn.140383960
mov rbp, qword [rsp + 0x98]
mov r11b, byte [rsp + 0x41]
jmp 0x1403ac787
mov rbp, qword [rsp + 0x98]
mov qword [rsp + 0x30], 0
mov al, r11b
shr al, 3
mov bl, byte [rbp + 0x29e]
and al, 0xf0
and bl, 0xef
or bl, al
mov byte [rbp + 0x29e], bl
mov r9, qword [rsp + 0x98]
test byte [r9 + 0x291], 0x20
je 0x1403aef2c
test r9, r9
je 0x1403ac7d0
movzx eax, word [r9 + 0x27a]
test eax, eax
jg 0x1403ac7e0
and byte [r9 + 0x29c], 0xfe
mov r9, qword [rsp + 0x98]
test byte [r9 + 0x292], 0x40
je 0x1403ac8e6
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403ae4d9
test byte [rax + 0x74], 2
je 0x1403ac87a
mov dword [rax + 0x68], 0x100
mov rax, qword [rsp + 0x98]
mov rdx, qword [rax + 0x30]
mov dword [rdx + 0x6c], 0x1f
mov rcx, qword [rsp + 0x98]
mov rax, qword [rcx + 0xd8]
test rax, rax
je 0x1403ac842
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x100
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x100
mov dword [rbx + 0x20], 0x1f
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
test byte [r9 + 0x293], 8
je 0x1403aca0f
test byte [r9 + 0x290], 4
jne 0x1403aca0f
test r9, r9
je 0x1403ac917
movzx eax, word [r9 + 0x27a]
test eax, eax
jg 0x1403aca0f
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403ae517
test byte [rax + 0x74], 2
je 0x1403ac9a3
mov dword [rax + 0x68], 0x103
mov rax, qword [rsp + 0x98]
mov rdx, qword [rax + 0x30]
mov dword [rdx + 0x6c], 0x1f
mov rcx, qword [rsp + 0x98]
mov rax, qword [rcx + 0xd8]
test rax, rax
je 0x1403ac96b
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x103
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x103
mov dword [rbx + 0x20], 0x1f
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov al, byte [r9 + 0x29b]
test al, 2
jne 0x1403aca2a
test al, 1
jne 0x1403aca2a
test al, 0x10
jne 0x1403aca2a
test al, 8
je 0x1403acb1f
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403ae555
test byte [rax + 0x74], 2
je 0x1403acab3
mov edx, 0x72
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403aca7b
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x72
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x72
mov dword [rbx + 0x20], 0x72
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
and byte [r9 + 0x297], 0xbf
mov rax, qword [rsp + 0x98]
mov qword [rax + 0x110], 0
mov rax, qword [rsp + 0x98]
test byte [rax + 0x299], 0x40
jne 0x1403acb58
cmp byte [rax + 0x27c], 1
je 0x1403aeeec
and byte [rax + 0x297], 0xdf
mov rbx, qword [rsp + 0x98]
test byte [rbx + 0x293], 4
je 0x1403acc12
test rbx, rbx
je 0x1403acb88
movzx eax, word [rbx + 0x27a]
test eax, eax
jg 0x1403acc17
test byte [rbx + 0x295], 4
jne 0x1403ae80b
mov r11, qword [rbx + 0x78]
test byte [rbx + 0x294], 8
jne 0x1403ae590
mov r10, qword [rbx + 0x170]
mov rbp, qword [rbx + 0x160]
mov rax, qword [rbx + 0x180]
sub r10, rbp
add rax, r11
sub rax, r10
mov qword [rbx + 0x80], rax
mov rbp, qword [rsp + 0x98]
mov rbx, qword [rbp + 0x1b8]
test rbx, rbx
je 0x1403acbfc
mov rax, qword [rbp + 0x80]
sub rbx, rax
add rbx, qword [rbp + 0x78]
mov qword [rbp + 0x140], rbx
mov rbp, qword [rsp + 0x98]
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0xa8], rax
mov rbx, qword [rsp + 0x98]
test rbx, rbx
je 0x1403acc26
movzx eax, word [rbx + 0x27a]
test eax, eax
jg 0x1403accb6
mov rcx, rbx
mov rdx, r15
mov r8, qword [rsp + 0x3f0]
call fcn.1403e0880
mov r9, qword [rsp + 0x98]
cmp eax, 0x18
je 0x1403aec0b
test eax, eax
jne 0x1403ad1e6
test byte [r9 + 0x297], 0x20
jne 0x1403acc75
cmp dword [r9 + 0x238], 7
jne 0x1403acc75
mov al, byte [r9 + 0x298]
test al, 0x40
jne 0x1403ad0d0
mov rax, qword [r9 + 0x80]
mov qword [r9 + 0x98], rax
mov rbx, qword [rsp + 0x98]
inc qword [rbx + 0x148]
mov rbp, qword [rsp + 0x98]
and byte [rbp + 0x297], 0xfb
mov rbx, qword [rsp + 0x98]
cmp byte [rbx + 0x27c], 3
je 0x1403acfb5
mov byte [rbx + 0x286], 0x83
mov rcx, r13
mov rax, qword [rsp + 0x98]
mov rdx, r15
mov r8, qword [rsp + 0x3f0]
mov dword [rax + 0x250], 0
call fcn.1403af430
mov ebx, eax
mov rbp, qword [rsp + 0x98]
mov cl, byte [rbp + 0x297]
test cl, 0x20
je 0x1403acf80
movzx edx, word [rbp + 0x27a]
test edx, edx
jg 0x1403acf80
xor edx, edx
and cl, 0xdf
mov byte [rbp + 0x297], cl
xor r8d, r8d
mov rcx, qword [rsp + 0x98]
call fcn.1403e0880
test eax, eax
je 0x1403ace19
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403aeaae
test byte [rbx + 0x74], 2
je 0x1403acdb4
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403acd81
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rcx + 0x80]
mov qword [rcx + 0x98], rdx
mov rbp, qword [rsp + 0x98]
inc qword [rbp + 0x148]
mov r8, qword [rsp + 0x98]
and byte [r8 + 0x297], 0xfb
mov r9, qword [rsp + 0x98]
cmp byte [r9 + 0x27c], 3
jne 0x1403acf80
mov rdx, qword [r9 + 0x98]
movzx ebp, byte [rdx + 1]
shl ebp, 8
movzx r8d, byte [rdx]
or r8d, ebp
movsx r10, r8w
and r10d, 0xfffffffd
cmp r10d, 1
je 0x1403aeb21
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403aeae6
test byte [rax + 0x74], 2
je 0x1403acf14
mov edx, 0x23
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403acedc
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x23
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x23
mov dword [rbx + 0x20], 0x23
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, ebx
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov rax, qword [rbx + 0x98]
movzx ebp, byte [rax + 1]
shl ebp, 8
movzx r10d, byte [rax]
or r10d, ebp
movsx r11, r10w
and r11d, 0xfffffffd
cmp r11d, 1
je 0x1403aeb6c
mov rax, qword [rbx + 0x30]
test rax, rax
je 0x1403aeb2e
test byte [rax + 0x74], 2
je 0x1403ad065
mov edx, 0x23
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403ad02d
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x23
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [rbx + 0x29e]
mov rbp, rsp
and eax, 0x10
mov rcx, rbx
movzx r8d, byte [rbx + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x23
mov dword [rbp + 0x20], 0x23
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
and al, 0xbf
mov byte [r9 + 0x298], al
mov r9, qword [rsp + 0x98]
mov rax, qword [r9 + 0x80]
cmp byte [rax], 0x4b
je 0x1403aebbc
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403aeb81
test byte [rax + 0x74], 2
je 0x1403ad17a
mov edx, 0x25d
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403ad142
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x25d
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x25d
mov dword [rbx + 0x20], 0x25d
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403aebd3
test byte [rbx + 0x74], 2
je 0x1403ad265
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403ad232
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov ecx, ebp
lea rdx, [rsp + 0x30]
call fcn.1403c1480
test eax, eax
jne 0x1403ac450
mov r10, qword [rsp + 0x30]
xor ebp, ebp
mov r15b, byte [rsp + 0x3e0]
and r15b, 1
mov qword [r10 + 0x118], rbp
mov r11, qword [rsp + 0x30]
mov qword [r11 + 0x1c0], rbp
mov r13, qword [rsp + 0x30]
and byte [r13 + 0x29d], 0xf7
mov r11, qword [rsp + 0x30]
mov r10b, byte [r11 + 0x294]
and r10b, 0xfe
or r10b, r15b
mov byte [r11 + 0x294], r10b
mov r10b, byte [rsp + 0x41]
shr r10b, 3
mov r13, qword [rsp + 0x30]
and r10b, 0xf0
mov r11b, byte [r13 + 0x29e]
and r11b, 0xef
or r11b, r10b
mov byte [r13 + 0x29e], r11b
mov r11, qword [rsp + 0x30]
mov r10, qword [rdi]
mov qword [r11 + 0x1c0], r10
mov r10, qword [rsp + 0x30]
mov rdi, qword [rdi + 8]
mov qword [r10 + 0x118], rdi
mov r9, qword [rsp + 0x30]
mov rdi, qword [r9 + 0x30]
test rdi, rdi
je 0x1403ad451
test byte [rdi + 0x74], 2
je 0x1403ad3eb
mov dword [rdi + 0x68], ebx
mov rdi, qword [rsp + 0x30]
mov r10, qword [rdi + 0x30]
mov dword [r10 + 0x6c], ebx
mov r11, qword [rsp + 0x30]
mov rdi, qword [r11 + 0xd8]
test rdi, rdi
je 0x1403ad3ba
mov qword [rdi + 8], rbp
mov rdi, qword [rsp + 0x30]
mov qword [rdi + 0xd8], rbp
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, ebx
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebp, byte [r9 + 0x29e]
mov rdi, rsp
and ebp, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebp, 1
and r8d, 7
or r8d, ebp
mov r9d, ebx
mov dword [rdi + 0x20], ebx
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
call fcn.14043dac0
xor ecx, ecx
mov edx, ebx
mov r8d, ebx
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp byte [rbx + 2], 0x53
jne 0x1403ac746
mov rax, rsp
mov r8d, 0x53
mov rcx, qword [rbp + 8]
lea r9, [rsp + 0x90]
mov edx, dword [rbp]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x1403ad4f8
mov rbp, qword [rsp + 0x98]
add rbx, 4
mov al, byte [rbp + 0x28b]
mov byte [rbp + 0x28c], al
mov r9, qword [rsp + 0x98]
or byte [r9 + 0x29b], 0x20
mov r11, qword [rsp + 0x98]
mov r10d, dword [rsp + 0x90]
mov byte [r11 + 0x28b], r10b
jmp 0x1403ac746
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403ad5e4
test byte [rbx + 0x74], 2
je 0x1403ad57f
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403ad54c
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp byte [rbx + 2], 0x51
jne 0x1403ac73d
mov rax, rsp
mov r8d, 0x51
mov rcx, qword [rbp + 8]
lea r9, [rsp + 0x90]
mov edx, dword [rbp]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x1403ad698
mov r9, qword [rsp + 0x98]
add rbx, 4
add rbp, 0x10
mov al, byte [r9 + 0x287]
mov byte [r9 + 0x288], al
mov r10, qword [rsp + 0x98]
or byte [r10 + 0x29b], 0x10
mov rax, qword [rsp + 0x98]
mov r11d, dword [rsp + 0x90]
mov byte [rax + 0x287], r11b
jmp 0x1403ac73d
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403ad784
test byte [rbx + 0x74], 2
je 0x1403ad71f
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403ad6ec
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp byte [rbx + 2], 0x3c
jne 0x1403ac734
mov al, byte [rsp + 0x42]
test al, 8
je 0x1403ad7d4
test al, 2
jne 0x1403ad7de
jmp 0x1403ad7ea
test byte [rsp + 0x3e2], 4
jne 0x1403ad7ea
mov ecx, 0x2fc
xor edx, edx
call fcn.140383960
mov rax, rsp
mov r8d, 0x3c
mov rcx, qword [rbp + 8]
lea r9, [rsp + 0x90]
mov edx, dword [rbp]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x1403ad8a8
mov r10, qword [rsp + 0x98]
mov al, byte [r10 + 0x296]
mov r9b, al
shr al, 1
and r9b, 0xfb
and al, 1
shl al, 2
or r9b, al
mov byte [r10 + 0x296], r9b
mov r11, qword [rsp + 0x98]
or byte [r11 + 0x29b], 8
mov rax, qword [rsp + 0x90]
cmp rax, 2
jne 0x1403ad888
mov al, byte [rsp + 0x3e2]
shr al, 2
mov r10, qword [rsp + 0x98]
and al, 1
add al, al
mov r9b, byte [r10 + 0x296]
and r9b, 0xfd
or r9b, al
mov byte [r10 + 0x296], r9b
jmp 0x1403ad89b
cmp rax, 1
mov rax, qword [rsp + 0x98]
and byte [rax + 0x296], 0xfd
add rbx, 4
add rbp, 0x10
jmp 0x1403ac734
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403ad994
test byte [rbx + 0x74], 2
je 0x1403ad92f
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403ad8fc
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp byte [rbx + 2], 0x3b
jne 0x1403ac72b
mov rax, rsp
mov r8d, 0x3b
mov rcx, qword [rbp + 8]
lea r9, [rsp + 0x90]
mov edx, dword [rbp]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x1403ada7c
mov r9, qword [rsp + 0x98]
mov al, byte [r9 + 0x281]
mov byte [r9 + 0x282], al
mov r10, qword [rsp + 0x98]
or byte [r10 + 0x29b], 4
mov rax, qword [rsp + 0x90]
cmp rax, 2
je 0x1403ada60
cmp rax, 1
jne 0x1403ada49
mov rax, qword [rsp + 0x98]
mov byte [rax + 0x281], 0x27
jmp 0x1403ada6f
cmp rax, 3
jne 0x1403ada60
mov rax, qword [rsp + 0x98]
mov byte [rax + 0x281], 0x22
jmp 0x1403ada6f
mov rax, qword [rsp + 0x98]
mov byte [rax + 0x281], 0
add rbx, 4
add rbp, 0x10
jmp 0x1403ac72b
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403adb68
test byte [rbx + 0x74], 2
je 0x1403adb03
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403adad0
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp byte [rbx + 2], 0x52
jne 0x1403ac722
mov rax, rsp
mov r8d, 0x52
mov rcx, qword [rbp + 8]
lea r9, [rsp + 0x90]
mov edx, dword [rbp]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x1403adc1c
mov r9, qword [rsp + 0x98]
add rbx, 4
add rbp, 0x10
mov al, byte [r9 + 0x289]
mov byte [r9 + 0x28a], al
mov r10, qword [rsp + 0x98]
or byte [r10 + 0x29b], 2
mov rax, qword [rsp + 0x98]
mov r11d, dword [rsp + 0x90]
mov byte [rax + 0x289], r11b
jmp 0x1403ac722
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403add08
test byte [rbx + 0x74], 2
je 0x1403adca3
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403adc70
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp byte [rbx + 2], 6
jne 0x1403ac719
mov rax, rsp
mov r8d, 6
mov rcx, qword [rbp + 8]
lea r9, [rsp + 0x90]
mov edx, dword [rbp]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x1403addeb
mov r10, qword [rsp + 0x98]
mov al, byte [r10 + 0x293]
mov r9b, al
shr al, 5
and r9b, 0xbf
and al, 1
shl al, 6
or r9b, al
mov byte [r10 + 0x293], r9b
mov r11, qword [rsp + 0x98]
or byte [r11 + 0x29b], 1
mov rax, qword [rsp + 0x90]
cmp rax, 1
je 0x1403addcf
cmp rax, 2
jne 0x1403addcf
mov rax, qword [rsp + 0x98]
or byte [rax + 0x293], 0x20
jmp 0x1403addde
mov rax, qword [rsp + 0x98]
and byte [rax + 0x293], 0xdf
add rbx, 4
add rbp, 0x10
jmp 0x1403ac719
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403aded7
test byte [rbx + 0x74], 2
je 0x1403ade72
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403ade3f
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp byte [rbx + 2], 0x4f
jne 0x1403ac710
mov r9, qword [rsp + 0x98]
test byte [r9 + 0x293], 4
jne 0x1403ae13c
test byte [r9 + 0x291], 0x20
jne 0x1403ae03b
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403ae27c
test byte [rax + 0x74], 2
je 0x1403adfc6
mov edx, 0x6d
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403adf8e
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x6d
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x6d
mov qword [rsp + 0x30], 0
mov dword [rbx + 0x20], 0x6d
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403ae2c0
test byte [rax + 0x74], 2
je 0x1403ae0c7
mov dword [rax + 0x68], 0x6e
mov rax, qword [rsp + 0x98]
mov rdx, qword [rax + 0x30]
mov dword [rdx + 0x6c], 0x1f
mov rcx, qword [rsp + 0x98]
mov rax, qword [rcx + 0xd8]
test rax, rax
je 0x1403ae08f
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x6e
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x6e
mov qword [rsp + 0x30], 0
mov dword [rbx + 0x20], 0x1f
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
test r9, r9
je 0x1403ae14d
movzx eax, word [r9 + 0x27a]
test eax, eax
jg 0x1403ae17e
mov rax, qword [rbp]
add rbp, 8
dec rax
mov qword [r9 + 0x160], rax
mov r9, qword [rsp + 0x98]
cmp qword [r9 + 0x160], 0
jl 0x1403ae307
add rbx, 4
jmp 0x1403ac710
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403ae449
test byte [rax + 0x74], 2
je 0x1403ae207
mov edx, 0x10f
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403ae1cf
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x10f
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x10f
mov qword [rsp + 0x30], 0
mov dword [rbx + 0x20], 0x10f
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov edx, 0x6d
mov ecx, 1
mov r8d, edx
mov qword [rsp + 0x30], 0
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov ecx, 1
mov edx, 0x6e
mov r8d, 0x1f
mov qword [rsp + 0x30], 0
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403ae405
test byte [rax + 0x74], 2
je 0x1403ae390
mov edx, 0x6f
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403ae358
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x6f
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x6f
mov qword [rsp + 0x30], 0
mov dword [rbx + 0x20], 0x6f
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov edx, 0x6f
mov ecx, 1
mov r8d, edx
mov qword [rsp + 0x30], 0
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov edx, 0x10f
mov ecx, 1
mov r8d, edx
mov qword [rsp + 0x30], 0
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp byte [rbx + 2], 0x4e
jne 0x1403ac707
mov r9, qword [rsp + 0x98]
add rbx, 4
mov rax, qword [rbp]
mov qword [r9 + 0x1c0], rax
mov r11, qword [rsp + 0x98]
mov r10, qword [rbp + 8]
add rbp, 0x10
mov qword [r11 + 0x118], r10
mov rax, qword [rsp + 0x98]
and byte [rax + 0x29d], 0xf7
jmp 0x1403ac707
mov ecx, 1
mov edx, 0x100
mov r8d, 0x1f
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov ecx, 1
mov edx, 0x103
mov r8d, 0x1f
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov edx, 0x72
mov ecx, 1
mov r8d, edx
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
cmp r11, qword [rbx + 0xb0]
je 0x1403ae5bf
mov r10, qword [rbx + 0x170]
mov rbp, qword [rbx + 0x160]
cmp rbp, r10
jl 0x1403ae5bf
mov rax, qword [rbx + 0x178]
add rax, r10
cmp rbp, rax
jl 0x1403acbb4
mov rdx, qword [rbx + 0x160]
lea r8, [rsp + 0x74]
mov rcx, qword [rbx + 0x1a0]
xor r9d, r9d
mov qword [r8 - 4], rdx
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [rsp + 0x70], eax
mov ebx, eax
cmp eax, 0xffffffff
je 0x1403ae7e9
mov eax, dword [rsp + 0x74]
shl rax, 0x20
or rax, rbx
cmp rax, 0xffffffffffffffff
je 0x1403ae69d
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0x160]
mov qword [rbx + 0x168], rax
mov r9, qword [rsp + 0x98]
mov rbp, qword [r9 + 0x160]
mov qword [r9 + 0x170], rbp
mov r10, qword [rsp + 0x98]
mov qword [r10 + 0x180], rdi
mov r11, qword [rsp + 0x98]
mov qword [r11 + 0x178], rdi
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0x178]
mov qword [rbx + 0x1b8], rax
mov rax, qword [rsp + 0x98]
and byte [rax + 0x295], 0xfd
mov rax, qword [rsp + 0x98]
mov qword [rax + 0x140], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xa8], rdi
mov rbx, qword [rsp + 0x98]
jmp 0x1403acc12
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdx, qword [rsp + 0x98]
mov dword [rdx + 0x1a8], eax
mov r9, qword [rsp + 0x98]
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403ae7ae
test byte [rax + 0x74], 2
je 0x1403ae742
mov edx, 0x27
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403ae70a
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x27
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x27
mov dword [rbx + 0x20], 0x27
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov edx, 0x27
mov ecx, 1
mov r8d, edx
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x1403ae801
mov qword [rsp + 0x70], 0xffffffffffffffff
jmp 0x1403ae69d
mov rax, qword [rsp + 0x70]
jmp 0x1403ae5f9
mov r8, qword [rbx + 0x240]
mov edx, 0x20000
test r8, r8
mov r9, qword [rbx + 0x78]
cmove r8, rdx
mov rbp, qword [rbx + 0x88]
sub rbp, r9
cmp rbp, r8
ja 0x1403ae86a
mov rax, rsp
mov rdx, r9
mov rcx, qword [rbx + 0x1a0]
mov r8d, ebp
lea r9, [rsp + 0x78]
mov qword [rax + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r10d, 0xffffffff
test eax, eax
mov eax, 1
cmove eax, r10d
jmp 0x1403ae912
mov rax, rbp
mov qword [rsp + 0x30], r15
mov r15, r9
mov qword [rsp + 0x58], rsi
mov rsi, rax
mov qword [rsp + 0x60], r12
mov r12, r8
mov qword [rsp + 0x68], r14
mov r14, rdx
mov r10, rsp
mov rdx, r15
mov rcx, qword [rbx + 0x1a0]
mov r8d, r12d
lea r9, [rsp + 0x78]
mov qword [r10 + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x1403ae8cf
mov r15, qword [rsp + 0x30]
mov eax, 0xffffffff
mov rsi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
jmp 0x1403ae912
mov r10, qword [rbx + 0x240]
test r10, r10
mov r11d, dword [rsp + 0x78]
cmove r10, r14
mov eax, 1
sub rsi, r11
cmp rsi, r10
cmovb r12, rsi
add r15, r11
test rsi, rsi
je 0x1403ae8fe
test r11, r11
ja 0x1403ae88d
mov r15, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
mov r11, qword [rbx + 0x78]
mov r10, qword [rbx + 0x1c8]
mov qword [rbx + 0x88], r11
add r11, r10
mov r10, qword [rbx + 0x170]
add rbp, r10
and byte [rbx + 0x295], 0xfb
mov qword [rbx + 0x90], r11
mov qword [rbx + 0x158], 0
mov qword [rbx + 0x170], rbp
mov qword [rbx + 0x168], rbp
cmp eax, 0xffffffff
je 0x1403ae96a
mov rbx, qword [rsp + 0x98]
jmp 0x1403acb95
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbx + 0x1a8], eax
mov r9, qword [rsp + 0x98]
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403aea73
test byte [rax + 0x74], 2
je 0x1403aea07
mov edx, 0x26
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403ae9cf
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x26
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x26
mov dword [rbx + 0x20], 0x26
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov edx, 0x26
mov ecx, 1
mov r8d, edx
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov edx, 0x23
mov ecx, 1
mov r8d, edx
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
add qword [r9 + 0x80], 2
jmp 0x1403acf80
mov edx, 0x23
mov ecx, 1
mov r8d, edx
mov r9, rbx
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
add qword [rbx + 0x80], 2
mov rbx, qword [rsp + 0x98]
jmp 0x1403accb6
mov edx, 0x25d
mov ecx, 1
mov r8d, edx
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
inc rax
mov qword [r9 + 0x80], rax
mov r9, qword [rsp + 0x98]
jmp 0x1403acc75
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
test byte [r9 + 0x293], 4
jne 0x1403aec3f
mov rbx, qword [r9 + 0x108]
test rbx, rbx
je 0x1403ad1e6
cmp byte [rbx + 0x33], 0
je 0x1403ad1e6
movzx ebx, word [r9 + 0x27a]
test ebx, ebx
jg 0x1403ad1e6
mov rax, qword [rsp + 0x3f0]
lea rcx, [rsp + 0x80]
mov qword [rcx], r15
lea rdx, [rsp + 0x88]
mov qword [rdx], rax
lea r8, [rsp + 0x30]
lea r9, [rsp + 0xa0]
call fcn.1403ca9c0
test eax, eax
je 0x1403aed63
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403aee79
test byte [rbx + 0x74], 2
je 0x1403aecfe
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403aeccb
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
cmp qword [rsp + 0x38], 0
je 0x1403aee6c
mov r9, qword [rsp + 0x98]
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403aeeb1
test byte [rax + 0x74], 2
je 0x1403aee00
mov edx, 0x18
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0x98]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbx, qword [rsp + 0x98]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x1403aedc8
mov qword [rax + 8], rdi
mov rax, qword [rsp + 0x98]
mov qword [rax + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
mov eax, 0x18
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx eax, byte [r9 + 0x29e]
mov rbx, rsp
and eax, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x18
mov dword [rbx + 0x20], 0x18
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov r9, qword [rsp + 0x98]
jmp 0x1403acc52
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov edx, 0x18
mov ecx, 1
mov r8d, edx
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
test byte [rax + 0x290], 1
je 0x1403aef0b
test byte [rax + 0x293], 8
je 0x1403aef0b
cmp byte [rax + 0x27d], 2
je 0x1403acb58
cmp dword [rax + 0x238], 7
je 0x1403acb58
or byte [rax + 0x297], 0x20
mov rbx, qword [rsp + 0x98]
jmp 0x1403accb6
mov r10b, byte [rsp + 0x3e0]
shr r10b, 7
mov bl, byte [r9 + 0x290]
and bl, 0xfe
or bl, r10b
mov r10b, byte [rsp + 0x3e2]
mov byte [r9 + 0x290], bl
mov bl, r10b
shr bl, 2
mov rbp, qword [rsp + 0x98]
and bl, 1
add bl, bl
mov r9b, byte [rbp + 0x290]
and r9b, 0xfd
or r9b, bl
mov byte [rbp + 0x290], r9b
mov r9b, byte [rsp + 0x3e3]
mov bpl, r9b
shr bpl, 3
and bpl, 1
mov bl, bpl
shl bl, 2
mov rcx, qword [rsp + 0x98]
mov dl, byte [rcx + 0x290]
and dl, 0xfb
or dl, bl
mov bl, r9b
shr bl, 2
and bl, 1
shl bl, 3
mov byte [rcx + 0x290], dl
mov rdx, qword [rsp + 0x98]
mov r8b, byte [rdx + 0x290]
and r8b, 0xf7
or r8b, bl
mov bl, r9b
shr bl, 6
and bl, 1
shl bl, 4
mov byte [rdx + 0x290], r8b
mov r8, qword [rsp + 0x98]
mov cl, byte [r8 + 0x290]
and cl, 0xef
or cl, bl
mov bl, bpl
shl bl, 5
shl bpl, 3
mov byte [r8 + 0x290], cl
mov rcx, qword [rsp + 0x98]
mov dl, byte [rcx + 0x290]
and dl, 0xdf
or dl, bl
mov bl, r9b
shr bl, 4
shr r9b, 5
and bl, 1
and r9b, 1
shl bl, 2
mov byte [rcx + 0x290], dl
mov rdx, qword [rsp + 0x98]
mov r8b, byte [rdx + 0x299]
and r8b, 0xfb
or r8b, bl
mov byte [rdx + 0x299], r8b
mov rcx, qword [rsp + 0x98]
mov bl, byte [rcx + 0x299]
and bl, 0xf7
or bl, bpl
mov bpl, r9b
shl bpl, 6
shl r9b, 7
mov byte [rcx + 0x299], bl
mov rdx, qword [rsp + 0x98]
mov bl, byte [rdx + 0x290]
and bl, 0xbf
or bl, bpl
mov byte [rdx + 0x290], bl
mov rbp, qword [rsp + 0x98]
mov bl, byte [rbp + 0x290]
and bl, 0x7f
or bl, r9b
mov byte [rbp + 0x290], bl
mov rdx, qword [rsp + 0x98]
mov bl, byte [rsp + 0x40]
mov r9b, bl
and r9b, 1
mov bpl, byte [rdx + 0x291]
and bpl, 0xfe
or bpl, r9b
mov byte [rdx + 0x291], bpl
mov bpl, bl
shr bpl, 1
and bpl, 1
shl bpl, 5
mov rcx, qword [rsp + 0x98]
mov r9b, byte [rcx + 0x299]
and r9b, 0xdf
or r9b, bpl
mov bpl, bl
shr bpl, 2
and bl, 0x80
mov byte [rcx + 0x299], r9b
and bpl, 3
mov r8, qword [rsp + 0x98]
add bpl, bpl
mov r9b, byte [r8 + 0x291]
and r9b, 0xf9
or r9b, bpl
mov bpl, r11b
shr bpl, 1
and bpl, 1
shl bpl, 3
mov byte [r8 + 0x291], r9b
mov rdx, qword [rsp + 0x98]
mov r9b, byte [rdx + 0x29c]
and r9b, 0xf7
or r9b, bpl
mov byte [rdx + 0x29c], r9b
mov r9, qword [rsp + 0x98]
mov bpl, byte [r9 + 0x29b]
and bpl, 0x7f
or bpl, bl
mov bl, r11b
shr bl, 6
shl bl, 7
mov byte [r9 + 0x29b], bpl
mov r9, qword [rsp + 0x98]
mov bpl, byte [r9 + 0x29d]
and bpl, 0x7f
or bpl, bl
mov byte [r9 + 0x29d], bpl
mov rbp, qword [rsp + 0x98]
mov bl, byte [rbp + 0x29e]
and bl, 0xef
or bl, al
mov al, byte [rsp + 0x42]
mov byte [rbp + 0x29e], bl
mov bl, al
and bl, 1
shl bl, 5
mov r9, qword [rsp + 0x98]
mov bpl, byte [r9 + 0x29e]
and bpl, 0xdf
or bpl, bl
mov bl, al
shr bl, 1
and bl, 1
shl bl, 6
mov byte [r9 + 0x29e], bpl
mov r9, qword [rsp + 0x98]
mov bpl, byte [r9 + 0x29e]
and bpl, 0xbf
or bpl, bl
mov bl, al
shr bl, 2
shr al, 3
shl bl, 7
mov byte [r9 + 0x29e], bpl
and al, 1
mov r9, qword [rsp + 0x98]
mov bpl, byte [r9 + 0x29e]
and bpl, 0x7f
or bpl, bl
mov byte [r9 + 0x29e], bpl
mov rbp, qword [rsp + 0x98]
mov bl, byte [rbp + 0x29f]
and bl, 0xfe
or bl, al
mov byte [rbp + 0x29f], bl
mov rbp, qword [rsp + 0x98]
mov al, byte [rbp + 0x29c]
test al, 0x10
jne 0x1403af277
shr r11b, 2
and al, 0xef
and r11b, 1
shl r11b, 4
or al, r11b
mov byte [rbp + 0x29c], al
mov rbp, qword [rsp + 0x98]
and r10b, 1
mov al, r10b
shl al, 5
mov bl, byte [rbp + 0x295]
and bl, 0xdf
or bl, al
mov r9b, byte [rsp + 0x3e1]
mov byte [rbp + 0x295], bl
test r10b, r10b
jne 0x1403af2aa
test r9b, r9b
je 0x1403af2c8
cmp r9b, 0xff
je 0x1403af2c8
mov rax, qword [rsp + 0x98]
or byte [rax + 0x295], 0x10
mov rbx, qword [rsp + 0x98]
mov byte [rbx + 0x280], r9b
mov edx, 1
mov r9d, 2
mov r8d, edx
mov rcx, qword [rsp + 0x98]
call fcn.14036de40
test eax, eax
je 0x1403af3d7
mov r9, qword [rsp + 0x98]
mov rbx, qword [r9 + 0x30]
test rbx, rbx
je 0x1403af3e4
test byte [rbx + 0x74], 2
je 0x1403af372
mov dword [rbx + 0x68], eax
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rcx + 0x30]
mov dword [rbx + 0x6c], eax
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1403af33f
mov qword [rcx + 8], rdi
mov rcx, qword [rsp + 0x98]
mov qword [rcx + 0xd8], rdi
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
movzx ebx, byte [r9 + 0x29e]
mov rbp, rsp
and ebx, 0x10
mov rcx, r9
movzx r8d, byte [r9 + 0x294]
mov edx, 0xffffffff
shr ebx, 1
and r8d, 7
or r8d, ebx
mov r9d, eax
mov dword [rbp + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
add rsp, 0x3a0
pop rbp
pop r15
pop r13
pop rdi
pop rbx
ret
mov r9, qword [rsp + 0x98]
jmp 0x1403ac7bf
mov ecx, 2
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x398]
mov qword [rsp + 0x398], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x1403ad44c
jmp 0x1403ac477
mov r11b, byte [rsp + 0x41]
jmp 0x1403ac787