Function at 0x140342900
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push rsi
push r12
push r13
push r15
push rbp
sub rsp, 0x810
mov r15, rcx
mov qword [rsp + 0x848], rdx
mov ecx, 0xfffffffb
mov qword [rsp + 0x850], r8
lea rdx, [rsp + 0xd0]
mov qword [rsp + 0x858], r9
mov r8, r15
mov r9d, 4
mov rax, qword [0x14194d6d8]
xor rax, rsp
mov qword [rdx + 0x738], rax
call fcn.1403bf1e0
mov r12d, eax
test r12d, r12d
je 0x140342a4c
lea rbp, [rsp + 0x868]
mov qword [rsp + 0x30], rbp
movzx r10d, byte [rsp + 0x84b]
and r10d, 0x80
mov dword [rsp + 0x40], 0
shr r10d, 7
je 0x140342998
mov ebp, dword [rsp + 0x84c]
mov dword [rsp + 0x40], ebp
mov bpl, byte [rsp + 0x41]
and bpl, 0x80
shr bpl, 7
mov sil, byte [rsp + 0x848]
and sil, 1
or sil, bpl
je 0x140342a29
test r10d, r10d
je 0x1403429f1
test byte [rsp + 0x40], 0x10
je 0x1403429f1
mov rbp, qword [rsp + 0x30]
lea rsi, [rbp + 8]
mov qword [rsp + 0x30], rsi
add rbp, 0x10
mov r10, qword [rsi - 8]
mov qword [rsp + 0x30], rbp
mov rsi, qword [rsi]
cmp byte [r10], 0x38
jne 0x1403429f1
cmp byte [r10 + 2], 0x4e
je 0x140344597
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
movzx eax, r12w
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov ecx, r12d
mov edx, 2
mov r8d, 0xfffffffb
lea r9, str.unknown
call fcn.140383960
mov qword [rsp + 0x30], 0
mov sil, byte [rsp + 0x84a]
mov cl, sil
shr cl, 5
mov rdx, qword [rsp + 0xd0]
and cl, 1
mov r9b, byte [rsp + 0x848]
mov r13b, r9b
shl cl, 2
and r13b, 1
mov al, byte [rdx + 0x294]
mov r11b, r9b
and al, 0xfe
and r11b, 2
or al, r13b
mov byte [rdx + 0x294], al
mov r10, qword [rsp + 0xd0]
mov dword [rsp + 0x40], 0
mov bpl, byte [r10 + 0x294]
and bpl, 0xfb
or bpl, cl
mov byte [r10 + 0x294], bpl
mov r13, qword [rsp + 0xd0]
mov r12b, byte [r13 + 0x294]
and r12b, 0xfd
or r12b, r11b
mov byte [r13 + 0x294], r12b
mov r13b, r9b
shr r13b, 7
mov rdx, qword [rsp + 0xd0]
mov al, byte [rdx + 0x290]
and al, 0xfe
or al, r13b
mov r13b, sil
shr r13b, 2
shr sil, 1
mov byte [rdx + 0x290], al
and r13b, 1
mov rdx, qword [rsp + 0xd0]
add r13b, r13b
and sil, 0xe0
mov al, byte [rdx + 0x290]
and al, 0xfd
or al, r13b
mov byte [rdx + 0x290], al
mov rax, qword [rsp + 0xd0]
mov r13b, byte [rax + 0x296]
and r13b, 0x9f
or r13b, sil
mov byte [rax + 0x296], r13b
movzx esi, byte [rsp + 0x84b]
mov r13d, esi
mov rdx, qword [rsp + 0xd0]
shr r13d, 3
and r13d, 1
movzx eax, byte [rdx + 0x290]
shl r13d, 2
and eax, 0xfffffffb
or eax, r13d
mov r13d, esi
mov byte [rdx + 0x290], al
mov rdx, qword [rsp + 0xd0]
shl r13d, 7
movzx eax, byte [rdx + 0x296]
and eax, 0x7f
or eax, r13d
mov r13d, esi
mov byte [rdx + 0x296], al
mov rdx, qword [rsp + 0xd0]
shr r13d, 1
and r13d, 1
movzx eax, byte [rdx + 0x297]
shl r13d, 3
and eax, 0xfffffff7
or eax, r13d
xor r13d, r13d
mov byte [rdx + 0x297], al
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x118], r13
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x1c0], r13
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x29d], 0xf7
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rdx + 0x168]
mov qword [rdx + 0x160], rax
test esi, 0x80
jne 0x140342c1b
xor cl, cl
xor bpl, bpl
mov rax, qword [rsp + 0xd0]
xor dl, dl
jmp 0x140342e2b
lea rax, [rsp + 0x868]
mov qword [rsp + 0x30], rax
mov ecx, dword [rsp + 0x84c]
mov rax, qword [rsp + 0xd0]
mov dword [rsp + 0x40], ecx
test rax, rax
je 0x1403466f1
test cl, 0x20
je 0x140342c58
or byte [rax + 0x29b], 0x40
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x29d], 0xbf
mov bpl, byte [rsp + 0x41]
test bpl, 0x20
je 0x140342c79
mov rax, qword [rsp + 0xd0]
or byte [rax + 0x29d], 0x40
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x29d], 0x7f
test bpl, 0x40
je 0x140342c9d
mov rax, qword [rsp + 0xd0]
or byte [rax + 0x29d], 0x80
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x29e], 0xef
test bpl, 0x80
je 0x140342cc1
mov rax, qword [rsp + 0xd0]
or byte [rax + 0x29e], 0x10
mov rax, qword [rsp + 0xd0]
mov dl, byte [rsp + 0x42]
and byte [rax + 0x29e], 0xdf
test dl, 1
je 0x140342ce8
mov rax, qword [rsp + 0xd0]
or byte [rax + 0x29e], 0x20
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x29e], 0xbf
test dl, 2
je 0x140342d0b
mov rax, qword [rsp + 0xd0]
or byte [rax + 0x29e], 0x40
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x29e], 0x7f
test dl, 4
je 0x140342d2e
mov rax, qword [rsp + 0xd0]
or byte [rax + 0x29e], 0x80
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x29f], 0xfe
test dl, 8
je 0x140342d51
mov rax, qword [rsp + 0xd0]
or byte [rax + 0x29f], 1
test cl, 0x10
je 0x140342e0a
mov rax, qword [rsp + 0x30]
lea rdx, [rax + 8]
mov qword [rsp + 0x30], rdx
add rax, 0x10
mov rbp, qword [rdx - 8]
mov qword [rsp + 0x30], rax
mov rsi, qword [rdx]
cmp byte [rbp], 0x38
je 0x140345733
cmp byte [rbp], 0xb
je 0x1403451ae
cmp byte [rbp], 0x38
je 0x140344fe9
cmp byte [rbp], 0x38
je 0x140344e51
cmp byte [rbp], 0x38
je 0x140344c85
cmp byte [rbp], 0x38
je 0x140344a83
cmp byte [rbp], 0x38
je 0x1403448eb
cmp byte [rbp], 0x38
je 0x140344758
cmp byte [rbp], 1
je 0x140342df3
mov ecx, 8
mov edx, 2
lea r8, str.for_wint_fmt.c
mov r9d, 0x204
mov qword [rsp + 0x30], 0
call fcn.140383960
mov rax, qword [rsp + 0xd0]
mov cl, byte [rsp + 0x40]
mov bpl, byte [rsp + 0x41]
mov dl, byte [rsp + 0x42]
jmp 0x140342e12
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x30], 0
mov r9b, byte [rsp + 0x848]
movzx esi, byte [rsp + 0x84b]
mov r10d, esi
mov r12d, esi
shr r10d, 2
and r10d, 1
movzx r11d, byte [rax + 0x290]
shl r10d, 3
and r11d, 0xfffffff7
or r11d, r10d
mov byte [rax + 0x290], r11b
mov r10, qword [rsp + 0xd0]
shr r12d, 6
and r12d, 1
movzx eax, byte [r10 + 0x290]
shl r12d, 4
and eax, 0xffffffef
or eax, r12d
mov byte [r10 + 0x290], al
mov eax, esi
shr eax, 3
mov r12, qword [rsp + 0xd0]
and eax, 1
mov r10d, eax
shl r10d, 5
movzx r11d, byte [r12 + 0x290]
and r11d, 0xffffffdf
or r11d, r10d
mov r10d, esi
mov byte [r12 + 0x290], r11b
mov r12, qword [rsp + 0xd0]
shr r10d, 4
and r10d, 1
movzx r11d, byte [r12 + 0x299]
shl r10d, 2
and r11d, 0xfffffffb
or r11d, r10d
mov byte [r12 + 0x299], r11b
mov r11, qword [rsp + 0xd0]
shl eax, 3
shr esi, 5
movzx r10d, byte [r11 + 0x299]
and esi, 1
and r10d, 0xfffffff7
or r10d, eax
mov eax, esi
mov byte [r11 + 0x299], r10b
mov r11, qword [rsp + 0xd0]
shl eax, 6
shl esi, 7
movzx r10d, byte [r11 + 0x290]
and r10d, 0xffffffbf
or r10d, eax
mov byte [r11 + 0x290], r10b
mov r10, qword [rsp + 0xd0]
movzx eax, byte [r10 + 0x290]
and eax, 0x7f
or eax, esi
mov sil, cl
mov byte [r10 + 0x290], al
and sil, 1
mov r10, qword [rsp + 0xd0]
mov al, byte [r10 + 0x291]
and al, 0xfe
or al, sil
mov byte [r10 + 0x291], al
mov al, cl
shr al, 1
and al, 1
shl al, 5
mov r10, qword [rsp + 0xd0]
mov sil, byte [r10 + 0x299]
and sil, 0xdf
or sil, al
mov al, cl
shr al, 2
and cl, 0x80
mov byte [r10 + 0x299], sil
and al, 3
mov r10, qword [rsp + 0xd0]
add al, al
mov sil, byte [r10 + 0x291]
and sil, 0xf9
or sil, al
mov al, bpl
shr al, 1
and al, 1
shl al, 3
mov byte [r10 + 0x291], sil
mov r10, qword [rsp + 0xd0]
mov sil, byte [r10 + 0x29c]
and sil, 0xf7
or sil, al
mov byte [r10 + 0x29c], sil
mov rsi, qword [rsp + 0xd0]
mov al, byte [rsi + 0x29b]
and al, 0x7f
or al, cl
mov cl, bpl
shr cl, 6
shl cl, 7
mov byte [rsi + 0x29b], al
mov rsi, qword [rsp + 0xd0]
mov al, byte [rsi + 0x29d]
and al, 0x7f
or al, cl
mov byte [rsi + 0x29d], al
mov al, bpl
shr al, 3
mov rsi, qword [rsp + 0xd0]
and al, 0xf0
mov cl, byte [rsi + 0x29e]
and cl, 0xef
or cl, al
mov al, dl
and al, 1
shl al, 5
mov byte [rsi + 0x29e], cl
mov rsi, qword [rsp + 0xd0]
mov cl, byte [rsi + 0x29e]
and cl, 0xdf
or cl, al
mov al, dl
shr al, 1
and al, 1
shl al, 6
mov byte [rsi + 0x29e], cl
mov rsi, qword [rsp + 0xd0]
mov cl, byte [rsi + 0x29e]
and cl, 0xbf
or cl, al
mov al, dl
shr al, 2
shr dl, 3
shl al, 7
mov byte [rsi + 0x29e], cl
and dl, 1
mov rsi, qword [rsp + 0xd0]
mov cl, byte [rsi + 0x29e]
and cl, 0x7f
or cl, al
mov byte [rsi + 0x29e], cl
mov rcx, qword [rsp + 0xd0]
mov al, byte [rcx + 0x29f]
and al, 0xfe
or al, dl
mov byte [rcx + 0x29f], al
mov rdx, qword [rsp + 0xd0]
mov al, byte [rdx + 0x29c]
test al, 0x10
jne 0x1403430e7
shr bpl, 2
and al, 0xef
and bpl, 1
shl bpl, 4
or al, bpl
mov byte [rdx + 0x29c], al
mov rdx, qword [rsp + 0xd0]
lea rax, str.Internal_Formatted_Write_or_ENCODE
mov qword [rdx + 0xd0], rax
mov eax, 0xc0
mov rdx, qword [rsp + 0xd0]
pxor xmm0, xmm0
mov rbp, qword [rdx + 0xc0]
movdqu xmmword [rbp + rax - 0x10], xmm0
movdqu xmmword [rbp + rax - 0x20], xmm0
movdqu xmmword [rbp + rax - 0x30], xmm0
movdqu xmmword [rbp + rax - 0x40], xmm0
sub rax, 0x40
jne 0x14034310d
mov cl, byte [rsp + 0x42]
shr cl, 2
mov dl, byte [rsp + 0x41]
and dl, 1
shl dl, 5
shl cl, 7
mov sil, byte [rbp + 0xb8]
and sil, 0x5f
or sil, dl
mov rax, qword [rsp + 0xd0]
or sil, cl
mov qword [rbp], rax
mov byte [rbp + 0xb8], sil
mov rdx, qword [rsp + 0xd0]
mov al, byte [rdx + 0x28b]
test al, al
je 0x1403431cd
cmp al, 1
je 0x1403431b5
cmp al, 2
jne 0x140343197
mov al, byte [rbp + 0xb4]
or al, 4
and al, 0xe7
mov byte [rbp + 0xb4], al
mov rdx, qword [rsp + 0xd0]
jmp 0x1403431cd
cmp al, 3
jne 0x1403431cd
mov al, byte [rbp + 0xb4]
and al, 0xeb
or al, 8
mov byte [rbp + 0xb4], al
mov rdx, qword [rsp + 0xd0]
jmp 0x1403431cd
mov al, byte [rbp + 0xb4]
and al, 0xf3
or al, 0x10
mov byte [rbp + 0xb4], al
mov rdx, qword [rsp + 0xd0]
mov al, byte [rdx + 0x287]
mov byte [rbp + 0xb1], al
test r9b, 8
je 0x140343328
mov rax, qword [rsp + 0xd0]
test byte [rax + 0x29e], 0x10
jne 0x140343205
movzx r8d, byte [rax + 0x294]
not r8d
and r8d, 1
jmp 0x140343208
xor r8d, r8d
mov rcx, qword [rsp + 0x860]
lea rdx, [rsp + 0xc8]
call fcn.1403c47c0
test eax, eax
je 0x140343313
mov r9, qword [rsp + 0xd0]
mov rbp, qword [r9 + 0x30]
test rbp, rbp
je 0x14034577f
test byte [rbp + 0x74], 2
je 0x1403432ad
mov dword [rbp + 0x68], eax
mov rcx, qword [rsp + 0xd0]
mov rbp, qword [rcx + 0x30]
mov dword [rbp + 0x6c], eax
mov rsi, qword [rsp + 0xd0]
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x140343279
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, eax
mov dword [rsi + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov rax, qword [rsp + 0xc8]
mov qword [rbp + 0x10], rax
or byte [rbp + 0xb7], 2
jmp 0x140343334
mov rax, qword [rsp + 0x860]
mov qword [rbp + 0x10], rax
lea rcx, [rsp + 0x850]
lea rdx, [rsp + 0x858]
lea r8, [rsp + 0x70]
lea r9, [rsp + 0x510]
call fcn.1403ca9c0
test eax, eax
je 0x14034344c
mov r9, qword [rsp + 0xd0]
mov rbp, qword [r9 + 0x30]
test rbp, rbp
je 0x1403457b7
test byte [rbp + 0x74], 2
je 0x1403433e6
mov dword [rbp + 0x68], eax
mov rcx, qword [rsp + 0xd0]
mov rbp, qword [rcx + 0x30]
mov dword [rbp + 0x6c], eax
mov rsi, qword [rsp + 0xd0]
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x1403433b2
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, eax
mov dword [rsi + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov rdx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x88]
sar rdx, 0x3f
sar rax, 0x3f
not rdx
not rax
and rdx, qword [rsp + 0x78]
and rax, qword [rsp + 0x88]
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x88], rax
cmp dword [rsp + 0x80], 5
je 0x1403466c7
mov rdx, qword [rsp + 0xd0]
mov qword [rdx + 0x1c8], rax
lea rax, str.Internal_Formatted_Write
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd0], rax
mov rax, qword [rsp + 0x70]
mov qword [rcx + 0xf0], rax
mov rbp, qword [rsp + 0xd0]
mov qword [rbp + 0x78], rax
mov r9, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0x78]
mov qword [r9 + 0x138], rsi
mov r11, qword [rsp + 0xd0]
mov r10, qword [rsp + 0x78]
mov qword [r11 + 0x1b0], r10
mov rdx, qword [rsp + 0xd0]
mov r12, qword [rdx + 0x78]
mov qword [rdx + 0x80], r12
mov edx, 0x20
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rax + 0x80]
add rcx, qword [rax + 0x1c8]
mov qword [rax + 0x90], rcx
mov rsi, qword [rsp + 0xd0]
mov rbp, qword [rsi + 0x80]
mov qword [rsi + 0x98], rbp
mov r9, qword [rsp + 0xd0]
mov rcx, qword [r9 + 0x80]
mov r8, qword [r9 + 0x1c8]
call fcn.14042ad60
mov eax, dword [rsp + 0x510]
cmp eax, 8
jne 0x1403435ba
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x14034358e
mov rax, qword [rsp + 0x78]
cqo
idiv rcx
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0x188], rax
jmp 0x1403435a1
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x188], 0
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0x88]
mov qword [rdx + 0x1d0], rax
jmp 0x140343626
cmp eax, 6
jne 0x140343613
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x1403435e7
mov rax, qword [rsp + 0x78]
cqo
idiv rcx
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0x188], rax
jmp 0x1403435fa
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x188], 0
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0x88]
mov qword [rdx + 0x1d0], rax
jmp 0x140343626
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x188], 1
xor edx, edx
mov ebp, 1
mov r12, qword [r15 + 8]
xor r8b, r8b
mov r10, qword [rsp + 0x850]
xor eax, eax
mov rsi, qword [rsp + 0x858]
test r12, r12
je 0x140346544
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xc0], r10
mov rsi, qword [r12 + 0xc0]
test rsi, rsi
je 0x140346544
cmp qword [r12 + 0x188], 0
jle 0x14034631f
mov qword [rsp + 0xb0], r15
mov r15d, edx
mov qword [rsp + 0x98], rbx
mov ebx, eax
mov qword [rsp + 0xa8], rdi
mov r13, rcx
mov qword [rsp + 0xa0], r14
mov dil, r8b
test byte [r12 + 0x29c], 0x20
jne 0x14034661e
mov r14, qword [rsi + 0x28]
cmp r14, 1
jbe 0x14034379b
mov r10d, dword [rsi + 0x94]
dec r14
mov r11b, byte [rsi + 0x98]
and r11b, 1
mov dword [rsi + 0x9c], r10d
add r11b, r11b
mov r10b, byte [rsi + 0xb8]
and r10b, 0xfd
or r10b, r11b
mov byte [rsi + 0xb8], r10b
mov r10b, byte [rsi + 0xb7]
mov qword [rsi + 0x28], r14
test r10b, 0x10
je 0x14034380e
test r10b, 0x20
je 0x14034380e
mov r11, qword [rsp + 0xc0]
mov al, byte [r11]
cmp al, 0x41
jne 0x14034373f
lea r10, [r11 + 2]
mov qword [rsp + 0xc0], r10
mov al, byte [r10]
mov r10b, byte [rsi + 0xb7]
cmp al, 2
je 0x1403458ad
and r10b, 0xdf
cmp al, 1
je 0x14034588b
and r10b, 0xbf
mov byte [rsi + 0xb7], r10b
mov rcx, r12
call fcn.1403c37c0
mov edx, eax
test edx, edx
jne 0x140345815
mov r10b, byte [rsi + 0xb7]
movsxd r11, r14d
test r10b, 0x10
je 0x14034378a
test r10b, 0x20
jne 0x1403457ef
mov qword [rsi + 0x28], r11
or r10b, 0x20
mov byte [rsi + 0xb7], r10b
jmp 0x14034380e
mov r11, qword [rsp + 0xc0]
mov r10b, byte [r11]
cmp r10b, 0x41
jne 0x1403437bb
lea r10, [r11 + 2]
mov qword [rsp + 0xc0], r10
mov r10b, byte [r10]
cmp r10b, 2
je 0x1403465cf
mov r11b, byte [rsi + 0xb7]
and r11b, 0xdf
cmp r10b, 1
je 0x1403465ad
and r11b, 0xbf
mov byte [rsi + 0xb7], r11b
mov rcx, r12
call fcn.1403c37c0
mov edx, eax
test edx, edx
jne 0x14034654b
mov r10b, byte [rsi + 0xb7]
test r10b, 0x10
je 0x14034380e
test r10b, 0x20
jne 0x14034651c
mov r11b, byte [rsi + 0xb0]
cmp r11b, 0x12
je 0x14034645c
cmp r11b, 2
je 0x140346120
cmp r11b, 0x1c
je 0x1403443d1
cmp r11b, 0x11
jne 0x140343891
cmp rbp, 2
jge 0x140344439
mov r11, qword [rsp + 0xc0]
mov r11b, byte [r11]
cmp r11b, 1
je 0x140346434
cmp r11b, 2
je 0x1403458d2
mov r8, rbp
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb8]
call fcn.1403cb180
cmp eax, 2
je 0x1403458c8
cmp eax, 1
je 0x140344448
jmp 0x140344439
cmp r11b, 0x10
je 0x140344439
cmp rbp, 1
jle 0x14034390a
mov r10d, dword [rsp + 0x218]
add r10d, 0xfffffff9
cmp r10d, 1
ja 0x1403438ef
test ebx, ebx
je 0x1403438cb
mov rbx, qword [rsp + 0x60]
dec rbp
add qword [rsp + 0x48], rbx
xor ebx, ebx
jmp 0x140343acb
xor ebx, ebx
test r15d, r15d
lea rcx, [rsp + 0x218]
setne bl
lea rdx, [rsp + 0x120]
call fcn.1403b8010
mov qword [rsp + 0x48], rax
jmp 0x140343902
xor r11d, r11d
test ebx, ebx
mov r10, qword [rsp + 0x60]
cmovne ebx, r11d
add qword [rsp + 0x48], r10
dec rbp
jmp 0x140343acb
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb8]
lea r8, [rsp + 0x48]
lea r9, [rsp + 0x218]
call fcn.1403ca9c0
mov edx, eax
test edx, edx
jne 0x140346009
mov ebp, dword [rsp + 0x58]
cmp ebp, 2
je 0x140345fd2
cmp ebp, 1
je 0x140344448
cmp ebp, 0x41
je 0x140345f3b
mov r10d, dword [rsp + 0x218]
lea ebp, [r10 - 7]
cmp ebp, 1
ja 0x140343a56
mov r10, qword [rsp + 0x60]
test r10, r10
je 0x140343983
mov rax, qword [rsp + 0x50]
cqo
idiv r10
mov rbp, rax
jmp 0x140343997
test byte [r12 + 0x290], 2
je 0x140343a52
mov rbp, qword [rsp + 0x50]
test rbp, rbp
je 0x140343aa1
mov r11d, dword [rsp + 0x58]
lea r10d, [r11 - 0x1c]
cmp r10d, 0x10
jbe 0x1403439ba
cmp r11d, 0x34
je 0x1403439ba
xor r15d, r15d
jmp 0x1403439c3
mov r15d, 1
mov ebx, r15d
movsxd r14, dword [rsp + 0x21c]
test r14, r14
jle 0x140343a36
cmp r14, 2
jl 0x1403458f9
mov r11, r14
xor r10d, r10d
and r11, 0xfffffffffffffffe
lea rax, [r10 + r10*2]
movq xmm0, qword [rsp + rax*8 + 0x230]
movhpd xmm0, qword [rsp + rax*8 + 0x248]
movdqu xmmword [rsp + r10*8 + 0x120], xmm0
add r10, 2
cmp r10, r11
jb 0x1403439e4
lea r10, [r11 + r11*2]
shl r10, 3
cmp r11, r14
jae 0x140343a36
mov rax, qword [rsp + r10 + 0x230]
add r10, 0x18
mov qword [rsp + r11*8 + 0x120], rax
inc r11
cmp r11, r14
jb 0x140343a1a
lea rcx, [rsp + 0x218]
lea rdx, [rsp + 0x120]
call fcn.1403b8010
mov qword [rsp + 0x48], rax
jmp 0x140343acb
xor ebp, ebp
jmp 0x140343aa1
add r10d, 0xfffffffb
cmp r10d, 1
ja 0x140343aa6
mov r11b, byte [r12 + 0x290]
and r11b, 2
mov r10, qword [rsp + 0x60]
shr r11b, 1
mov rbp, qword [rsp + 0x50]
test r10, r10
je 0x140343a90
mov rax, rbp
cqo
idiv r10
mov rbp, rax
test r11b, r11b
jne 0x140343a9c
jmp 0x140343acb
xor r10d, r10d
test r11b, r11b
cmove rbp, r10
je 0x140343acb
test rbp, rbp
jne 0x140343acb
mov dil, 1
jmp 0x140343ad0
mov r10d, dword [rsp + 0x58]
lea ebp, [r10 - 0x1c]
cmp ebp, 0x10
jbe 0x140343ac1
cmp r10d, 0x34
je 0x140343ac1
mov ebp, 1
jmp 0x140343acb
mov ebp, 2
mov ebx, 1
test dil, dil
je 0x140343af2
mov r10, qword [rsi + 0x28]
test r10, r10
jne 0x140343ae6
mov qword [rsi + 0x28], 2
jmp 0x140344439
inc r10
mov qword [rsi + 0x28], r10
jmp 0x140344439
mov r14d, dword [rsp + 0x58]
mov r10d, r14d
and r10d, 0xfffffffd
movsx r11d, byte [rsi + 0xb0]
cmp r10d, 0x40
je 0x140345dd5
cmp r14d, 0x40
je 0x140345d1e
cmp r14d, 0x42
je 0x140345c5b
lea r10d, [r14 - 0x40]
add r14d, 0xffffffbe
or r10d, r14d
je 0x140343b3b
cmp r11d, 0x74
je 0x140345ba2
mov r10, qword [rsi]
xor edx, edx
and byte [rsi + 0xb7], 0xf7
test byte [r10 + 0x296], 0x80
je 0x140343b85
movsx r14, r11b
lea r10, [0x140000000]
mov r10, qword [r10 + r14*8 + 0x59dfe0]
test r10, r10
je 0x140343b85
movsxd r14, dword [rsp + 0x58]
movsx r10d, byte [r10 + r14]
test r10d, r10d
je 0x140343b85
mov dword [rsp + 0x58], r10d
movsx r11d, byte [rsi + 0xb0]
mov r8b, byte [rsi + 0xb9]
lea r10d, [r11 - 0x13]
mov r14b, byte [rsi + 0xb8]
and r8b, 0xfe
and r14b, 0xef
mov byte [rsi + 0xb9], r8b
mov byte [rsi + 0xb8], r14b
cmp r10d, 0x65
ja 0x14034412b
lea rcx, [0x140000000]
movzx eax, word [rcx + r10*2 + 0x594578]
lea rax, [rcx + rax + 0x343bd1]
jmp rax
mov rbx, qword [rsp + 0x98]
mov ebp, edx
mov rdi, qword [rsp + 0xa8]
xor r13d, r13d
mov r14, qword [rsp + 0xa0]
mov rsi, qword [r12 + 0x30]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
movzx esi, byte [r12 + 0x29e]
mov r10, rsp
and esi, 0x10
mov rcx, r12
movzx r8d, byte [r12 + 0x294]
mov edx, 0xffffffff
shr esi, 1
and r8d, 7
or r8d, esi
mov r9d, ebp
mov dword [r10 + 0x20], ebp
call fcn.1403be580
nop
jmp 0x14034455f
cmp r11d, 0x40
jae 0x140344165
movabs r10, 0x250000000000
bt r10, r11
jae 0x140344165
mov r10d, dword [rsi + 0xa8]
mov r11d, dword [rsi + 0x9c]
cmp r10d, r11d
cmovg r11d, r10d
mov dword [rsi + 0x9c], r11d
test edx, edx
jne 0x14034402f
mov r11d, dword [rsi + 0x9c]
test r14b, 2
je 0x1403442cd
test r11d, r11d
jle 0x1403441ae
movsx r10d, word [rsi + 0xa8]
test r14b, 0x10
je 0x14034419e
lea r13d, [r10 + 6]
cmp r13d, r11d
jle 0x14034419e
mov dword [rsi + 0x9c], r13d
mov r11d, r13d
jmp 0x1403441ae
cmp r10d, r11d
jle 0x1403441ae
lea r11d, [r10 + 1]
mov dword [rsi + 0x9c], r11d
cmp r11d, 0x40
ja 0x1403441c6
xor r13d, r13d
lea rcx, [rsp + 0xd8]
mov qword [rsp + 0x40], rcx
jmp 0x1403441ea
movsxd r11, r11d
xor edx, edx
mov rcx, r11
lea r8, [rsp + 0x40]
call fcn.14035a450
mov edx, eax
test edx, edx
jne 0x140345963
mov r13, qword [rsp + 0x40]
mov rcx, r13
mov edx, 0x20
movsxd r8, dword [rsi + 0x9c]
call fcn.14042ad60
mov rdx, rsi
lea rcx, [rsp + 0x48]
mov r8, qword [rcx - 8]
call fcn.1403cba00
mov edx, eax
test edx, edx
je 0x14034422d
cmp edx, 0x3f
jne 0x140345901
test byte [r12 + 0x297], 8
jne 0x14034422d
mov dword [rsi + 0x30], 0x3f
mov r11d, dword [rsi + 0x9c]
test r11d, r11d
je 0x14034425e
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0x20
jne 0x140344263
inc rax
mov qword [rsp + 0x40], rax
mov r11d, dword [rsi + 0x9c]
dec r11d
mov dword [rsi + 0x9c], r11d
jne 0x140344239
mov rax, qword [rsp + 0x40]
movsx r10d, byte [rax]
xor r14d, r14d
add r10d, 0xffffffd5
test r10d, 0xfffffffd
sete r14b
cmp r11d, 8
jb 0x1403442a5
add rax, r14
lea rcx, str.Infinity
mov edx, 8
call fcn.14042b020
test eax, eax
jne 0x1403442a5
mov r11d, r14d
add r11d, 3
mov dword [rsi + 0x9c], r11d
test r11d, r11d
jne 0x1403442cd
movsx r10d, word [rsi + 0xa8]
test r10d, r10d
jne 0x1403442cd
mov dword [rsi + 0x9c], 1
dec qword [rsp + 0x40]
mov r11d, dword [rsi + 0x9c]
movsxd r10, r11d
mov r8, qword [r12 + 0x80]
add r10, r8
cmp r10, qword [r12 + 0x90]
ja 0x140345ae9
mov r14, qword [r12 + 0xf0]
mov rax, qword [r12 + 0x138]
mov r10b, byte [rsi + 0xb8]
add rax, r14
test r10b, 2
jne 0x14034435e
mov r10, qword [rsp + 0x48]
cmp r14, r10
ja 0x14034431c
cmp rax, r10
ja 0x1403459c5
mov rdx, rsi
lea rcx, [rsp + 0x48]
call fcn.1403cba00
mov edx, eax
test edx, edx
je 0x14034434a
cmp edx, 0x3f
jne 0x140345a7e
test byte [r12 + 0x297], 8
jne 0x14034434a
mov dword [rsi + 0x30], 0x3f
movsxd r10, dword [rsi + 0x9c]
add qword [r12 + 0x80], r10
jmp 0x140344439
test r11d, r11d
je 0x1403443ad
mov r10, qword [rsp + 0x40]
mov r10b, byte [r10]
mov byte [r8], r10b
inc r8
mov qword [r12 + 0x80], r8
inc qword [rsp + 0x40]
mov r10d, dword [rsi + 0x9c]
dec r10d
je 0x1403443a6
mov dword [rsi + 0x9c], r10d
mov r10, qword [rsp + 0x40]
cmp byte [r10], 0x20
je 0x1403443a6
mov r8, qword [r12 + 0x80]
jmp 0x140344368
mov r10b, byte [rsi + 0xb8]
and r10b, 0xfd
mov byte [rsi + 0xb8], r10b
mov dword [rsi + 0x9c], 0
test r13, r13
je 0x140344439
mov rcx, r13
call fcn.14035a530
jmp 0x140344439
mov r10, qword [r12 + 0x80]
movsxd rax, dword [rsi + 0x9c]
mov r14, qword [rsi + 0xa0]
lea r11, [r10 + rax]
cmp r11, qword [r12 + 0x90]
ja 0x1403460bb
xor r11d, r11d
test rax, rax
jle 0x140344422
mov al, byte [r11 + r14]
inc r11
mov byte [r10], al
inc r10
mov qword [r12 + 0x80], r10
movsxd rdx, dword [rsi + 0x9c]
cmp r11, rdx
jl 0x140344401
mov r11, qword [r12 + 0xa0]
cmp r10, r11
cmova r11, r10
mov qword [r12 + 0xa0], r11
cmp qword [r12 + 0x188], 0
jg 0x1403436aa
mov r15, qword [rsp + 0xb0]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
mov r10b, byte [rsi + 0xb7]
test r10b, 2
je 0x1403444df
mov rcx, qword [rsi + 8]
and r10b, 0xfd
mov byte [rsi + 0xb7], r10b
call fcn.14035a530
mov ebp, eax
test ebp, ebp
je 0x1403444d7
mov rsi, qword [r12 + 0x30]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov qword [rsi + 8], 0
mov r9d, dword [rsi + 0x30]
test r9d, r9d
je 0x140346084
mov rax, qword [r12 + 0x30]
test rax, rax
je 0x14034606b
test byte [rax + 0x74], 2
je 0x14034452d
mov dword [rax + 0x68], r9d
mov rbp, qword [r12 + 0x30]
mov eax, dword [rsi + 0x30]
mov dword [rbp + 0x6c], eax
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344528
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
mov ebp, dword [rsi + 0x30]
jmp 0x140344561
mov rbp, rsp
mov rcx, r12
movzx eax, byte [r12 + 0x29e]
mov edx, 0xffffffff
and eax, 0x10
movzx r8d, byte [r12 + 0x294]
shr eax, 1
and r8d, 7
or r8d, eax
mov dword [rbp + 0x20], r9d
call fcn.1403be580
mov ebp, eax
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
mov eax, ebp
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov ecx, 0xfffffffb
lea rdx, [rsp + 0x30]
call fcn.1403c1480
test eax, eax
jne 0x1403429f1
mov r10, qword [rsp + 0x30]
xor ebp, ebp
mov r15b, byte [rsp + 0x848]
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 [rsi]
mov qword [r11 + 0x1c0], r10
mov r10, qword [rsp + 0x30]
mov rsi, qword [rsi + 8]
mov qword [r10 + 0x118], rsi
mov r9, qword [rsp + 0x30]
mov rsi, qword [r9 + 0x30]
test rsi, rsi
je 0x140344726
test byte [rsi + 0x74], 2
je 0x1403446be
mov dword [rsi + 0x68], r12d
mov rsi, qword [rsp + 0x30]
mov r10, qword [rsi + 0x30]
mov dword [r10 + 0x6c], r12d
mov r11, qword [rsp + 0x30]
mov rsi, qword [r11 + 0xd8]
test rsi, rsi
je 0x14034468b
mov qword [rsi + 8], rbp
mov rsi, qword [rsp + 0x30]
mov qword [rsi + 0xd8], rbp
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
mov eax, r12d
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, r12d
mov dword [rsi + 0x20], r12d
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
call fcn.14043dac0
xor ecx, ecx
mov edx, r12d
mov r8d, r12d
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
cmp byte [rbp + 2], 0x53
jne 0x140342dc8
mov rax, rsp
mov r8d, 0x53
mov rcx, qword [rsi + 8]
lea r9, [rsp + 0x38]
mov edx, dword [rsi]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x1403447c5
mov rdx, qword [rsp + 0xd0]
add rbp, 4
mov al, byte [rdx + 0x28b]
mov byte [rdx + 0x28c], al
mov rcx, qword [rsp + 0xd0]
or byte [rcx + 0x29b], 0x20
mov r9, qword [rsp + 0xd0]
mov esi, dword [rsp + 0x38]
mov byte [r9 + 0x28b], sil
jmp 0x140342dc8
mov r9, qword [rsp + 0xd0]
mov rbp, qword [r9 + 0x30]
test rbp, rbp
je 0x1403448b3
test byte [rbp + 0x74], 2
je 0x14034484d
mov dword [rbp + 0x68], eax
mov rcx, qword [rsp + 0xd0]
mov rbp, qword [rcx + 0x30]
mov dword [rbp + 0x6c], eax
mov rsi, qword [rsp + 0xd0]
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x140344819
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, eax
mov dword [rsi + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
cmp byte [rbp + 2], 0x51
jne 0x140342dbe
mov rax, rsp
mov r8d, 0x51
mov rcx, qword [rsi + 8]
lea r9, [rsp + 0x38]
mov edx, dword [rsi]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x14034495d
mov rdx, qword [rsp + 0xd0]
add rbp, 4
add rsi, 0x10
mov al, byte [rdx + 0x287]
mov byte [rdx + 0x288], al
mov rcx, qword [rsp + 0xd0]
or byte [rcx + 0x29b], 0x10
mov r10, qword [rsp + 0xd0]
mov r9d, dword [rsp + 0x38]
mov byte [r10 + 0x287], r9b
jmp 0x140342dbe
mov r9, qword [rsp + 0xd0]
mov rbp, qword [r9 + 0x30]
test rbp, rbp
je 0x140344a4b
test byte [rbp + 0x74], 2
je 0x1403449e5
mov dword [rbp + 0x68], eax
mov rcx, qword [rsp + 0xd0]
mov rbp, qword [rcx + 0x30]
mov dword [rbp + 0x6c], eax
mov rsi, qword [rsp + 0xd0]
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x1403449b1
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, eax
mov dword [rsi + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
cmp byte [rbp + 2], 0x3c
jne 0x140342db4
mov al, byte [rsp + 0x42]
test al, 8
je 0x140344a9b
test al, 2
jne 0x140344aa5
jmp 0x140344ab1
test byte [rsp + 0x84a], 4
jne 0x140344ab1
mov ecx, 0x2fc
xor edx, edx
call fcn.140383960
mov rax, rsp
mov r8d, 0x3c
mov rcx, qword [rsi + 8]
lea r9, [rsp + 0x38]
mov edx, dword [rsi]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x140344b5f
mov rcx, qword [rsp + 0xd0]
mov al, byte [rcx + 0x296]
mov dl, al
shr al, 1
and dl, 0xfb
and al, 1
shl al, 2
or dl, al
mov byte [rcx + 0x296], dl
mov r9, qword [rsp + 0xd0]
or byte [r9 + 0x29b], 8
mov rax, qword [rsp + 0x38]
cmp rax, 2
jne 0x140344b3f
mov al, byte [rsp + 0x84a]
shr al, 2
mov rcx, qword [rsp + 0xd0]
and al, 1
add al, al
mov dl, byte [rcx + 0x296]
and dl, 0xfd
or dl, al
mov byte [rcx + 0x296], dl
jmp 0x140344b52
cmp rax, 1
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x296], 0xfd
add rbp, 4
add rsi, 0x10
jmp 0x140342db4
mov r9, qword [rsp + 0xd0]
mov rbp, qword [r9 + 0x30]
test rbp, rbp
je 0x140344c4d
test byte [rbp + 0x74], 2
je 0x140344be7
mov dword [rbp + 0x68], eax
mov rcx, qword [rsp + 0xd0]
mov rbp, qword [rcx + 0x30]
mov dword [rbp + 0x6c], eax
mov rsi, qword [rsp + 0xd0]
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x140344bb3
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, eax
mov dword [rsi + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
cmp byte [rbp + 2], 0x3b
jne 0x140342daa
mov rax, rsp
mov r8d, 0x3b
mov rcx, qword [rsi + 8]
lea r9, [rsp + 0x38]
mov edx, dword [rsi]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x140344d2b
mov rdx, qword [rsp + 0xd0]
mov al, byte [rdx + 0x281]
mov byte [rdx + 0x282], al
mov rcx, qword [rsp + 0xd0]
or byte [rcx + 0x29b], 4
mov rax, qword [rsp + 0x38]
cmp rax, 2
je 0x140344d0f
cmp rax, 1
jne 0x140344cf8
mov rax, qword [rsp + 0xd0]
mov byte [rax + 0x281], 0x27
jmp 0x140344d1e
cmp rax, 3
jne 0x140344d0f
mov rax, qword [rsp + 0xd0]
mov byte [rax + 0x281], 0x22
jmp 0x140344d1e
mov rax, qword [rsp + 0xd0]
mov byte [rax + 0x281], 0
add rbp, 4
add rsi, 0x10
jmp 0x140342daa
mov r9, qword [rsp + 0xd0]
mov rbp, qword [r9 + 0x30]
test rbp, rbp
je 0x140344e19
test byte [rbp + 0x74], 2
je 0x140344db3
mov dword [rbp + 0x68], eax
mov rcx, qword [rsp + 0xd0]
mov rbp, qword [rcx + 0x30]
mov dword [rbp + 0x6c], eax
mov rsi, qword [rsp + 0xd0]
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x140344d7f
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, eax
mov dword [rsi + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
cmp byte [rbp + 2], 0x52
jne 0x140342da0
mov rax, rsp
mov r8d, 0x52
mov rcx, qword [rsi + 8]
lea r9, [rsp + 0x38]
mov edx, dword [rsi]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x140344ec3
mov rdx, qword [rsp + 0xd0]
add rbp, 4
add rsi, 0x10
mov al, byte [rdx + 0x289]
mov byte [rdx + 0x28a], al
mov rcx, qword [rsp + 0xd0]
or byte [rcx + 0x29b], 2
mov r10, qword [rsp + 0xd0]
mov r9d, dword [rsp + 0x38]
mov byte [r10 + 0x289], r9b
jmp 0x140342da0
mov r9, qword [rsp + 0xd0]
mov rbp, qword [r9 + 0x30]
test rbp, rbp
je 0x140344fb1
test byte [rbp + 0x74], 2
je 0x140344f4b
mov dword [rbp + 0x68], eax
mov rcx, qword [rsp + 0xd0]
mov rbp, qword [rcx + 0x30]
mov dword [rbp + 0x6c], eax
mov rsi, qword [rsp + 0xd0]
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x140344f17
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, eax
mov dword [rsi + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
cmp byte [rbp + 2], 6
jne 0x140342d96
mov rax, rsp
mov r8d, 6
mov rcx, qword [rsi + 8]
lea r9, [rsp + 0x38]
mov edx, dword [rsi]
mov dword [rax + 0x20], 3
call fcn.14036c700
test eax, eax
jne 0x140345088
mov rcx, qword [rsp + 0xd0]
mov al, byte [rcx + 0x293]
mov dl, al
shr al, 5
and dl, 0xbf
and al, 1
shl al, 6
or dl, al
mov byte [rcx + 0x293], dl
mov r9, qword [rsp + 0xd0]
or byte [r9 + 0x29b], 1
mov rax, qword [rsp + 0x38]
cmp rax, 1
je 0x14034506c
cmp rax, 2
jne 0x14034506c
mov rax, qword [rsp + 0xd0]
or byte [rax + 0x293], 0x20
jmp 0x14034507b
mov rax, qword [rsp + 0xd0]
and byte [rax + 0x293], 0xdf
add rbp, 4
add rsi, 0x10
jmp 0x140342d96
mov r9, qword [rsp + 0xd0]
mov rbp, qword [r9 + 0x30]
test rbp, rbp
je 0x140345176
test byte [rbp + 0x74], 2
je 0x140345110
mov dword [rbp + 0x68], eax
mov rcx, qword [rsp + 0xd0]
mov rbp, qword [rcx + 0x30]
mov dword [rbp + 0x6c], eax
mov rsi, qword [rsp + 0xd0]
mov rcx, qword [rsi + 0xd8]
test rcx, rcx
je 0x1403450dc
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx ebp, byte [r9 + 0x29e]
mov rsi, 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, eax
mov dword [rsi + 0x20], eax
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
cmp byte [rbp + 2], 0x4f
jne 0x140342d8c
mov r9, qword [rsp + 0xd0]
test byte [r9 + 0x293], 4
jne 0x1403453df
test byte [r9 + 0x291], 0x20
jne 0x1403452dc
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x140345520
test byte [rax + 0x74], 2
je 0x140345266
mov edx, 0x6d
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbp, qword [rsp + 0xd0]
mov rax, qword [rbp + 0xd8]
test rax, rax
je 0x14034522d
mov qword [rax + 8], r13
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
mov eax, 0x6d
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx eax, byte [r9 + 0x29e]
mov rbp, 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 [rbp + 0x20], 0x6d
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x140345564
test byte [rax + 0x74], 2
je 0x140345369
mov dword [rax + 0x68], 0x6e
mov rax, qword [rsp + 0xd0]
mov rdx, qword [rax + 0x30]
mov dword [rdx + 0x6c], 0x1f
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rcx + 0xd8]
test rax, rax
je 0x140345330
mov qword [rax + 8], r13
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
mov eax, 0x6e
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx eax, byte [r9 + 0x29e]
mov rbp, 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 [rbp + 0x20], 0x1f
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
test r9, r9
je 0x1403453f0
movzx eax, word [r9 + 0x27a]
test eax, eax
jg 0x140345420
mov rax, qword [rsi]
add rsi, 8
dec rax
mov qword [r9 + 0x160], rax
mov r9, qword [rsp + 0xd0]
cmp qword [r9 + 0x160], 0
jl 0x1403455ab
add rbp, 4
jmp 0x140342d8c
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403456ef
test byte [rax + 0x74], 2
je 0x1403454aa
mov edx, 0x10f
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbp, qword [rsp + 0xd0]
mov rax, qword [rbp + 0xd8]
test rax, rax
je 0x140345471
mov qword [rax + 8], r13
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
mov eax, 0x10f
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx eax, byte [r9 + 0x29e]
mov rbp, 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 [rbp + 0x20], 0x10f
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov edx, 0x6d
mov ecx, 1
mov r8d, edx
mov qword [rsp + 0x30], 0
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
mov ecx, 1
mov edx, 0x6e
mov r8d, 0x1f
mov qword [rsp + 0x30], 0
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
mov rax, qword [r9 + 0x30]
test rax, rax
je 0x1403456ab
test byte [rax + 0x74], 2
je 0x140345635
mov edx, 0x6f
mov dword [rax + 0x68], edx
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rax + 0x30]
mov dword [rcx + 0x6c], edx
mov rbp, qword [rsp + 0xd0]
mov rax, qword [rbp + 0xd8]
test rax, rax
je 0x1403455fc
mov qword [rax + 8], r13
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0xd8], r13
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
mov eax, 0x6f
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
movzx eax, byte [r9 + 0x29e]
mov rbp, 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 [rbp + 0x20], 0x6f
call fcn.1403be580
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
add rsp, 0x810
pop rbp
pop r15
pop r13
pop r12
pop rsi
ret
mov edx, 0x6f
mov ecx, 1
mov r8d, edx
mov qword [rsp + 0x30], 0
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
mov edx, 0x10f
mov ecx, 1
mov r8d, edx
mov qword [rsp + 0x30], 0
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
cmp byte [rbp + 2], 0x4e
jne 0x140342d82
mov rdx, qword [rsp + 0xd0]
add rbp, 4
mov rax, qword [rsi]
mov qword [rdx + 0x1c0], rax
mov r9, qword [rsp + 0xd0]
mov rcx, qword [rsi + 8]
add rsi, 0x10
mov qword [r9 + 0x118], rcx
mov r10, qword [rsp + 0xd0]
and byte [r10 + 0x29d], 0xf7
jmp 0x140342d82
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
mov ecx, 1
mov edx, eax
mov r8d, eax
call fcn.140381780
mov rcx, qword [rsp + 0x808]
mov qword [rsp + 0x808], 0
xor rcx, rsp
cmp rcx, qword [0x14194d6d8]
jne 0x140344721
jmp 0x140342a19
inc r11
xor ebp, ebp
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
mov qword [rsi + 0x28], r11
jmp 0x140344561
mov rsi, qword [r12 + 0x30]
mov ebp, edx
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov ecx, 1
mov edx, ebp
mov r8d, ebp
mov r9, r12
call fcn.140381780
nop
jmp 0x14034455f
test ebx, ebx
jne 0x140343753
cmp rbp, 1
jg 0x140343753
or r10b, 0x40
mov byte [rsi + 0xb7], r10b
jmp 0x14034375e
test ebx, ebx
jne 0x140343747
cmp rbp, 1
jg 0x140343747
or r10b, 0x20
jmp 0x14034374b
cmp rbp, 2
jge 0x140344439
mov rbx, qword [rsp + 0x98]
xor ebp, ebp
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
mov qword [rsi + 0x28], 2
jmp 0x140344561
xor r11d, r11d
jmp 0x140343a0d
mov rsi, qword [r12 + 0x30]
mov ebp, edx
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov rsi, qword [r12 + 0x30]
mov ebp, edx
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov rax, qword [r12 + 0x30]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rax, rax
je 0x140345a63
test byte [rax + 0x74], 2
je 0x140345a22
mov ebp, 0x300
mov dword [rax + 0x68], ebp
mov rax, qword [r12 + 0x30]
mov dword [rax + 0x6c], ebp
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344561
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
movzx eax, byte [r12 + 0x29e]
mov rbp, rsp
and eax, 0x10
mov rcx, r12
movzx r8d, byte [r12 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x300
mov dword [rbp + 0x20], 0x300
call fcn.1403be580
nop
jmp 0x14034455f
mov edx, 0x300
mov ecx, 1
mov r8d, edx
mov r9, r12
call fcn.140381780
nop
jmp 0x14034455f
mov rcx, rsi
mov ebp, edx
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
call fcn.1403ca980
nop
mov rsi, qword [r12 + 0x30]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov rax, qword [r12 + 0x30]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rax, rax
je 0x140345b87
test byte [rax + 0x74], 2
je 0x140345b46
mov ebp, 0x42
mov dword [rax + 0x68], ebp
mov rax, qword [r12 + 0x30]
mov dword [rax + 0x6c], ebp
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344561
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
movzx eax, byte [r12 + 0x29e]
mov rbp, rsp
and eax, 0x10
mov rcx, r12
movzx r8d, byte [r12 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x42
mov dword [rbp + 0x20], 0x42
call fcn.1403be580
nop
jmp 0x14034455f
mov edx, 0x42
mov ecx, 1
mov r8d, edx
mov r9, r12
call fcn.140381780
nop
jmp 0x14034455f
mov rax, qword [r12 + 0x30]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rax, rax
je 0x140345c40
test byte [rax + 0x74], 2
je 0x140345bff
mov ebp, 0x3d
mov dword [rax + 0x68], ebp
mov rax, qword [r12 + 0x30]
mov dword [rax + 0x6c], ebp
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344561
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
movzx eax, byte [r12 + 0x29e]
mov rbp, rsp
and eax, 0x10
mov rcx, r12
movzx r8d, byte [r12 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x3d
mov dword [rbp + 0x20], 0x3d
call fcn.1403be580
nop
jmp 0x14034455f
mov edx, 0x3d
mov ecx, 1
mov r8d, edx
mov r9, r12
call fcn.140381780
nop
jmp 0x14034455f
cmp r11d, 0x74
je 0x140343b24
mov rax, qword [r12 + 0x30]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rax, rax
je 0x140345d03
test byte [rax + 0x74], 2
je 0x140345cc2
mov ebp, 0x7d
mov dword [rax + 0x68], ebp
mov rax, qword [r12 + 0x30]
mov dword [rax + 0x6c], ebp
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344561
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
movzx eax, byte [r12 + 0x29e]
mov rbp, rsp
and eax, 0x10
mov rcx, r12
movzx r8d, byte [r12 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x7d
mov dword [rbp + 0x20], 0x7d
call fcn.1403be580
nop
jmp 0x14034455f
mov edx, 0x7d
mov ecx, 1
mov r8d, edx
mov r9, r12
call fcn.140381780
nop
jmp 0x14034455f
cmp r11d, 0x74
je 0x140343b24
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb8]
lea r8, [rsp + 0x48]
lea r9, [rsp + 0x218]
call fcn.1403ca9c0
test eax, eax
jne 0x140345d73
mov r11d, dword [rsp + 0x58]
mov r10d, r11d
and r10d, 0xfffffffd
cmp r10d, 0x40
je 0x140345d28
cmp r11d, 0x41
je 0x140345d28
movsx r11d, byte [rsi + 0xb0]
jmp 0x140343b3b
mov rsi, qword [r12 + 0x30]
mov ebp, eax
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
cmp r11d, 0x74
jne 0x140343b10
mov r8d, 1
mov rcx, r12
mov r9, r8
lea rdx, [rsp + 0x48]
call fcn.1403d0930
mov edx, eax
test edx, edx
jne 0x140345f1c
xor eax, eax
mov r14d, 1
mov qword [rsp + 0x30], rbp
mov ebp, eax
mov r10, qword [rsp + 0xc0]
movsx r10d, byte [r10]
mov r11d, r10d
and r11d, 0xfffffffd
cmp r11d, 0x40
je 0x140345f14
cmp r10d, 0x3f
je 0x140345f14
and r10d, 0xffffffbf
cmp r10d, 1
jne 0x140345e4f
dec r14d
mov r10d, 1
test r14d, r14d
cmovle ebp, r10d
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb8]
lea r8, [rsp + 0x48]
lea r9, [rsp + 0x218]
call fcn.1403ca9c0
test eax, eax
jne 0x140345eb2
cmp dword [rsp + 0x58], 2
je 0x140345e8a
test ebp, ebp
je 0x140345e0e
mov rbp, qword [rsp + 0x30]
jmp 0x140344439
mov rbx, qword [rsp + 0x98]
xor ebp, ebp
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
or byte [r12 + 0x29c], 0x20
jmp 0x140344561
mov rsi, qword [r12 + 0x30]
mov ebp, eax
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
inc r14d
jmp 0x140345e4f
mov rbx, qword [rsp + 0x98]
mov ebp, edx
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
jmp 0x140344561
add qword [rsp + 0xc0], 2
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb8]
lea r8, [rsp + 0x48]
lea r9, [rsp + 0x218]
call fcn.1403ca9c0
mov edx, eax
test edx, edx
je 0x140343955
mov rsi, qword [r12 + 0x30]
mov ebp, edx
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov rax, qword [rsi + 0x28]
mov ebp, 2
test rax, rax
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
lea r8, [rax + 1]
cmove r8, rbp
xor ebp, ebp
mov r14, qword [rsp + 0xa0]
mov qword [rsi + 0x28], r8
jmp 0x140344561
mov rsi, qword [r12 + 0x30]
mov ebp, edx
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov ecx, 1
mov edx, r9d
mov r8d, r9d
mov r9, r12
call fcn.140381780
nop
jmp 0x14034455f
mov ecx, dword [r12 + 0x1e0]
and byte [r12 + 0x294], 0xdc
and byte [r12 + 0x29e], 0xef
and byte [r12 + 0x296], 0xf7
call fcn.1403c0ed0
mov ebp, eax
mov qword [r15 + 8], 0
jmp 0x140344561
mov rax, qword [r12 + 0x30]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rax, rax
je 0x140345b87
test byte [rax + 0x74], 2
je 0x140345b46
mov ebp, 0x42
mov dword [rax + 0x68], ebp
mov rax, qword [r12 + 0x30]
mov dword [rax + 0x6c], ebp
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344561
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov r11, qword [rsp + 0xc0]
mov r11b, byte [r11]
cmp r11b, 1
je 0x14034642a
cmp r11b, 2
je 0x1403463f9
test byte [rsi + 0xb6], 0x20
jne 0x140346238
mov r15, qword [rsp + 0xb0]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test byte [r12 + 0x290], 2
je 0x1403461b1
test r10b, 0x80
je 0x1403461b1
mov r10, rsp
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb8]
lea r8, [rsp + 0x48]
lea r9, [rsp + 0x218]
mov qword [r10 + 0x20], rbp
call fcn.1403cb530
test eax, eax
jne 0x140346311
mov rax, qword [r12 + 0x30]
test rax, rax
je 0x1403462f6
test byte [rax + 0x74], 2
je 0x1403461f7
mov ebp, 0x69
mov dword [rax + 0x68], ebp
mov rax, qword [r12 + 0x30]
mov dword [rax + 0x6c], ebp
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344561
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
movzx eax, byte [r12 + 0x29e]
mov rbp, rsp
and eax, 0x10
mov rcx, r12
movzx r8d, byte [r12 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x69
mov dword [rbp + 0x20], 0x69
call fcn.1403be580
nop
jmp 0x14034455f
mov r11, qword [r12 + 0x188]
dec r11
mov rcx, qword [r12 + 0x90]
mov r10, qword [r12 + 0x1d0]
add r10, rcx
mov qword [r12 + 0x80], rcx
mov qword [r12 + 0x90], r10
mov qword [r12 + 0x98], rcx
mov qword [r12 + 0x188], r11
test r11, r11
jle 0x140346340
mov edx, 0x20
mov r8, qword [r12 + 0x1c8]
call fcn.14042ad60
mov r8, rbp
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb8]
call fcn.1403cb180
cmp eax, 1
jne 0x140344439
and byte [r12 + 0x299], 0x7f
xor r13d, r13d
mov dword [r12 + 0x22c], 1
mov r15, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
mov r10b, byte [rsi + 0xb7]
jmp 0x140344472
mov edx, 0x69
mov ecx, 1
mov r8d, edx
mov r9, r12
call fcn.140381780
nop
jmp 0x14034455f
mov r10, qword [rsp + 0xc0]
cmp byte [r10], 2
je 0x14034632b
mov r10b, byte [rsi + 0xb7]
jmp 0x140344472
cmp rbp, 2
jge 0x14034631f
mov qword [rsi + 0x28], 2
xor ebp, ebp
jmp 0x140344561
mov rax, qword [r12 + 0x30]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rax, rax
je 0x1403463de
test byte [rax + 0x74], 2
je 0x14034639d
mov ebp, 0x1b
mov dword [rax + 0x68], ebp
mov rax, qword [r12 + 0x30]
mov dword [rax + 0x6c], ebp
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344561
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
movzx eax, byte [r12 + 0x29e]
mov rbp, rsp
and eax, 0x10
mov rcx, r12
movzx r8d, byte [r12 + 0x294]
mov edx, 0xffffffff
shr eax, 1
and r8d, 7
or r8d, eax
mov r9d, 0x1b
mov dword [rbp + 0x20], 0x1b
call fcn.1403be580
nop
jmp 0x14034455f
mov edx, 0x1b
mov ecx, 1
mov r8d, edx
mov r9, r12
call fcn.140381780
nop
jmp 0x14034455f
cmp rbp, 2
jge 0x140346238
mov rbx, qword [rsp + 0x98]
xor ebp, ebp
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
mov qword [rsi + 0x28], 2
jmp 0x140344561
cmp rbp, 2
jge 0x140346238
mov r15, qword [rsp + 0xb0]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
jmp 0x140344472
mov r11, qword [r12 + 0x188]
dec r11
mov rcx, qword [r12 + 0x90]
mov r10, qword [r12 + 0x1d0]
add r10, rcx
mov qword [r12 + 0x80], rcx
mov qword [r12 + 0x90], r10
mov qword [r12 + 0x98], rcx
mov qword [r12 + 0x188], r11
test r11, r11
jle 0x1403464b7
mov edx, 0x20
mov r8, qword [r12 + 0x1c8]
call fcn.14042ad60
nop
jmp 0x140344439
mov rax, qword [r12 + 0x30]
xor r13d, r13d
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rax, rax
je 0x1403463de
test byte [rax + 0x74], 2
je 0x14034639d
mov ebp, 0x1b
mov dword [rax + 0x68], ebp
mov rax, qword [r12 + 0x30]
mov dword [rax + 0x6c], ebp
mov rax, qword [r12 + 0xd8]
test rax, rax
je 0x140344561
mov qword [rax + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov rax, qword [rsi + 0x28]
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rax, rax
jbe 0x140346544
inc rax
mov qword [rsi + 0x28], rax
xor ebp, ebp
jmp 0x140344561
mov rsi, qword [r12 + 0x30]
mov ebp, edx
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
test ebx, ebx
jne 0x1403437da
cmp rbp, 1
jg 0x1403437da
or r11b, 0x40
mov byte [rsi + 0xb7], r11b
jmp 0x1403437e5
test ebx, ebx
jne 0x1403437c5
cmp rbp, 1
jg 0x1403437c5
mov r11b, byte [rsi + 0xb7]
or r11b, 0x20
jmp 0x1403437d0
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0xb8]
lea r8, [rsp + 0x48]
lea r9, [rsp + 0x218]
call fcn.1403ca9c0
test eax, eax
jne 0x140346665
cmp dword [rsp + 0x58], 2
je 0x140346646
mov r10, qword [rsp + 0xc0]
cmp byte [r10], 0x41
jne 0x1403465f1
add r10, 2
mov qword [rsp + 0xc0], r10
and byte [r12 + 0x29c], 0xdf
jmp 0x1403436b9
mov rbx, qword [rsp + 0x98]
xor ebp, ebp
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
jmp 0x140344561
mov rsi, qword [r12 + 0x30]
mov ebp, eax
mov rbx, qword [rsp + 0x98]
xor r13d, r13d
mov rdi, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xa0]
test rsi, rsi
je 0x140345873
test byte [rsi + 0x74], 2
je 0x14034408d
mov dword [rsi + 0x68], ebp
mov rsi, qword [r12 + 0x30]
mov dword [rsi + 0x6c], ebp
mov rsi, qword [r12 + 0xd8]
test rsi, rsi
je 0x140344561
mov qword [rsi + 8], r13
mov qword [r12 + 0xd8], r13
jmp 0x140344561
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x1c8], rdx
lea rdx, str.ENCODE
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 0xd0], rdx
jmp 0x1403434b4
mov bpl, byte [rsp + 0x41]
mov dl, byte [rsp + 0x42]
jmp 0x140342e12