Function at 0x14003c390
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rbx, r9
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x50], rcx
mov r15, qword [rsp + 0xd0]
mov rbp, qword [r15]
mov rax, qword [r9]
cmp rax, rbp
cmova rbp, rax
test rbp, rbp
mov eax, 1
cmove rbp, rax
lea rsi, [rbp*8]
mov ecx, 1
mov edx, 0x10
mov r8, rsi
call fcn.140016170
mov r12, rax
mov qword [rax], rbp
lea rcx, [rax + 0x10]
mov qword [rax + 8], rcx
mov rdx, rsi
call fcn.1400349b0
mov ecx, 1
mov edx, 0x10
mov r8, rsi
call fcn.140016170
mov r14, rax
mov qword [rax], rbp
lea rcx, [rax + 0x10]
mov qword [rax + 8], rcx
mov rdx, rsi
call fcn.1400349b0
mov rax, qword [r12]
mov rcx, qword [r12 + 8]
mov rdi, qword [rbx]
mov rdx, qword [rbx + 8]
cmp rax, rdi
cmovb rdi, rax
lea rbx, [rdi*8]
mov r8, rbx
call fcn.14006e1a0
mov rdx, qword [r12]
sub rdx, rdi
shl rdx, 3
add rbx, qword [r12 + 8]
mov rcx, rbx
call fcn.1400349b0
mov rax, qword [r14]
mov rcx, qword [r14 + 8]
mov rdi, qword [r15]
mov rdx, qword [r15 + 8]
cmp rax, rdi
cmovb rdi, rax
lea rbx, [rdi*8]
mov r8, rbx
call fcn.14006e1a0
mov rdx, qword [r14]
sub rdx, rdi
shl rdx, 3
add rbx, qword [r14 + 8]
mov rcx, rbx
call fcn.1400349b0
lea r13, [rbp + 1]
shl r13, 3
mov ecx, 1
mov edx, 0x10
mov r8, r13
call fcn.140016170
mov r15, rax
mov rbx, rbp
inc rbx
jne 0x14003c4e3
lea rcx, [0x1400b6958]
lea rdx, str._home_simon_mem_.build_workdirs_bob_aew3xwii_putty_crypto_mpint.c
mov r8d, 0x48
call fcn.14007b7e4
mov qword [r15], rbx
mov rcx, r15
add rcx, 0x10
mov qword [r15 + 8], rcx
mov rdx, r13
call fcn.1400349b0
mov ecx, 1
mov edx, 0x10
mov r8, r13
call fcn.140016170
test rbx, rbx
mov qword [rsp + 0x20], rax
jne 0x14003c533
lea rcx, [0x1400b6958]
lea rdx, str._home_simon_mem_.build_workdirs_bob_aew3xwii_putty_crypto_mpint.c
mov r8d, 0x48
call fcn.14007b7e4
mov rax, qword [rsp + 0x20]
movabs rdi, 0x3ffffffffffffff
mov qword [rax], rbx
mov rcx, rax
add rcx, 0x10
mov qword [rax + 8], rcx
mov rdx, r13
call fcn.1400349b0
mov ecx, 1
mov edx, 0x10
mov r8, rsi
call fcn.140016170
mov qword [rax], rbp
lea rcx, [rax + 0x10]
mov qword [rsp + 0x38], rax
mov qword [rax + 8], rcx
mov rdx, rsi
call fcn.1400349b0
mov r13, rbp
shl r13, 7
shl rbp, 2
add rdi, 0xfffffffffffffffd
and rdi, rbp
lea rsi, [rdi*8]
mov ecx, 1
mov edx, 0x10
mov r8, rsi
call fcn.140016170
mov rbx, rax
test rdi, rdi
jne 0x14003c5ca
lea rcx, [0x1400b6958]
lea rdx, str._home_simon_mem_.build_workdirs_bob_aew3xwii_putty_crypto_mpint.c
mov r8d, 0x48
call fcn.14007b7e4
mov qword [rbx], rdi
mov rcx, rbx
add rcx, 0x10
mov qword [rbx + 8], rcx
mov rdx, rsi
call fcn.1400349b0
test r13, r13
mov qword [rsp + 0x28], rbx
je 0x14003c902
mov rsi, rbx
xor ebp, ebp
mov qword [rsp + 0x48], r13
jmp 0x14003c639
or r13b, 1
mov rax, 0xfffffffffffffffe
mov ecx, r13d
rol rax, cl
mov rcx, qword [rsi + 8]
and qword [rcx + rbx*8], rax
mov ecx, r13d
shl r9, cl
mov rax, qword [rsi + 8]
or qword [rax + rbx*8], r9
add rbp, 1
mov r13, qword [rsp + 0x48]
cmp rbp, r13
je 0x14003c902
mov rax, qword [r12]
mov r8, qword [r14]
cmp r8, rax
mov rdx, rax
cmova rdx, r8
test rdx, rdx
mov qword [rsp + 0x40], rbp
je 0x14003c6c0
mov esi, 1
xor ebx, ebx
jmp 0x14003c688
mov rcx, qword [r12 + 8]
mov rcx, qword [rcx + rbx*8]
not rcx
xor ebp, ebp
add rdi, rsi
setb bpl
add rdi, rcx
adc rbp, 0
add rbx, 1
mov rsi, rbp
cmp rdx, rbx
je 0x14003c6b0
cmp r8, rbx
jbe 0x14003c6a0
mov rcx, qword [r14 + 8]
mov rdi, qword [rcx + rbx*8]
cmp rax, rbx
ja 0x14003c660
jmp 0x14003c6a7
xor edi, edi
cmp rax, rbx
ja 0x14003c660
xor ecx, ecx
jmp 0x14003c669
mov rsi, qword [rsp + 0x28]
jmp 0x14003c6c5
mov ebp, 1
mov rcx, qword [r12 + 8]
mov ebx, dword [rcx]
mov ecx, ebx
and ecx, 1
mov rdx, qword [r14 + 8]
xor ebp, ebx
and ebx, dword [rdx]
and ebx, 1
and ebp, ebx
xor ebp, ecx
cmp rax, r8
je 0x14003c6fe
lea rcx, str.x0__nw__x1__nw
lea rdx, str._home_simon_mem_.build_workdirs_bob_aew3xwii_putty_crypto_mpint.c
mov r8d, 0x9e
call fcn.14007b7e4
mov r9d, ebp
mov rax, r9
neg rax
mov qword [rsp + 0x30], rax
cmp qword [r12], 0
je 0x14003c754
xor eax, eax
nop word cs:[rax + rax]
nop
mov rcx, qword [r12 + 8]
mov rdx, qword [r14 + 8]
mov rdx, qword [rdx + rax*8]
xor rdx, qword [rcx + rax*8]
mov rcx, qword [rsp + 0x30]
and rcx, rdx
mov rdx, qword [r12 + 8]
xor qword [rdx + rax*8], rcx
mov rdx, qword [r14 + 8]
xor qword [rdx + rax*8], rcx
add rax, 1
cmp rax, qword [r12]
jb 0x14003c720
mov r10d, ebx
mov r8, qword [r12]
test r8, r8
je 0x14003c860
mov rdi, r10
neg rdi
mov rdx, qword [r12 + 8]
mov ebx, edi
and ebx, 1
mov rax, r8
xor ebp, ebp
jmp 0x14003c78d
add rbp, 1
mov rax, qword [r12]
cmp r8, rbp
je 0x14003c7f0
cmp rax, rbp
jbe 0x14003c7b0
mov rax, qword [r12 + 8]
mov rsi, qword [rax + rbp*8]
cmp qword [r14], rbp
ja 0x14003c7b7
xor eax, eax
jmp 0x14003c7bf
xor esi, esi
cmp qword [r14], rbp
jbe 0x14003c7a0
mov rax, qword [r14 + 8]
mov rax, qword [rax + rbp*8]
not rax
and rax, rdi
xor ecx, ecx
add rsi, rbx
setb cl
add rsi, rax
mov rbx, rcx
adc rbx, 0
test rdx, rdx
je 0x14003c780
mov qword [rdx + rbp*8], rsi
jmp 0x14003c780
test rax, rax
mov rsi, qword [rsp + 0x28]
je 0x14003c860
xor ecx, ecx
jmp 0x14003c819
mov rbp, qword [rax + rcx*8 + 8]
shl rbp, 0x3f
or qword [rax + rcx*8], rbp
mov rax, qword [r12]
mov rcx, rdx
cmp rdx, rax
jae 0x14003c860
mov rdx, qword [r12 + 8]
cmp rax, rcx
jbe 0x14003c830
mov rax, qword [rdx + rcx*8]
jmp 0x14003c832
xor eax, eax
mov qword [rdx + rcx*8], rax
mov rax, qword [r12 + 8]
shr qword [rax + rcx*8], 1
lea rdx, [rcx + 1]
mov rax, qword [r12 + 8]
cmp qword [r12], rdx
ja 0x14003c800
xor ebp, ebp
jmp 0x14003c805
mov rbp, qword [rsp + 0x40]
mov r13, rbp
add r13, rbp
mov rbx, rbp
shr rbx, 5
movabs rax, 0x3ffffffffffffff
and rbx, rax
cmp rbx, qword [rsi]
jb 0x14003c8ae
lea rcx, str.word___x__nw
lea rdx, str._home_simon_mem_.build_workdirs_bob_aew3xwii_putty_crypto_mpint.c
mov r8d, 0x138
mov rdi, r9
mov rsi, r10
call fcn.14007b7e4
mov r10, rsi
mov rsi, qword [rsp + 0x28]
mov r9, rdi
and r13d, 0x3e
mov rax, 0xfffffffffffffffe
mov ecx, r13d
rol rax, cl
mov rcx, qword [rsi + 8]
and qword [rcx + rbx*8], rax
mov ecx, r13d
shl r10, cl
mov rax, qword [rsi + 8]
or qword [rax + rbx*8], r10
cmp rbx, qword [rsi]
jb 0x14003c600
lea rcx, str.word___x__nw
lea rdx, str._home_simon_mem_.build_workdirs_bob_aew3xwii_putty_crypto_mpint.c
mov r8d, 0x138
mov rdi, r9
call fcn.14007b7e4
mov r9, rdi
jmp 0x14003c600
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x14003c97d
mov rax, qword [rcx]
test rax, rax
je 0x14003c97d
mov rcx, qword [rcx + 8]
xor esi, esi
xor edx, edx
jmp 0x14003c929
add rdx, 1
cmp rax, rdx
je 0x14003c97d
cmp qword [r12], rdx
jbe 0x14003c950
mov rbx, qword [r12 + 8]
mov rbx, qword [rbx + rdx*8]
cmp qword [r14], rdx
ja 0x14003c957
xor edi, edi
jmp 0x14003c95f
xor ebx, ebx
cmp qword [r14], rdx
jbe 0x14003c93d
mov rdi, qword [r14 + 8]
mov rdi, qword [rdi + rdx*8]
xor ebp, ebp
add rbx, rsi
setb bpl
add rbx, rdi
mov rsi, rbp
adc rsi, 0
test rcx, rcx
je 0x14003c920
mov qword [rcx + rdx*8], rbx
jmp 0x14003c920
mov rax, qword [rsp + 0x50]
or rax, qword [rsp + 0x58]
je 0x14003d0f0
cmp qword [r12], 0
je 0x14003c9a1
mov rax, qword [r12 + 8]
mov rax, qword [rax]
and eax, 1
jmp 0x14003c9a3
xor eax, eax
mov rbp, qword [rsp + 0x20]
mov rcx, qword [r15 + 8]
mov qword [rcx], rax
cmp qword [r14], 0
je 0x14003c9c1
mov rax, qword [r14 + 8]
mov rax, qword [rax]
and eax, 1
jmp 0x14003c9c3
xor eax, eax
mov rcx, qword [rbp + 8]
mov qword [rcx], rax
mov rax, qword [r12]
mov rcx, qword [r12 + 8]
mov rdi, qword [r15]
mov rdx, qword [r15 + 8]
cmp rax, rdi
cmovb rdi, rax
lea rsi, [rdi*8]
mov r8, rsi
call fcn.14006e1a0
mov rdx, qword [r12]
sub rdx, rdi
shl rdx, 3
add rsi, qword [r12 + 8]
mov rcx, rsi
call fcn.1400349b0
mov rax, qword [r14]
mov rcx, qword [r14 + 8]
mov rdi, qword [rbp]
mov rdx, qword [rbp + 8]
cmp rax, rdi
cmovb rdi, rax
lea rsi, [rdi*8]
mov r8, rsi
call fcn.14006e1a0
mov rdx, qword [r14]
sub rdx, rdi
shl rdx, 3
add rsi, qword [r14 + 8]
mov rcx, rsi
call fcn.1400349b0
mov rax, qword [r14 + 8]
mov r9d, dword [rax]
test r13, r13
je 0x14003cea6
mov r10, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
jmp 0x14003ca81
xor r9d, r13d
mov r13, qword [rsp + 0x48]
test r13, r13
je 0x14003ceb0
mov rax, r13
lea rcx, [r13 - 2]
add rcx, r13
lea rax, [r13 - 1]
mov qword [rsp + 0x48], rax
shr rax, 5
movabs rdx, 0x3ffffffffffffff
and rax, rdx
cmp qword [rsi], rax
mov qword [rsp + 0x40], r9
jbe 0x14003cad0
mov rdx, qword [rsi + 8]
mov r13, qword [rdx + rax*8]
and ecx, 0x3e
mov r8, r13
shr r8, cl
and r8d, 1
jmp 0x14003cad9
and ecx, 0x3e
xor r8d, r8d
xor r13d, r13d
or cl, 1
shr r13, cl
mov rdi, qword [r15]
mov r9, qword [r15 + 8]
mov rcx, qword [r9]
and ecx, 1
neg rcx
test rdi, rdi
je 0x14003cb5a
lea rbp, [rdi - 1]
xor esi, esi
xor eax, eax
cmp rdi, rax
jbe 0x14003cb1f
jmp 0x14003cb30
mov rdi, qword [r15]
add rax, 1
mov rsi, rbx
cmp rdi, rax
ja 0x14003cb30
xor edi, edi
cmp qword [r14], rax
jbe 0x14003cb3d
mov rdx, qword [r14 + 8]
mov rdx, qword [rdx + rax*8]
jmp 0x14003cb3f
mov rdx, qword [r15 + 8]
mov rdi, qword [rdx + rax*8]
cmp qword [r14], rax
ja 0x14003cb26
xor edx, edx
and rdx, rcx
xor ebx, ebx
add rdi, rsi
setb bl
add rdi, rdx
adc rbx, 0
mov qword [r9 + rax*8], rdi
cmp rbp, rax
jne 0x14003cb10
mov rdi, qword [r10]
test rdi, rdi
je 0x14003cbd3
mov rdx, qword [r10 + 8]
lea r9, [rdi - 1]
xor ebp, ebp
xor eax, eax
cmp rdi, rax
jbe 0x14003cb8c
jmp 0x14003cba0
mov rdi, qword [r10]
add rax, 1
cmp rdi, rax
ja 0x14003cba0
xor esi, esi
cmp qword [r12], rax
jbe 0x14003cbae
mov rdi, qword [r12 + 8]
mov rdi, qword [rdi + rax*8]
jmp 0x14003cbb0
mov rdi, qword [r10 + 8]
mov rsi, qword [rdi + rax*8]
cmp qword [r12], rax
ja 0x14003cb94
xor edi, edi
and rdi, rcx
xor ebx, ebx
add rsi, rbp
setb bl
add rsi, rdi
mov rbp, rbx
adc rbp, 0
test rdx, rdx
je 0x14003cbce
mov qword [rdx + rax*8], rsi
cmp r9, rax
jne 0x14003cb80
mov rdx, qword [r15]
test rdx, rdx
je 0x14003cc30
xor eax, eax
jmp 0x14003cbf8
mov rbp, qword [rdx + rax*8 + 8]
shl rbp, 0x3f
or qword [rdx + rax*8], rbp
mov rdx, qword [r15]
mov rax, rcx
cmp rcx, rdx
jae 0x14003cc30
mov rcx, qword [r15 + 8]
cmp rdx, rax
jbe 0x14003cc10
mov rdx, qword [rcx + rax*8]
jmp 0x14003cc12
xor edx, edx
mov qword [rcx + rax*8], rdx
mov rcx, qword [r15 + 8]
shr qword [rcx + rax*8], 1
lea rcx, [rax + 1]
mov rdx, qword [r15 + 8]
cmp qword [r15], rcx
ja 0x14003cbe0
xor ebp, ebp
jmp 0x14003cbe5
neg r8
mov rbx, qword [r10]
test rbx, rbx
je 0x14003cca3
mov rcx, qword [r10 + 8]
lea rdx, [rbx - 1]
xor esi, esi
xor eax, eax
cmp rbx, rax
jbe 0x14003cc5c
jmp 0x14003cc70
mov rbx, qword [r10]
add rax, 1
cmp rbx, rax
ja 0x14003cc70
xor ebx, ebx
cmp qword [r15], rax
jbe 0x14003cc7d
mov rdi, qword [r15 + 8]
mov rdi, qword [rdi + rax*8]
jmp 0x14003cc7f
mov rbx, qword [r10 + 8]
mov rbx, qword [rbx + rax*8]
cmp qword [r15], rax
ja 0x14003cc63
xor edi, edi
and rdi, r8
xor ebp, ebp
add rbx, rsi
setb bpl
add rbx, rdi
mov rsi, rbp
adc rsi, 0
test rcx, rcx
je 0x14003cc9e
mov qword [rcx + rax*8], rbx
cmp rdx, rax
jne 0x14003cc50
mov rcx, qword [r12]
test rcx, rcx
je 0x14003cda0
lea rax, [rcx - 2]
jmp 0x14003ccd5
mov rdx, qword [rcx + rax*8]
shr rdx, 0x3f
or qword [rcx + rax*8 + 8], rdx
mov rcx, qword [r12]
add rax, 0xffffffffffffffff
lea rbp, [rax + 1]
mov rdx, qword [r12 + 8]
cmp rcx, rbp
jbe 0x14003ccf0
mov rcx, qword [rdx + rax*8 + 8]
jmp 0x14003ccf2
xor ecx, ecx
mov qword [rdx + rax*8 + 8], rcx
mov rcx, qword [r12 + 8]
shl qword [rcx + rax*8 + 8], 1
cmp rax, 0xffffffffffffffff
je 0x14003cd20
mov rcx, qword [r12 + 8]
cmp qword [r12], rax
ja 0x14003ccc0
xor edx, edx
jmp 0x14003ccc4
mov rdi, qword [r12]
test rdi, rdi
je 0x14003cda0
mov rdx, qword [r12 + 8]
mov rcx, rdi
xor esi, esi
xor eax, eax
jmp 0x14003cd4d
add rax, 1
mov rcx, qword [r12]
cmp rdi, rax
je 0x14003cda2
cmp rcx, rax
jbe 0x14003cd70
mov rcx, qword [r12 + 8]
mov rbx, qword [rcx + rax*8]
cmp qword [r14], rax
ja 0x14003cd77
xor ecx, ecx
jmp 0x14003cd7f
xor ebx, ebx
cmp qword [r14], rax
jbe 0x14003cd60
mov rcx, qword [r14 + 8]
mov rcx, qword [rcx + rax*8]
and rcx, r8
xor ebp, ebp
add rbx, rsi
setb bpl
add rbx, rcx
mov rsi, rbp
adc rsi, 0
test rdx, rdx
je 0x14003cd40
mov qword [rdx + rax*8], rbx
jmp 0x14003cd40
xor ecx, ecx
and r13d, 1
cmp rcx, qword [r14]
je 0x14003cdc9
lea rcx, str.x0__nw__x1__nw
lea rdx, str._home_simon_mem_.build_workdirs_bob_aew3xwii_putty_crypto_mpint.c
mov r8d, 0x9e
call fcn.14007b7e4
mov r10, qword [rsp + 0x20]
mov ebx, r13d
neg rbx
mov qword [rsp + 0x30], rbx
cmp qword [r12], 0
mov rsi, qword [rsp + 0x28]
je 0x14003ce24
xor eax, eax
nop word cs:[rax + rax]
nop dword [rax]
mov rcx, qword [r12 + 8]
mov rdx, qword [r14 + 8]
mov rdx, qword [rdx + rax*8]
xor rdx, qword [rcx + rax*8]
mov rcx, qword [rsp + 0x30]
and rcx, rdx
mov rdx, qword [r12 + 8]
xor qword [rdx + rax*8], rcx
mov rdx, qword [r14 + 8]
xor qword [rdx + rax*8], rcx
add rax, 1
cmp rax, qword [r12]
jb 0x14003cdf0
mov rax, qword [r15]
cmp rax, qword [r10]
je 0x14003ce4a
lea rcx, str.x0__nw__x1__nw
lea rdx, str._home_simon_mem_.build_workdirs_bob_aew3xwii_putty_crypto_mpint.c
mov r8d, 0x9e
call fcn.14007b7e4
mov r10, qword [rsp + 0x20]
mov qword [rsp + 0x30], rbx
cmp qword [r15], 0
mov r8, qword [rsp + 0x38]
mov r9, qword [rsp + 0x40]
je 0x14003ca70
xor eax, eax
nop word cs:[rax + rax]
nop
mov rcx, qword [r15 + 8]
mov rdx, qword [r10 + 8]
mov rdx, qword [rdx + rax*8]
xor rdx, qword [rcx + rax*8]
mov rcx, qword [rsp + 0x30]
and rcx, rdx
mov rdx, qword [r15 + 8]
xor qword [rdx + rax*8], rcx
mov rdx, qword [r10 + 8]
xor qword [rdx + rax*8], rcx
add rax, 1
cmp rax, qword [r15]
jb 0x14003ce70
jmp 0x14003ca70
mov r10, qword [rsp + 0x20]
mov r8, qword [rsp + 0x38]
mov rax, qword [r8]
test rax, rax
je 0x14003cf20
mov rcx, qword [r8 + 8]
mov esi, 1
xor edx, edx
jmp 0x14003ced9
add rdx, 1
cmp rax, rdx
je 0x14003cf20
cmp qword [r14], rdx
jbe 0x14003cef0
mov rbx, qword [r14 + 8]
mov rbx, qword [rbx + rdx*8]
cmp qword [r15], rdx
ja 0x14003cef7
xor edi, edi
jmp 0x14003ceff
xor ebx, ebx
cmp qword [r15], rdx
jbe 0x14003ceeb
mov rdi, qword [r15 + 8]
mov rdi, qword [rdi + rdx*8]
not rdi
xor ebp, ebp
add rbx, rsi
setb bpl
add rbx, rdi
mov rsi, rbp
adc rsi, 0
test rcx, rcx
je 0x14003ced0
mov qword [rcx + rdx*8], rbx
jmp 0x14003ced0
and r9d, 1
neg r9
mov rcx, qword [r15]
test rcx, rcx
je 0x14003cf8b
xor eax, eax
jmp 0x14003cf65
mov rdx, qword [r8 + 8]
mov rdx, qword [rdx + rax*8]
xor rdx, rcx
and rdx, r9
xor rdx, rcx
mov rcx, qword [r15 + 8]
mov qword [rcx + rax*8], rdx
add rax, 1
mov rcx, qword [r15]
cmp rax, rcx
jae 0x14003cf8b
cmp rcx, rax
jbe 0x14003cf80
mov rcx, qword [r15 + 8]
mov rcx, qword [rcx + rax*8]
cmp qword [r8], rax
ja 0x14003cf40
jmp 0x14003cf87
xor ecx, ecx
cmp qword [r8], rax
ja 0x14003cf40
xor edx, edx
jmp 0x14003cf48
mov rax, qword [r8]
test rax, rax
je 0x14003d000
mov rcx, qword [r8 + 8]
mov esi, 1
xor edx, edx
jmp 0x14003cfa9
add rdx, 1
cmp rax, rdx
je 0x14003d000
cmp qword [r12], rdx
jbe 0x14003cfd0
mov rbx, qword [r12 + 8]
mov rbx, qword [rbx + rdx*8]
cmp qword [r10], rdx
ja 0x14003cfd7
xor edi, edi
jmp 0x14003cfdf
xor ebx, ebx
cmp qword [r10], rdx
jbe 0x14003cfbd
mov rdi, qword [r10 + 8]
mov rdi, qword [rdi + rdx*8]
not rdi
xor ebp, ebp
add rbx, rsi
setb bpl
add rbx, rdi
mov rsi, rbp
adc rsi, 0
test rcx, rcx
je 0x14003cfa0
mov qword [rcx + rdx*8], rbx
jmp 0x14003cfa0
mov rcx, qword [r10]
test rcx, rcx
je 0x14003d05b
xor eax, eax
jmp 0x14003d035
mov rdx, qword [r8 + 8]
mov rdx, qword [rdx + rax*8]
xor rdx, rcx
and rdx, r9
xor rdx, rcx
mov rcx, qword [r10 + 8]
mov qword [rcx + rax*8], rdx
add rax, 1
mov rcx, qword [r10]
cmp rax, rcx
jae 0x14003d05b
cmp rcx, rax
jbe 0x14003d050
mov rcx, qword [r10 + 8]
mov rcx, qword [rcx + rax*8]
cmp qword [r8], rax
ja 0x14003d010
jmp 0x14003d057
xor ecx, ecx
cmp qword [r8], rax
ja 0x14003d010
xor edx, edx
jmp 0x14003d018
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14003d0a3
mov rax, qword [rcx]
mov rbx, rcx
mov rcx, qword [rcx + 8]
mov rdi, qword [r15]
mov rdx, qword [r15 + 8]
cmp rax, rdi
cmovb rdi, rax
lea rsi, [rdi*8]
mov r8, rsi
call fcn.14006e1a0
mov rdx, qword [rbx]
sub rdx, rdi
shl rdx, 3
add rsi, qword [rbx + 8]
mov rcx, rsi
call fcn.1400349b0
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14003d0f0
mov rax, qword [rcx]
mov rbx, rcx
mov rcx, qword [rcx + 8]
mov rdx, qword [rsp + 0x20]
mov rdi, qword [rdx]
mov rdx, qword [rdx + 8]
cmp rax, rdi
cmovb rdi, rax
lea rsi, [rdi*8]
mov r8, rsi
call fcn.14006e1a0
mov rdx, qword [rbx]
sub rdx, rdi
shl rdx, 3
add rsi, qword [rbx + 8]
mov rcx, rsi
call fcn.1400349b0
mov rdx, qword [r12]
mov rcx, qword [r12 + 8]
shl rdx, 3
call fcn.1400349b0
mov edx, 0x10
mov rcx, r12
call fcn.1400349b0
mov rcx, r12
call fcn.140016210
mov rdx, qword [r14]
mov rcx, qword [r14 + 8]
shl rdx, 3
call fcn.1400349b0
mov edx, 0x10
mov rcx, r14
call fcn.1400349b0
mov rcx, r14
call fcn.140016210
mov rdx, qword [r15]
mov rcx, qword [r15 + 8]
shl rdx, 3
call fcn.1400349b0
mov edx, 0x10
mov rcx, r15
call fcn.1400349b0
mov rcx, r15
call fcn.140016210
mov rsi, qword [rsp + 0x20]
mov rdx, qword [rsi]
mov rcx, qword [rsi + 8]
shl rdx, 3
call fcn.1400349b0
mov edx, 0x10
mov rcx, rsi
call fcn.1400349b0
mov rcx, rsi
call fcn.140016210
mov rsi, qword [rsp + 0x38]
mov rdx, qword [rsi]
mov rcx, qword [rsi + 8]
shl rdx, 3
call fcn.1400349b0
mov edx, 0x10
mov rcx, rsi
call fcn.1400349b0
mov rcx, rsi
call fcn.140016210
mov rsi, qword [rsp + 0x28]
mov rdx, qword [rsi]
mov rcx, qword [rsi + 8]
shl rdx, 3
call fcn.1400349b0
mov edx, 0x10
mov rcx, rsi
call fcn.1400349b0
mov rcx, rsi
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.140016210