Function at 0x699e1e80
Capabilities:
Compress data via zlib inflate or deflate
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rax, qword [rcx + 0x28]
cmp qword [rcx + 0x10], 0
mov qword [rsp + 0x20], rax
mov rsi, rcx
mov edi, edx
je 0x699e20aa
mov edx, dword [rcx + 8]
test edx, edx
jne 0x699e20a0
mov rcx, qword [rsp + 0x20]
cmp edi, 4
setne bpl
mov ecx, dword [rcx + 8]
cmp ecx, 0x29a
jne 0x699e1ed4
test bpl, bpl
jne 0x699e20aa
mov r15d, dword [rsi + 0x18]
test r15d, r15d
je 0x699e30fd
mov rbx, qword [rsp + 0x20]
mov r14d, dword [rbx + 0x28]
mov r8d, dword [rbx + 0x40]
mov dword [rbx + 0x40], edi
test r14d, r14d
jne 0x699e2380
test edx, edx
je 0x699e20c8
cmp ecx, 0x29a
je 0x699e30fd
cmp ecx, 0x2a
jne 0x699e2060
mov rcx, qword [rsp + 0x20]
mov r8d, dword [rcx + 0x48]
shl r8d, 0xc
sub r8d, 0x7800
cmp dword [rcx + 0xb0], 1
jle 0x699e2700
mov r10, qword [rsp + 0x20]
mov r11d, dword [r10 + 0x94]
test r11d, r11d
je 0x699e1f4d
or r8d, 0x20
mov r12d, r8d
mov r15, qword [rsp + 0x20]
imul r13, r12, 0x8421085
mov ebx, dword [r15 + 0x28]
mov rbp, qword [r15 + 0x10]
shr r13, 0x20
lea edx, [rbx + 1]
sub r8d, r13d
mov dword [r15 + 0x28], edx
shr r8d, 1
add r8d, r13d
shr r8d, 4
mov eax, r8d
shl eax, 5
sub eax, r8d
add eax, 0x1f
mov byte [rbp + rbx], ah
mov r9d, dword [r15 + 0x28]
mov rcx, qword [r15 + 0x10]
lea r8d, [r9 + 1]
mov dword [r15 + 0x28], r8d
mov byte [rcx + r9], al
mov r10d, dword [r15 + 0x94]
test r10d, r10d
je 0x699e200f
mov r11d, dword [rsi + 0x4c]
mov r13d, dword [r15 + 0x28]
mov r12, qword [r15 + 0x10]
mov ebp, r11d
lea eax, [r13 + 1]
shr r11d, 0x10
shr ebp, 0x18
mov dword [r15 + 0x28], eax
mov byte [r12 + r13], bpl
mov edx, dword [r15 + 0x28]
mov rbx, qword [r15 + 0x10]
lea ecx, [rdx + 1]
mov dword [r15 + 0x28], ecx
mov byte [rbx + rdx], r11b
mov eax, dword [r15 + 0x28]
mov r11, r15
movzx edx, word [rsi + 0x4c]
mov rcx, qword [r15 + 0x10]
lea r14d, [rax + 1]
mov dword [r15 + 0x28], r14d
mov byte [rcx + rax], dh
mov r9d, dword [r11 + 0x28]
mov r15, qword [r15 + 0x10]
lea r8d, [r9 + 1]
mov dword [r11 + 0x28], r8d
mov byte [r15 + r9], dl
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.699e1540
mov r10, qword [rsp + 0x20]
mov r12, qword [rsi + 0x28]
mov dword [rsi + 0x4c], eax
mov dword [r10 + 8], 0x71
mov rcx, r12
call fcn.699e05b0
mov ebp, dword [r12 + 0x28]
cmp dword [rsi + 0x18], ebp
cmovbe ebp, dword [rsi + 0x18]
test ebp, ebp
jne 0x699e23e8
mov r10, qword [rsp + 0x20]
mov edx, dword [r10 + 0x28]
test edx, edx
jne 0x699e235e
mov ecx, dword [r10 + 8]
cmp ecx, 0x39
je 0x699e2948
cmp ecx, 0x45
je 0x699e2cd0
cmp ecx, 0x49
je 0x699e2728
cmp ecx, 0x5b
je 0x699e3790
cmp ecx, 0x67
jne 0x699e2110
mov r11, qword [rsp + 0x20]
mov r9, qword [r11 + 0x30]
mov eax, dword [r9 + 0x3c]
jmp 0x699e2d63
cmp qword [rcx], 0
jne 0x699e1eb4
mov rbx, qword [0x69a01f10]
mov eax, 0xfffffffe
mov rdi, qword [rbx + 0x20]
mov qword [rsi + 0x20], rdi
jmp 0x699e2368
cmp edi, 5
lea r11d, [r8 + r8]
lea r9d, [rdi + rdi]
mov r10d, 1
cmove r9d, r10d
lea r12d, [r11 - 9]
cmp r8d, 4
cmovle r12d, r11d
cmp r9d, r12d
jg 0x699e20f7
test bpl, bpl
jne 0x699e30fd
cmp ecx, 0x29a
jne 0x699e1f0e
mov r11d, dword [rsi + 8]
test r11d, r11d
jne 0x699e30fd
mov r8d, dword [rsi + 8]
test r8d, r8d
jne 0x699e212c
mov rcx, qword [rsp + 0x20]
mov edx, dword [rcx + 0x9c]
test edx, edx
je 0x699e26e0
mov rax, qword [rsp + 0x20]
movsxd r15, dword [rax + 0xac]
test r15d, r15d
je 0x699e2ce0
mov r9, qword [rsp + 0x20]
mov r13d, dword [r9 + 0xb0]
cmp r13d, 2
je 0x699e24c5
cmp r13d, 3
je 0x699e2ed0
shl r15, 4
lea r10, [0x69a14c00]
mov rcx, qword [rsp + 0x20]
mov edx, edi
call qword [r10 + r15 + 8]
mov r9d, eax
lea ecx, [rax - 2]
and r9d, 0xfffffffd
cmp ecx, 1
ja 0x699e2680
mov rax, qword [rsp + 0x20]
mov dword [rax + 8], 0x29a
test r9d, r9d
je 0x699e2350
cmp edi, 4
jne 0x699e2366
mov r11, qword [rsp + 0x20]
mov eax, 1
mov edi, dword [r11 + 0x2c]
test edi, edi
jle 0x699e2368
mov r13d, dword [r11 + 0x28]
mov r9d, dword [rsi + 0x4c]
lea ecx, [r13 + 1]
add r13, qword [r11 + 0x10]
mov dword [r11 + 0x28], ecx
cmp edi, 2
je 0x699e3678
mov ebp, r9d
shr r9d, 0x10
shr ebp, 0x18
mov byte [r13], bpl
mov r15d, dword [r11 + 0x28]
mov rdx, qword [r11 + 0x10]
lea ebx, [r15 + 1]
mov dword [r11 + 0x28], ebx
mov byte [rdx + r15], r9b
mov eax, dword [r11 + 0x28]
movzx edx, word [rsi + 0x4c]
mov rcx, qword [r11 + 0x10]
lea r12d, [rax + 1]
mov dword [r11 + 0x28], r12d
mov byte [rcx + rax], dh
mov r10d, dword [r11 + 0x28]
mov r14, qword [r11 + 0x10]
lea r8d, [r10 + 1]
mov dword [r11 + 0x28], r8d
mov byte [r14 + r10], dl
mov r13, qword [rsi + 0x28]
mov rcx, r13
call fcn.699e05b0
mov ebp, dword [r13 + 0x28]
cmp dword [rsi + 0x18], ebp
cmovbe ebp, dword [rsi + 0x18]
test ebp, ebp
je 0x699e226f
mov r15d, ebp
mov rcx, qword [rsi + 0x10]
mov rdx, qword [r13 + 0x20]
mov r8, r15
call sub.msvcrt.dll_memcpy
add qword [rsi + 0x10], r15
add qword [r13 + 0x20], r15
add dword [rsi + 0x1c], ebp
sub dword [rsi + 0x18], ebp
sub dword [r13 + 0x28], ebp
je 0x699e30f0
mov r11, qword [rsp + 0x20]
mov r8d, dword [r11 + 0x2c]
test r8d, r8d
jle 0x699e2284
neg r8d
mov dword [r11 + 0x2c], r8d
mov rcx, qword [rsp + 0x20]
mov edx, dword [rcx + 0x28]
test edx, edx
sete al
movzx eax, al
jmp 0x699e2368
movsxd r13, dword [rbp + 0x84]
mov r8d, dword [rbp + 0x94]
xor edx, edx
sub r8d, r13d
test r13d, r13d
js 0x699e22b8
add r13, qword [rbp + 0x50]
mov rdx, r13
mov rbp, qword [rsp + 0x20]
mov r9d, 1
mov rcx, rbp
call fcn.699e0640
mov r15, qword [rbp]
mov edx, dword [rbp + 0x94]
mov rbx, qword [r15 + 0x28]
mov dword [rbp + 0x84], edx
mov rcx, rbx
call fcn.699e05b0
mov r12d, dword [rbx + 0x28]
cmp dword [r15 + 0x18], r12d
cmovbe r12d, dword [r15 + 0x18]
test r12d, r12d
je 0x699e232a
mov r14d, r12d
mov rcx, qword [r15 + 0x10]
mov rdx, qword [rbx + 0x20]
mov r8, r14
call sub.msvcrt.dll_memcpy
add qword [r15 + 0x10], r14
add qword [rbx + 0x20], r14
add dword [r15 + 0x1c], r12d
sub dword [r15 + 0x18], r12d
sub dword [rbx + 0x28], r12d
jne 0x699e232a
mov r8, qword [rbx + 0x10]
mov qword [rbx + 0x20], r8
mov r10, qword [rsp + 0x20]
mov rax, qword [r10]
mov r11d, dword [rax + 0x18]
test r11d, r11d
jne 0x699e37ad
mov dword [r10 + 8], 0x29a
nop word [rax + rax]
mov r9d, dword [rsi + 0x18]
test r9d, r9d
jne 0x699e2366
mov r10, qword [rsp + 0x20]
mov dword [r10 + 0x40], 0xffffffff
xor eax, eax
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rbx
call fcn.699e05b0
mov ebp, dword [rbx + 0x28]
mov eax, dword [rsi + 0x18]
cmp ebp, eax
cmova ebp, eax
test ebp, ebp
jne 0x699e23b0
test eax, eax
mov r10, qword [rsp + 0x20]
je 0x699e235e
mov ecx, dword [r10 + 8]
jmp 0x699e20f7
mov r15d, ebp
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rbx + 0x20]
mov r8, r15
call sub.msvcrt.dll_memcpy
mov eax, dword [rsi + 0x18]
add qword [rsi + 0x10], r15
add qword [rbx + 0x20], r15
sub eax, ebp
add dword [rsi + 0x1c], ebp
mov dword [rsi + 0x18], eax
sub dword [rbx + 0x28], ebp
jne 0x699e2397
mov rdx, qword [rbx + 0x10]
mov qword [rbx + 0x20], rdx
jmp 0x699e2397
mov r13d, ebp
mov rcx, qword [rsi + 0x10]
mov rdx, qword [r12 + 0x20]
mov r8, r13
call sub.msvcrt.dll_memcpy
add qword [rsi + 0x10], r13
add qword [r12 + 0x20], r13
add dword [rsi + 0x1c], ebp
sub dword [rsi + 0x18], ebp
sub dword [r12 + 0x28], ebp
jne 0x699e204b
mov rbx, qword [r12 + 0x10]
mov qword [r12 + 0x20], rbx
jmp 0x699e204b
movsxd r13, dword [r14 + 0x84]
xor edx, edx
sub r8d, r13d
test r13d, r13d
js 0x699e2440
add r13, qword [r14 + 0x50]
mov rdx, r13
mov rbp, qword [rsp + 0x20]
xor r9d, r9d
mov rcx, rbp
call fcn.699e0640
mov r15, qword [rbp]
mov r10d, dword [rbp + 0x94]
mov rbx, qword [r15 + 0x28]
mov dword [rbp + 0x84], r10d
mov rcx, rbx
call fcn.699e05b0
mov r12d, dword [rbx + 0x28]
cmp dword [r15 + 0x18], r12d
cmovbe r12d, dword [r15 + 0x18]
test r12d, r12d
je 0x699e24b1
mov r14d, r12d
mov rcx, qword [r15 + 0x10]
mov rdx, qword [rbx + 0x20]
mov r8, r14
call sub.msvcrt.dll_memcpy
add qword [r15 + 0x10], r14
add qword [rbx + 0x20], r14
add dword [r15 + 0x1c], r12d
sub dword [r15 + 0x18], r12d
sub dword [rbx + 0x28], r12d
jne 0x699e24b1
mov rax, qword [rbx + 0x10]
mov qword [rbx + 0x20], rax
mov r11, qword [rsp + 0x20]
mov r9, qword [r11]
mov ecx, dword [r9 + 0x18]
test ecx, ecx
je 0x699e2350
mov rcx, qword [rsp + 0x20]
mov r15d, dword [rcx + 0x9c]
jmp 0x699e2578
mov r15, qword [rsp + 0x20]
xor r9d, r9d
mov r8, qword [r15 + 0x50]
mov r14, r15
mov eax, dword [r15 + 0x16f4]
mov dword [r15 + 0x88], 0
mov r13d, dword [r15 + 0x94]
mov rbp, qword [r15 + 0x16f8]
mov r12, qword [r15 + 0x16e8]
mov r11, rax
movzx r10d, byte [r8 + r13]
add r11d, 1
mov word [rbp + rax*2], r9w
mov dword [r15 + 0x16f4], r11d
mov byte [r12 + rax], r10b
add word [r15 + r10*4 + 0xbc], 1
mov ecx, dword [r15 + 0x16f0]
mov ebx, dword [r14 + 0x94]
mov r15d, dword [r15 + 0x9c]
lea edx, [rcx - 1]
sub r15d, 1
lea r8d, [rbx + 1]
mov dword [r14 + 0x9c], r15d
mov dword [r14 + 0x94], r8d
cmp dword [r14 + 0x16f4], edx
je 0x699e2428
test r15d, r15d
jne 0x699e24e0
mov rbx, qword [rsp + 0x20]
mov rcx, rbx
call fcn.698d6db0
mov edx, dword [rbx + 0x9c]
test edx, edx
jne 0x699e24e0
test edi, edi
je 0x699e2350
mov rbp, qword [rsp + 0x20]
mov dword [rbp + 0x170c], 0
cmp edi, 4
je 0x699e2299
mov edx, dword [rbp + 0x16f4]
test edx, edx
je 0x699e2692
mov r12, rbp
movsxd r13, dword [r12 + 0x84]
mov r8d, dword [r12 + 0x94]
xor edx, edx
sub r8d, r13d
test r13d, r13d
js 0x699e25ef
add r13, qword [r12 + 0x50]
mov rdx, r13
mov rbp, qword [rsp + 0x20]
xor r9d, r9d
mov rcx, rbp
call fcn.699e0640
mov r15, qword [rbp]
mov r10d, dword [rbp + 0x94]
mov rbx, qword [r15 + 0x28]
mov dword [rbp + 0x84], r10d
mov rcx, rbx
call fcn.699e05b0
mov r12d, dword [rbx + 0x28]
cmp dword [r15 + 0x18], r12d
cmovbe r12d, dword [r15 + 0x18]
test r12d, r12d
je 0x699e2660
mov r14d, r12d
mov rcx, qword [r15 + 0x10]
mov rdx, qword [rbx + 0x20]
mov r8, r14
call sub.msvcrt.dll_memcpy
add qword [r15 + 0x10], r14
add qword [rbx + 0x20], r14
add dword [r15 + 0x1c], r12d
sub dword [r15 + 0x18], r12d
sub dword [rbx + 0x28], r12d
jne 0x699e2660
mov rax, qword [rbx + 0x10]
mov qword [rbx + 0x20], rax
mov r11, qword [rsp + 0x20]
xor eax, eax
mov r9, qword [r11]
mov ecx, dword [r9 + 0x18]
test ecx, ecx
setne al
mov r9d, eax
nop word cs:[rax + rax]
test r9d, r9d
je 0x699e2350
cmp eax, 1
jne 0x699e21a0
cmp edi, 1
je 0x699e379e
cmp edi, 5
jne 0x699e3020
mov rbx, qword [rsi + 0x28]
mov rcx, rbx
call fcn.699e05b0
mov r12d, dword [rbx + 0x28]
mov r8d, dword [rsi + 0x18]
cmp r12d, r8d
cmova r12d, r8d
test r12d, r12d
jne 0x699e2e88
test r8d, r8d
jne 0x699e21a0
jmp 0x699e2359
test edi, edi
je 0x699e2366
cmp dword [rcx + 8], 0x29a
jne 0x699e212c
jmp 0x699e21a0
mov r14d, dword [rcx + 0xac]
cmp r14d, 1
jle 0x699e1f38
cmp r14d, 5
jg 0x699e3098
or r8d, 0x40
jmp 0x699e1f38
mov r10, qword [rsp + 0x20]
mov r11, qword [r10 + 0x30]
cmp qword [r11 + 0x20], 0
je 0x699e285d
mov rbx, qword [rsp + 0x20]
mov r9d, dword [rbx + 0x28]
mov r8d, r9d
jmp 0x699e278d
mov r15, qword [rsp + 0x20]
mov r14, qword [r11 + 0x20]
lea r11d, [r8 + 1]
mov eax, dword [r15 + 0x38]
mov r10, qword [r15 + 0x10]
lea ecx, [rax + 1]
mov dword [r15 + 0x38], ecx
movzx ebp, byte [r14 + rax]
mov dword [r15 + 0x28], r11d
mov byte [r10 + r8], bpl
test bpl, bpl
je 0x699e2818
mov r8d, dword [r15 + 0x28]
mov r11, qword [r15 + 0x30]
mov rbx, r15
cmp dword [rbx + 0x18], r8d
jne 0x699e2750
mov r10d, dword [r11 + 0x3c]
test r10d, r10d
je 0x699e27a5
cmp r9d, r8d
jb 0x699e2cf8
mov r12, qword [rsi + 0x28]
mov rcx, r12
call fcn.699e05b0
mov ebx, dword [r12 + 0x28]
cmp dword [rsi + 0x18], ebx
cmovbe ebx, dword [rsi + 0x18]
test ebx, ebx
je 0x699e27f5
mov r13d, ebx
mov rcx, qword [rsi + 0x10]
mov rdx, qword [r12 + 0x20]
mov r8, r13
call sub.msvcrt.dll_memcpy
add qword [rsi + 0x10], r13
add qword [r12 + 0x20], r13
add dword [rsi + 0x1c], ebx
sub dword [rsi + 0x18], ebx
sub dword [r12 + 0x28], ebx
jne 0x699e27f5
mov rdx, qword [r12 + 0x10]
mov qword [r12 + 0x20], rdx
mov r10, qword [rsp + 0x20]
mov r8d, dword [r10 + 0x28]
test r8d, r8d
jne 0x699e235e
mov r11, qword [r10 + 0x30]
xor r9d, r9d
jmp 0x699e2750
mov r11, qword [r15 + 0x30]
mov r8d, dword [r11 + 0x3c]
test r8d, r8d
je 0x699e2850
mov r8d, dword [r15 + 0x28]
cmp r8d, r9d
jbe 0x699e2850
mov ecx, dword [rsi + 0x4c]
mov edx, r9d
sub r8d, r9d
add rdx, qword [r15 + 0x10]
call fcn.699e1da0
mov r11, qword [r15 + 0x30]
mov dword [rsi + 0x4c], eax
nop word [rax + rax]
mov r13, qword [rsp + 0x20]
mov dword [r13 + 0x38], 0
mov rdx, qword [rsp + 0x20]
mov dword [rdx + 8], 0x5b
cmp qword [r11 + 0x30], 0
je 0x699e2e78
mov rbx, qword [rsp + 0x20]
mov r10d, dword [rbx + 0x28]
mov r8d, r10d
jmp 0x699e28c5
mov r13, qword [rsp + 0x20]
mov r11, qword [r11 + 0x30]
lea r15d, [r8 + 1]
mov eax, dword [r13 + 0x38]
mov rdx, qword [r13 + 0x10]
lea ecx, [rax + 1]
mov dword [r13 + 0x38], ecx
movzx r14d, byte [r11 + rax]
mov dword [r13 + 0x28], r15d
mov byte [rdx + r8], r14b
test r14b, r14b
je 0x699e2d38
mov r8d, dword [r13 + 0x28]
mov r11, qword [r13 + 0x30]
mov rbx, r13
cmp dword [rbx + 0x18], r8d
jne 0x699e2888
mov r14d, dword [r11 + 0x3c]
test r14d, r14d
je 0x699e28dd
cmp r10d, r8d
jb 0x699e2d18
mov rbx, qword [rsi + 0x28]
mov rcx, rbx
call fcn.699e05b0
mov ebp, dword [rbx + 0x28]
cmp dword [rsi + 0x18], ebp
cmovbe ebp, dword [rsi + 0x18]
test ebp, ebp
je 0x699e2925
mov r12d, ebp
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rbx + 0x20]
mov r8, r12
call sub.msvcrt.dll_memcpy
add qword [rsi + 0x10], r12
add qword [rbx + 0x20], r12
add dword [rsi + 0x1c], ebp
sub dword [rsi + 0x18], ebp
sub dword [rbx + 0x28], ebp
jne 0x699e2925
mov r9, qword [rbx + 0x10]
mov qword [rbx + 0x20], r9
mov r10, qword [rsp + 0x20]
mov r8d, dword [r10 + 0x28]
test r8d, r8d
jne 0x699e235e
mov r11, qword [r10 + 0x30]
xor r10d, r10d
jmp 0x699e2888
xor r8d, r8d
xor ecx, ecx
xor edx, edx
call fcn.699e1da0
mov r14, qword [rsp + 0x20]
mov dword [rsi + 0x4c], eax
mov eax, dword [r14 + 0x28]
mov r11, qword [r14 + 0x10]
lea ecx, [rax + 1]
mov dword [r14 + 0x28], ecx
mov byte [r11 + rax], 0x1f
mov r9d, dword [r14 + 0x28]
mov r15, qword [r14 + 0x10]
lea r8d, [r9 + 1]
mov dword [r14 + 0x28], r8d
mov byte [r15 + r9], 0x8b
mov r12d, dword [r14 + 0x28]
mov r10, qword [r14 + 0x10]
lea ebp, [r12 + 1]
mov dword [r14 + 0x28], ebp
mov byte [r10 + r12], 8
mov r13, qword [r14 + 0x30]
test r13, r13
je 0x699e3540
mov ebx, dword [r13]
mov r14d, dword [r13 + 0x3c]
test ebx, ebx
setne dl
test r14d, r14d
je 0x699e29bd
add edx, 2
cmp qword [r13 + 0x10], 0
je 0x699e29c7
add edx, 4
cmp qword [r13 + 0x20], 0
je 0x699e29d1
add edx, 8
cmp qword [r13 + 0x30], 0
je 0x699e29db
add edx, 0x10
mov rbx, qword [rsp + 0x20]
mov eax, dword [rbx + 0x28]
mov r11, qword [rbx + 0x10]
lea ecx, [rax + 1]
mov dword [rbx + 0x28], ecx
mov byte [r11 + rax], dl
mov r15, qword [rbx + 0x30]
mov r12d, dword [rbx + 0x28]
mov r10, qword [rbx + 0x10]
mov r9d, dword [r15 + 4]
lea r8d, [r12 + 1]
mov dword [rbx + 0x28], r8d
mov byte [r10 + r12], r9b
mov rbp, qword [rbx + 0x30]
mov eax, dword [rbx + 0x28]
mov rdx, qword [rbx + 0x10]
mov ecx, dword [rbp + 4]
lea r13d, [rax + 1]
mov dword [rbx + 0x28], r13d
mov byte [rdx + rax], ch
mov r11, qword [rbx + 0x30]
mov r10d, dword [rbx + 0x28]
mov r9, qword [rbx + 0x10]
movzx r15d, word [r11 + 6]
mov r11d, 2
lea r12d, [r10 + 1]
mov dword [rbx + 0x28], r12d
mov byte [r9 + r10], r15b
mov rbp, qword [rbx + 0x30]
mov eax, dword [rbx + 0x28]
mov rdx, qword [rbx + 0x10]
movzx ecx, byte [rbp + 7]
lea r13d, [rax + 1]
mov dword [rbx + 0x28], r13d
mov byte [rdx + rax], cl
mov r14d, dword [rbx + 0xac]
cmp r14d, 9
je 0x699e2a89
cmp dword [rbx + 0xb0], 1
jg 0x699e2a83
xor r11d, r11d
cmp r14d, 1
jg 0x699e2a89
mov r11d, 4
mov r15, qword [rsp + 0x20]
mov r10d, dword [r15 + 0x28]
mov r9, qword [r15 + 0x10]
lea r12d, [r10 + 1]
mov dword [r15 + 0x28], r12d
mov byte [r9 + r10], r11b
mov r8, qword [r15 + 0x30]
mov edx, dword [r15 + 0x28]
mov rcx, qword [r15 + 0x10]
mov ebp, dword [r8 + 0xc]
lea eax, [rdx + 1]
mov dword [r15 + 0x28], eax
mov byte [rcx + rdx], bpl
mov r11, qword [r15 + 0x30]
cmp qword [r11 + 0x10], 0
je 0x699e2aff
mov r14d, dword [r15 + 0x28]
mov r13d, dword [r11 + 0x18]
mov rbx, qword [r15 + 0x10]
lea r11d, [r14 + 1]
mov dword [r15 + 0x28], r11d
mov byte [rbx + r14], r13b
mov r9, qword [r15 + 0x30]
mov eax, dword [r15 + 0x28]
mov rdx, qword [r15 + 0x10]
mov ecx, dword [r9 + 0x18]
lea r10d, [rax + 1]
mov dword [r15 + 0x28], r10d
mov byte [rdx + rax], ch
mov r11, qword [r15 + 0x30]
mov r15d, dword [r11 + 0x3c]
test r15d, r15d
jne 0x699e3730
mov r8, qword [rsp + 0x20]
mov dword [r8 + 0x38], 0
mov dword [r8 + 8], 0x45
mov rcx, qword [r11 + 0x10]
test rcx, rcx
je 0x699e2cbd
mov rbx, qword [rsp + 0x20]
movzx r14d, word [r11 + 0x18]
mov edx, dword [rbx + 0x38]
mov r12d, dword [rbx + 0x28]
mov r13d, dword [rbx + 0x18]
sub r14d, edx
lea ebp, [r12 + r14]
cmp ebp, r13d
ja 0x699e2bea
jmp 0x699e37ba
mov r8, qword [rsp + 0x20]
mov r15, qword [rsi + 0x28]
add dword [r8 + 0x38], ebp
mov rcx, r15
call fcn.699e05b0
mov ebp, dword [r15 + 0x28]
cmp dword [rsi + 0x18], ebp
cmovbe ebp, dword [rsi + 0x18]
test ebp, ebp
je 0x699e2bba
mov rdx, qword [r15 + 0x20]
mov rcx, qword [rsi + 0x10]
mov r8d, ebp
mov qword [rsp + 0x28], r8
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0x28]
add qword [rsi + 0x10], rdx
add qword [r15 + 0x20], rdx
add dword [rsi + 0x1c], ebp
sub dword [rsi + 0x18], ebp
sub dword [r15 + 0x28], ebp
jne 0x699e2bba
mov r10, qword [r15 + 0x10]
mov qword [r15 + 0x20], r10
mov r10, qword [rsp + 0x20]
mov ebp, dword [r10 + 0x28]
test ebp, ebp
jne 0x699e235e
sub r12d, r13d
mov r13d, dword [r10 + 0x18]
mov edx, dword [r10 + 0x38]
add r14d, r12d
mov r12, qword [r10 + 0x30]
mov rcx, qword [r12 + 0x10]
cmp r13d, r14d
jae 0x699e2c50
xor r12d, r12d
mov rbx, qword [rsp + 0x20]
mov ebp, r13d
mov r15d, r12d
add rdx, rcx
sub ebp, r12d
mov r11, r15
add r11, qword [rbx + 0x10]
mov r8d, ebp
mov rcx, r11
call sub.msvcrt.dll_memcpy
mov rcx, qword [rbx + 0x30]
mov r8d, dword [rbx + 0x18]
mov r9d, dword [rcx + 0x3c]
mov dword [rbx + 0x28], r8d
test r9d, r9d
je 0x699e2b60
cmp r8d, r12d
jbe 0x699e2b60
mov rax, qword [rsp + 0x20]
mov ecx, dword [rsi + 0x4c]
mov rdx, r15
sub r8d, r12d
add rdx, qword [rax + 0x10]
call fcn.699e1da0
mov dword [rsi + 0x4c], eax
jmp 0x699e2b60
xor r13d, r13d
mov rbx, qword [rsp + 0x20]
mov eax, edx
mov r9, r13
mov r8d, r14d
lea rdx, [rcx + rax]
add r9, qword [rbx + 0x10]
mov rcx, r9
call sub.msvcrt.dll_memcpy
mov r11, qword [rbx + 0x30]
add r14d, dword [rbx + 0x28]
mov dword [rbx + 0x28], r14d
mov r8d, r14d
mov r14d, dword [r11 + 0x3c]
test r14d, r14d
je 0x699e2cb0
cmp r8d, ebp
jbe 0x699e2cb0
mov r15, qword [rsp + 0x20]
mov ecx, dword [rsi + 0x4c]
mov rdx, r13
sub r8d, ebp
add rdx, qword [r15 + 0x10]
call fcn.699e1da0
mov r11, qword [r15 + 0x30]
mov dword [rsi + 0x4c], eax
nop dword [rax + rax]
mov r8, qword [rsp + 0x20]
mov dword [r8 + 0x38], 0
mov rbp, qword [rsp + 0x20]
mov dword [rbp + 8], 0x49
jmp 0x699e2731
mov r15, qword [rsp + 0x20]
mov r11, qword [r15 + 0x30]
jmp 0x699e2b21
mov rcx, qword [rsp + 0x20]
mov edx, edi
call fcn.6987baf0
jmp 0x699e2178
mov ecx, dword [rsi + 0x4c]
mov edx, r9d
sub r8d, r9d
add rdx, qword [rbx + 0x10]
call fcn.699e1da0
mov dword [rsi + 0x4c], eax
jmp 0x699e27a5
mov ecx, dword [rsi + 0x4c]
mov edx, r10d
sub r8d, r10d
add rdx, qword [rbx + 0x10]
call fcn.699e1da0
mov dword [rsi + 0x4c], eax
jmp 0x699e28dd
mov r8, qword [r13 + 0x30]
mov eax, dword [r8 + 0x3c]
test eax, eax
je 0x699e2ded
mov r8d, dword [r13 + 0x28]
cmp r8d, r10d
ja 0x699e2e5f
mov r12, qword [rsp + 0x20]
mov dword [r12 + 8], 0x67
test eax, eax
je 0x699e2ded
mov r9, qword [rsp + 0x20]
mov ebp, dword [r9 + 0x28]
lea r10d, [rbp + 2]
cmp r10d, dword [r9 + 0x18]
jbe 0x699e2db0
mov r14, qword [rsi + 0x28]
mov rcx, r14
call fcn.699e05b0
mov r15d, dword [r14 + 0x28]
cmp dword [rsi + 0x18], r15d
cmovbe r15d, dword [rsi + 0x18]
test r15d, r15d
jne 0x699e30b0
mov rcx, qword [rsp + 0x20]
mov ebp, dword [rcx + 0x28]
test ebp, ebp
jne 0x699e2359
mov rbx, qword [rsp + 0x20]
mov r11d, dword [rsi + 0x4c]
lea r8d, [rbp + 1]
mov rdx, qword [rbx + 0x10]
mov dword [rbx + 0x28], r8d
xor r8d, r8d
mov byte [rdx + rbp], r11b
mov eax, dword [rbx + 0x28]
mov ecx, dword [rsi + 0x4c]
mov rdx, qword [rbx + 0x10]
lea r12d, [rax + 1]
mov dword [rbx + 0x28], r12d
mov byte [rdx + rax], ch
xor edx, edx
xor ecx, ecx
call fcn.699e1da0
mov dword [rsi + 0x4c], eax
mov r9, qword [rsp + 0x20]
mov r14, qword [rsi + 0x28]
mov dword [r9 + 8], 0x71
mov rcx, r14
call fcn.699e05b0
mov r15d, dword [r14 + 0x28]
cmp dword [rsi + 0x18], r15d
cmovbe r15d, dword [rsi + 0x18]
test r15d, r15d
je 0x699e2e49
mov r13d, r15d
mov rcx, qword [rsi + 0x10]
mov rdx, qword [r14 + 0x20]
mov r8, r13
call sub.msvcrt.dll_memcpy
add qword [rsi + 0x10], r13
add qword [r14 + 0x20], r13
add dword [rsi + 0x1c], r15d
sub dword [rsi + 0x18], r15d
sub dword [r14 + 0x28], r15d
jne 0x699e2e49
mov r10, qword [r14 + 0x10]
mov qword [r14 + 0x20], r10
mov r10, qword [rsp + 0x20]
mov ebp, dword [r10 + 0x28]
test ebp, ebp
je 0x699e2110
jmp 0x699e235e
mov ecx, dword [rsi + 0x4c]
mov edx, r10d
sub r8d, r10d
add rdx, qword [r13 + 0x10]
call fcn.699e1da0
mov r11, qword [r13 + 0x30]
mov dword [rsi + 0x4c], eax
mov eax, dword [r11 + 0x3c]
jmp 0x699e2d55
mov r14d, r12d
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rbx + 0x20]
mov r8, r14
call sub.msvcrt.dll_memcpy
mov r8d, dword [rsi + 0x18]
add qword [rsi + 0x10], r14
add qword [rbx + 0x20], r14
sub r8d, r12d
add dword [rsi + 0x1c], r12d
mov dword [rsi + 0x18], r8d
sub dword [rbx + 0x28], r12d
jne 0x699e26c8
mov r10, qword [rbx + 0x10]
mov qword [rbx + 0x20], r10
jmp 0x699e26c8
mov r12, qword [0x69a01f00]
mov rbp, qword [0x69a01ef0]
mov rbx, qword [rsp + 0x20]
mov r13d, 0x102
mov eax, dword [rbx + 0x9c]
jmp 0x699e2fba
mov r8, qword [rsp + 0x20]
mov edx, dword [r8 + 0x94]
mov r15, qword [r8 + 0x50]
mov dword [r8 + 0x88], 0
mov ecx, edx
test edx, edx
je 0x699e2f30
lea r14, [r15 + rcx - 1]
movzx r9d, byte [r14]
cmp r9b, byte [r14 + 1]
je 0x699e3120
nop dword [rax]
movzx eax, byte [r15 + rcx]
mov r15, qword [rsp + 0x20]
xor r11d, r11d
mov ecx, dword [r15 + 0x16f4]
mov r8, qword [r15 + 0x16f8]
mov r10, r15
mov rdx, qword [r15 + 0x16e8]
mov r9, rcx
mov word [r8 + rcx*2], r11w
add r9d, 1
mov dword [r15 + 0x16f4], r9d
mov byte [rdx + rcx], al
add word [r15 + rax*4 + 0xbc], 1
mov r14d, dword [r15 + 0x16f0]
xor r15d, r15d
mov eax, dword [r10 + 0x9c]
mov ebx, dword [r10 + 0x94]
sub r14d, 1
cmp r14d, dword [r10 + 0x16f4]
sete r15b
lea r8d, [rbx + 1]
sub eax, 1
mov dword [r10 + 0x9c], eax
mov dword [r10 + 0x94], r8d
test r15d, r15d
jne 0x699e3488
cmp eax, 0x102
ja 0x699e2ef8
mov r14, qword [rsp + 0x20]
mov rcx, r14
call fcn.698d6db0
mov eax, dword [r14 + 0x9c]
cmp eax, 0x102
ja 0x699e2ef8
test edi, edi
je 0x699e2350
test eax, eax
je 0x699e3758
mov edx, dword [r14 + 0x94]
mov r15, qword [r14 + 0x50]
mov dword [r14 + 0x88], 0
mov ecx, edx
cmp eax, 2
jbe 0x699e2f30
jmp 0x699e2f15
mov rcx, qword [rsp + 0x20]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call fcn.699e1300
cmp edi, 3
jne 0x699e26a4
mov r13, qword [rsp + 0x20]
xor edx, edx
mov ebp, dword [r13 + 0x74]
mov rcx, qword [r13 + 0x68]
lea r8d, [rbp - 1]
mov word [rcx + r8*2], dx
add r8, r8
xor edx, edx
call sub.msvcrt.dll_memset
mov r15d, dword [r13 + 0x9c]
test r15d, r15d
jne 0x699e26a4
mov dword [r13 + 0x94], 0
mov dword [r13 + 0x84], 0
mov dword [r13 + 0x170c], 0
jmp 0x699e26a4
mov r9d, r8d
or r8b, 0xc0
or r9b, 0x80
cmp r14d, 6
cmove r8d, r9d
jmp 0x699e1f38
mov r13d, r15d
mov rcx, qword [rsi + 0x10]
mov rdx, qword [r14 + 0x20]
mov r8, r13
call sub.msvcrt.dll_memcpy
add qword [rsi + 0x10], r13
add qword [r14 + 0x20], r13
add dword [rsi + 0x1c], r15d
sub dword [rsi + 0x18], r15d
sub dword [r14 + 0x28], r15d
jne 0x699e2da0
mov rax, qword [r14 + 0x10]
mov qword [r14 + 0x20], rax
jmp 0x699e2da0
mov rsi, qword [r13 + 0x10]
mov qword [r13 + 0x20], rsi
jmp 0x699e226f
mov r12, qword [0x69a01f10]
mov eax, 0xfffffffb
mov r14, qword [r12 + 0x38]
mov qword [rsi + 0x20], r14
jmp 0x699e2368
cmp r9b, byte [r14 + 2]
jne 0x699e2f30
cmp r9b, byte [r14 + 3]
jne 0x699e2f30
lea r10, [r14 + 3]
lea r11, [r15 + rcx + 0x102]
cmp r9b, byte [r14 + 4]
jne 0x699e37c5
cmp r9b, byte [r10 + 2]
jne 0x699e37d7
cmp r9b, byte [r10 + 3]
jne 0x699e37ce
cmp r9b, byte [r10 + 4]
jne 0x699e37e0
cmp r9b, byte [r10 + 5]
jne 0x699e37e9
cmp r9b, byte [r10 + 6]
jne 0x699e37fb
cmp r9b, byte [r10 + 7]
jne 0x699e37f2
lea r8, [r10 + 8]
mov r10, r8
cmp byte [r8], r9b
jne 0x699e339a
cmp r11, r8
jbe 0x699e339a
cmp r9b, byte [r8 + 1]
jne 0x699e37c5
cmp r9b, byte [r8 + 2]
jne 0x699e37d7
cmp r9b, byte [r8 + 3]
jne 0x699e37ce
cmp r9b, byte [r8 + 4]
jne 0x699e37e0
cmp r9b, byte [r8 + 5]
jne 0x699e37e9
cmp r9b, byte [r8 + 6]
jne 0x699e37fb
cmp r9b, byte [r8 + 7]
jne 0x699e37f2
lea r10, [r8 + 8]
cmp byte [r8 + 8], r9b
jne 0x699e339a
cmp r9b, byte [r10 + 1]
jne 0x699e37c5
cmp r9b, byte [r10 + 2]
jne 0x699e37d7
cmp r9b, byte [r10 + 3]
jne 0x699e37ce
cmp r9b, byte [r10 + 4]
jne 0x699e37e0
cmp r9b, byte [r10 + 5]
jne 0x699e37e9
cmp r9b, byte [r10 + 6]
jne 0x699e37fb
cmp r9b, byte [r10 + 7]
jne 0x699e37f2
lea rdx, [r10 + 8]
mov r10, rdx
cmp byte [rdx], r9b
jne 0x699e339a
cmp r9b, byte [rdx + 1]
jne 0x699e37c5
cmp r9b, byte [rdx + 2]
jne 0x699e37d7
cmp r9b, byte [rdx + 3]
jne 0x699e37ce
cmp r9b, byte [rdx + 4]
jne 0x699e37e0
cmp r9b, byte [rdx + 5]
jne 0x699e37e9
cmp r9b, byte [rdx + 6]
jne 0x699e37fb
cmp r9b, byte [rdx + 7]
jne 0x699e37f2
lea r10, [rdx + 8]
cmp byte [rdx + 8], r9b
jne 0x699e339a
cmp r9b, byte [r10 + 1]
jne 0x699e37c5
cmp r9b, byte [r10 + 2]
jne 0x699e37d7
cmp r9b, byte [r10 + 3]
jne 0x699e37ce
cmp r9b, byte [r10 + 4]
jne 0x699e37e0
cmp r9b, byte [r10 + 5]
jne 0x699e37e9
cmp r9b, byte [r10 + 6]
jne 0x699e37fb
cmp r9b, byte [r10 + 7]
jne 0x699e37f2
lea r10, [rdx + 0x10]
cmp byte [rdx + 0x10], r9b
jne 0x699e339a
cmp r9b, byte [r10 + 1]
jne 0x699e37c5
cmp r9b, byte [r10 + 2]
jne 0x699e37d7
cmp r9b, byte [r10 + 3]
jne 0x699e37ce
cmp r9b, byte [r10 + 4]
jne 0x699e37e0
cmp r9b, byte [r10 + 5]
jne 0x699e37e9
cmp r9b, byte [r10 + 6]
jne 0x699e37fb
cmp r9b, byte [r10 + 7]
jne 0x699e37f2
lea r10, [rdx + 0x18]
cmp byte [rdx + 0x18], r9b
jne 0x699e339a
cmp r9b, byte [r10 + 1]
jne 0x699e37c5
cmp r9b, byte [r10 + 2]
jne 0x699e37d7
cmp r9b, byte [r10 + 3]
jne 0x699e37ce
cmp r9b, byte [r10 + 4]
jne 0x699e37e0
cmp r9b, byte [r10 + 5]
jne 0x699e37e9
cmp r9b, byte [r10 + 6]
jne 0x699e37fb
cmp r9b, byte [r10 + 7]
jne 0x699e37f2
lea r10, [rdx + 0x20]
cmp byte [rdx + 0x20], r9b
jne 0x699e339a
cmp r11, r10
ja 0x699e31f3
mov rbx, qword [rsp + 0x20]
sub r11, r10
mov r14d, r13d
sub r14d, r11d
mov dword [rbx + 0x88], r14d
cmp r14d, eax
jbe 0x699e3472
mov dword [rbx + 0x88], eax
mov r14d, eax
nop dword [rax]
mov r11, qword [rsp + 0x20]
lea r9d, [r14 - 3]
movzx ebx, byte [rbp]
mov r10d, 1
movzx r15d, r9b
mov ecx, dword [r11 + 0x16f4]
mov r8, qword [r11 + 0x16f8]
mov r14, qword [r11 + 0x16e8]
movzx eax, byte [r12 + r15]
xor r15d, r15d
mov rdx, rcx
mov word [r8 + rcx*2], r10w
add edx, 1
mov dword [r11 + 0x16f4], edx
mov byte [r14 + rcx], r9b
add word [r11 + rax*4 + 0x4c0], 1
add word [r11 + rbx*4 + 0x9b0], 1
mov r9d, dword [r11 + 0x16f0]
mov r8d, dword [r11 + 0x88]
mov eax, dword [r11 + 0x9c]
mov dword [r11 + 0x88], 0
sub r9d, 1
cmp r9d, dword [r11 + 0x16f4]
sete r15b
sub eax, r8d
add r8d, dword [r11 + 0x94]
mov dword [r11 + 0x9c], eax
mov dword [r11 + 0x94], r8d
jmp 0x699e2fb1
cmp r14d, 2
ja 0x699e33c8
jmp 0x699e2f30
mov r13, qword [rsp + 0x20]
xor edx, edx
movsxd r11, dword [r13 + 0x84]
sub r8d, r11d
test r11d, r11d
js 0x699e34a5
add r11, qword [r13 + 0x50]
mov rdx, r11
mov r14, qword [rsp + 0x20]
xor r9d, r9d
mov rcx, r14
call fcn.699e0640
mov rbx, qword [r14]
mov edx, dword [r14 + 0x94]
mov r15, qword [rbx + 0x28]
mov dword [r14 + 0x84], edx
mov rcx, r15
call fcn.699e05b0
mov r13d, dword [r15 + 0x28]
cmp dword [rbx + 0x18], r13d
cmovbe r13d, dword [rbx + 0x18]
test r13d, r13d
je 0x699e351c
mov rcx, qword [rbx + 0x10]
mov rdx, qword [r15 + 0x20]
mov r8d, r13d
mov qword [rsp + 0x28], r8
call sub.msvcrt.dll_memcpy
mov r8, qword [rsp + 0x28]
add qword [rbx + 0x10], r8
add qword [r15 + 0x20], r8
add dword [rbx + 0x1c], r13d
sub dword [rbx + 0x18], r13d
sub dword [r15 + 0x28], r13d
jne 0x699e351c
mov r10, qword [r15 + 0x10]
mov qword [r15 + 0x20], r10
mov rax, qword [rsp + 0x20]
mov r9, qword [rax]
mov r11d, dword [r9 + 0x18]
test r11d, r11d
jne 0x699e2ede
jmp 0x699e2350
mov r13d, dword [r14 + 0x28]
mov rbp, qword [r14 + 0x10]
lea ebx, [r13 + 1]
mov dword [r14 + 0x28], ebx
mov byte [rbp + r13], 0
mov r9d, dword [r14 + 0x28]
mov r11, qword [r14 + 0x10]
lea ecx, [r9 + 1]
mov dword [r14 + 0x28], ecx
mov byte [r11 + r9], 0
mov eax, dword [r14 + 0x28]
mov r11d, 2
mov rdx, qword [r14 + 0x10]
lea r10d, [rax + 1]
mov dword [r14 + 0x28], r10d
mov byte [rdx + rax], 0
mov r12d, dword [r14 + 0x28]
mov r15, qword [r14 + 0x10]
lea r8d, [r12 + 1]
mov dword [r14 + 0x28], r8d
mov byte [r15 + r12], 0
mov r13d, dword [r14 + 0x28]
mov rbp, qword [r14 + 0x10]
lea ebx, [r13 + 1]
mov dword [r14 + 0x28], ebx
mov rbx, r14
mov byte [rbp + r13], 0
mov r14d, dword [r14 + 0xac]
cmp r14d, 9
je 0x699e35d9
cmp dword [rbx + 0xb0], 1
jg 0x699e35d3
xor r11d, r11d
cmp r14d, 1
jg 0x699e35d9
mov r11d, 4
mov r9, qword [rsp + 0x20]
mov edx, dword [r9 + 0x28]
mov rcx, qword [r9 + 0x10]
lea eax, [rdx + 1]
mov dword [r9 + 0x28], eax
mov byte [rcx + rdx], r11b
mov r15d, dword [r9 + 0x28]
mov r10, qword [r9 + 0x10]
lea r12d, [r15 + 1]
mov dword [r9 + 0x28], r12d
mov byte [r10 + r15], 0xa
mov rbx, qword [rsi + 0x28]
mov dword [r9 + 8], 0x71
mov rcx, rbx
call fcn.699e05b0
mov ebp, dword [rbx + 0x28]
cmp dword [rsi + 0x18], ebp
cmovbe ebp, dword [rsi + 0x18]
test ebp, ebp
je 0x699e3656
mov r13d, ebp
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rbx + 0x20]
mov r8, r13
call sub.msvcrt.dll_memcpy
add qword [rsi + 0x10], r13
add qword [rbx + 0x20], r13
add dword [rsi + 0x1c], ebp
sub dword [rsi + 0x18], ebp
sub dword [rbx + 0x28], ebp
jne 0x699e3656
mov r8, qword [rbx + 0x10]
mov qword [rbx + 0x20], r8
mov r10, qword [rsp + 0x20]
mov r14d, dword [r10 + 0x28]
test r14d, r14d
jne 0x699e235e
mov ecx, dword [r10 + 8]
jmp 0x699e2069
mov byte [r13], r9b
mov eax, dword [r11 + 0x28]
mov ebx, dword [rsi + 0x4c]
mov rdi, qword [r11 + 0x10]
lea r9d, [rax + 1]
mov dword [r11 + 0x28], r9d
mov byte [rdi + rax], bh
mov r15d, dword [r11 + 0x28]
movzx r13d, word [rsi + 0x4e]
mov rbp, qword [r11 + 0x10]
lea edx, [r15 + 1]
mov dword [r11 + 0x28], edx
mov byte [rbp + r15], r13b
mov r14d, dword [r11 + 0x28]
movzx ecx, byte [rsi + 0x4f]
mov r12, qword [r11 + 0x10]
lea r10d, [r14 + 1]
mov dword [r11 + 0x28], r10d
mov byte [r12 + r14], cl
mov eax, dword [r11 + 0x28]
mov ebx, dword [rsi + 0xc]
mov rdi, qword [r11 + 0x10]
lea r8d, [rax + 1]
mov dword [r11 + 0x28], r8d
mov byte [rdi + rax], bl
mov eax, dword [r11 + 0x28]
mov ecx, dword [rsi + 0xc]
mov rdx, qword [r11 + 0x10]
lea r9d, [rax + 1]
mov dword [r11 + 0x28], r9d
mov byte [rdx + rax], ch
mov r15d, dword [r11 + 0x28]
movzx r13d, word [rsi + 0xe]
mov rbp, qword [r11 + 0x10]
lea r12d, [r15 + 1]
mov dword [r11 + 0x28], r12d
mov byte [rbp + r15], r13b
movzx r14d, byte [rsi + 0xf]
mov r10, qword [r11 + 0x10]
mov ebx, dword [r11 + 0x28]
lea edi, [rbx + 1]
mov dword [r11 + 0x28], edi
mov byte [r10 + rbx], r14b
jmp 0x699e2229
mov r12, qword [rsp + 0x20]
mov ecx, dword [rsi + 0x4c]
mov rdx, qword [r12 + 0x10]
mov r8d, dword [r12 + 0x28]
call fcn.699e1da0
mov r11, qword [r12 + 0x30]
mov dword [rsi + 0x4c], eax
jmp 0x699e2b0c
mov rbp, qword [rsp + 0x20]
mov dword [rbp + 0x170c], 0
cmp edi, 4
je 0x699e2299
mov r14d, dword [rbp + 0x16f4]
mov r12, rbp
test r14d, r14d
je 0x699e2692
jmp 0x699e25cd
mov rdx, qword [rsp + 0x20]
mov r11, qword [rdx + 0x30]
jmp 0x699e2869
mov rcx, qword [rsp + 0x20]
call fcn.699e0440
jmp 0x699e26a4
mov dword [r10 + 8], 0x29a
jmp 0x699e21a9
mov r13d, r12d
mov ebp, r12d
jmp 0x699e2c53
add r10, 1
jmp 0x699e339a
add r10, 3
jmp 0x699e339a
add r10, 2
jmp 0x699e339a
add r10, 4
jmp 0x699e339a
add r10, 5
jmp 0x699e339a
add r10, 7
jmp 0x699e339a
add r10, 6
jmp 0x699e339a