Function at 0x140068840
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
mov rax, qword [0x14011c040]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r13, qword [rdx + 0x10]
xor eax, eax
movzx r15d, byte [rcx + 0x23]
mov r14d, eax
mov dword [rsp + 0x78], eax
mov r12, rdx
mov dword [rsp + 0x38], eax
mov rdi, rcx
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x70], r13
mov dword [rsp + 0x34], r9d
mov dword [rsp + 0x3c], r8d
mov qword [rsp + 0x60], rdx
call fcn.140068750
test eax, eax
jne 0x140069862
mov qword [rsp + 0xa8], rbx
mov rdx, r12
mov qword [rsp + 0xa0], rbp
mov rcx, rdi
mov qword [rsp + 0x98], rsi
call fcn.140067590
mov qword [rsp + 0x68], rax
mov rax, qword [r12 + 0x10]
movzx ecx, byte [rax]
cmp cl, 0xb0
jne 0x1400688dd
movzx ecx, byte [rax + 2]
cmp cl, 0xb1
jne 0x1400688ea
mov rcx, qword [rax + 0x20]
mov ebp, dword [rcx]
jmp 0x140068900
cmp cl, 0x8a
jne 0x1400688fb
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + 0x20]
mov ebp, dword [rcx]
jmp 0x140068900
mov ebp, 1
mov rcx, qword [rdi]
movsxd rsi, ebp
mov dword [rsp + 0x44], ebp
mov qword [rsp + 0x50], rsi
lea rbx, [rsi*4 + 1]
add rbx, rsi
test rcx, rcx
je 0x140068929
mov rdx, rbx
call fcn.14001aa30
jmp 0x140068931
mov rcx, rbx
call fcn.14001a280
mov qword [rsp + 0x58], rax
mov rcx, rax
test rax, rax
je 0x14006894d
mov r8, rbx
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rcx, qword [rsp + 0x58]
mov rax, qword [rdi]
cmp byte [rax + 0x67], r14b
jne 0x140069823
mov edx, dword [rsp + 0x3c]
lea rax, [rsp + 0x40]
cmp edx, dword [rsp + 0x34]
lea r9, [rsp + 0x78]
mov rbx, qword [rdi + 0x10]
mov r8d, 3
mov qword [rsp + 0x28], rax
cmove r9, r14
mov qword [rsp + 0x20], rcx
mov rdx, r12
mov rcx, rdi
call fcn.140066a60
mov byte [rdi + 0x23], r14b
movzx edx, byte [r13]
mov dword [rsp + 0x48], eax
movzx ecx, dl
cmp dl, 0xb0
jne 0x1400689a9
movzx ecx, byte [r13 + 2]
cmp cl, 0xb1
jne 0x1400689b4
mov rcx, qword [r13 + 0x20]
jmp 0x1400689c5
cmp cl, 0x8a
jne 0x140068a80
mov rax, qword [r13 + 0x20]
mov rcx, qword [rax + 0x20]
movsxd rcx, dword [rcx]
cmp ecx, 1
je 0x140068a80
cmp dl, 0x8a
jne 0x1400689ea
mov rdx, r13
mov rcx, rdi
call fcn.140067ff0
mov r8d, eax
mov dword [rsp + 0x4c], eax
jmp 0x140068a43
mov eax, dword [rdi + 0x38]
mov r14, rcx
lea r8d, [rax + 1]
add eax, ecx
mov dword [rsp + 0x4c], r8d
mov dword [rdi + 0x38], eax
test ecx, ecx
jle 0x140068a3e
xor eax, eax
mov ebp, r8d
mov esi, eax
nop dword [rax]
mov rdx, qword [r13 + 0x20]
mov r8d, ebp
mov rcx, rdi
mov rdx, qword [rsi + rdx + 8]
call fcn.14006cf30
inc ebp
lea rsi, [rsi + 0x20]
sub r14, 1
jne 0x140068a10
mov rsi, qword [rsp + 0x50]
mov ebp, dword [rsp + 0x44]
mov r8d, dword [rsp + 0x4c]
mov r14d, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x58]
xor r10d, r10d
mov byte [rdi + 0x23], r15b
mov ecx, r10d
test rsi, rsi
jle 0x140068a6f
mov eax, r10d
nop word [rax + rax]
cmp dword [rdx + rax*4], ecx
jne 0x140068a6f
inc ecx
inc rax
cmp rax, rsi
jl 0x140068a60
cmp ecx, ebp
jne 0x140068a99
mov r15d, r8d
mov dword [rsp + 0x30], r8d
jmp 0x140068b86
lea r8, [rsp + 0x4c]
mov rdx, r13
mov rcx, rdi
call fcn.14006cd00
mov r8d, eax
mov dword [rsp + 0x4c], eax
jmp 0x140068a43
cmp ebp, 1
jne 0x140068ac7
movzx eax, byte [rdi + 0x1f]
test al, al
jne 0x140068ab2
inc dword [rdi + 0x38]
mov eax, dword [rdi + 0x38]
mov dword [rsp + 0x30], eax
jmp 0x140068af0
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov eax, dword [rdi + rax*4 + 0xe8]
mov dword [rsp + 0x30], eax
jmp 0x140068af0
mov ecx, dword [rdi + 0x28]
mov eax, dword [rdi + 0x2c]
mov dword [rsp + 0x30], eax
cmp ebp, ecx
jg 0x140068ae1
add eax, ebp
sub ecx, ebp
mov dword [rdi + 0x2c], eax
mov dword [rdi + 0x28], ecx
jmp 0x140068af0
mov eax, dword [rdi + 0x38]
lea ecx, [rax + 1]
add eax, ebp
mov dword [rdi + 0x38], eax
mov dword [rsp + 0x30], ecx
mov r15d, dword [rsp + 0x30]
test rsi, rsi
jle 0x140068b86
mov r13, qword [rsp + 0x50]
xor r12d, r12d
mov esi, r12d
mov ebp, r8d
nop dword [rax]
mov edx, dword [rdx + rsi*4]
movsxd rcx, dword [rbx + 0x90]
add edx, r15d
cmp dword [rbx + 0x94], ecx
jg 0x140068b3f
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x50
mov r8d, ebp
mov rcx, rbx
call fcn.140048950
jmp 0x140068b6c
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x50
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rdx, qword [rsp + 0x58]
inc ebp
inc rsi
cmp rsi, r13
jl 0x140068b10
mov r12, qword [rsp + 0x60]
mov rsi, r13
xor r10d, r10d
cmp dword [rsp + 0x48], 5
jne 0x140068ff9
dec dword [rdi + 0x44]
mov rcx, rdi
mov rdx, qword [rsp + 0x60]
mov ebp, r10d
mov r13d, dword [rdi + 0x44]
mov r12, qword [r12 + 0x20]
mov rdx, qword [rdx + 0x10]
call fcn.140062640
mov esi, dword [rsp + 0x3c]
mov qword [rsp + 0x60], rax
cmp dword [rsp + 0x34], esi
je 0x140068c05
movzx ecx, byte [rdi + 0x1f]
test cl, cl
jne 0x140068bd0
inc dword [rdi + 0x38]
mov ebp, dword [rdi + 0x38]
jmp 0x140068bdf
dec cl
movzx eax, cl
mov byte [rdi + 0x1f], al
mov ebp, dword [rdi + rax*4 + 0xe8]
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140068c53
mov r9d, r15d
mov dword [rsp + 0x20], ebp
mov r8d, r15d
mov edx, 0x66
mov rcx, rbx
call fcn.140048950
xor edx, edx
cmp dword [r12], 0
mov r14d, edx
jle 0x140068ef4
lea r15, [r12 + 8]
nop word [rax + rax]
mov rdx, qword [r15]
lea r8, [rsp + 0x48]
mov rcx, rdi
call fcn.14006cd00
mov esi, eax
test ebp, ebp
je 0x140068d1e
mov rdx, qword [r15]
nop dword [rax]
movzx r8d, byte [rdx]
lea ecx, [r8 + 0x53]
cmp cl, 1
ja 0x140068c85
mov rdx, qword [rdx + 0x10]
jmp 0x140068c40
lea eax, [rcx + 1]
xor edx, edx
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x66
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rdx
jmp 0x140068c07
cmp r8b, 0xb0
jne 0x140068c90
movzx r8d, byte [rdx + 2]
movzx ecx, r8b
sub ecx, 0x75
je 0x140068d1e
sub ecx, 0x24
je 0x140068d1e
sub ecx, 1
je 0x140068d1e
sub ecx, 1
je 0x140068d1e
cmp ecx, 0xc
jne 0x140068cf4
test dword [rdx + 4], 0x200000
jne 0x140068ceb
mov rax, qword [rdx + 0x40]
test rax, rax
je 0x140068ceb
movsx rcx, word [rdx + 0x30]
test cx, cx
js 0x140068ce7
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x140068ce7
cmp cx, word [rax + 0x36]
jge 0x140068ce7
lea rcx, [rcx + rcx*2]
test byte [rdx + rcx*8 + 8], 0xf
je 0x140068ceb
xor eax, eax
jmp 0x140068cf0
mov eax, 1
test eax, eax
je 0x140068d1e
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140068d93
mov r9d, esi
mov dword [rsp + 0x20], ebp
mov r8d, ebp
mov edx, 0x66
mov rcx, rbx
call fcn.140048950
xor r11d, r11d
mov ecx, dword [rsp + 0x48]
test ecx, ecx
je 0x140068d3b
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x140068d3b
mov dword [rdi + rax*4 + 0xe8], ecx
inc byte [rdi + 0x1f]
mov eax, dword [r12]
dec eax
cmp r14d, eax
jl 0x140068e35
mov r9d, dword [rsp + 0x3c]
cmp dword [rsp + 0x34], r9d
jne 0x140068e35
mov r8d, dword [rsp + 0x30]
mov r10d, 0x32
movsxd rdx, dword [rbx + 0x90]
cmp r8d, esi
mov eax, 0x34
cmovne r10d, eax
cmp dword [rbx + 0x94], edx
jg 0x140068dc7
mov edx, r10d
mov dword [rsp + 0x20], esi
mov rcx, rbx
call fcn.140048950
mov edx, eax
jmp 0x140068dfd
lea eax, [rcx + 1]
xor r11d, r11d
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x66
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], r11
jmp 0x140068d21
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov byte [rax + rcx*8], r10b
mov word [rax + rcx*8 + 2], r11w
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r11
mov byte [rax + rcx*8 + 1], 0
mov r8, qword [rsp + 0x60]
mov r9d, 0xfffffffe
mov rcx, rbx
call fcn.140049950
movsxd rcx, dword [rbx + 0x90]
test ecx, ecx
jle 0x140068edd
mov rax, qword [rsp + 0x68]
lea rcx, [rcx + rcx*2]
movzx eax, byte [rax]
or al, 0x10
movsx edx, al
jmp 0x140068ed1
mov r8d, dword [rsp + 0x30]
mov r10d, 0x33
movsxd rdx, dword [rbx + 0x90]
cmp r8d, esi
mov eax, 0x35
cmovne r10d, eax
cmp dword [rbx + 0x94], edx
jg 0x140068e71
mov r9d, r13d
mov dword [rsp + 0x20], esi
mov edx, r10d
mov rcx, rbx
call fcn.140048950
mov edx, eax
jmp 0x140068ea7
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov byte [rax + rcx*8], r10b
mov word [rax + rcx*8 + 2], r11w
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r11
mov byte [rax + rcx*8 + 1], 0
mov r8, qword [rsp + 0x60]
mov r9d, 0xfffffffe
mov rcx, rbx
call fcn.140049950
movsxd rax, dword [rbx + 0x90]
test eax, eax
jle 0x140068edd
mov rcx, qword [rsp + 0x68]
movsx edx, byte [rcx]
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov word [rax + rcx*8 - 0x16], dx
inc r14d
add r15, 0x20
cmp r14d, dword [r12]
jl 0x140068c20
mov esi, dword [rsp + 0x3c]
xor edx, edx
test ebp, ebp
je 0x140068faa
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140068f28
mov r9d, dword [rsp + 0x34]
mov r8d, ebp
mov dword [rsp + 0x20], edx
mov rcx, rbx
mov edx, 0x32
call fcn.140048950
xor edx, edx
jmp 0x140068f5a
mov r10d, dword [rsp + 0x34]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x32
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r10d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140068f81
xor r8d, r8d
mov dword [rsp + 0x20], edx
mov r9d, esi
mov rcx, rbx
lea edx, [r8 + 9]
call fcn.140048950
jmp 0x140068faa
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov rcx, qword [rbx + 0x18]
not r13d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140068fc6
mov r8d, r13d
mov rdx, rbx
call fcn.140049110
jmp 0x140068fd6
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r13d
mov dword [rcx + rdx*4], eax
test ebp, ebp
je 0x140069803
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x140069803
mov dword [rdi + rax*4 + 0xe8], ebp
inc byte [rdi + 0x1f]
jmp 0x140069803
mov r13d, dword [rsp + 0x3c]
cmp dword [rsp + 0x34], r13d
jne 0x14006900a
mov r15d, r13d
jmp 0x140069019
dec dword [rdi + 0x44]
mov r14d, dword [rdi + 0x44]
mov r15d, r14d
mov dword [rsp + 0x38], r14d
test rsi, rsi
jle 0x140069189
mov ebp, dword [rsp + 0x30]
mov r14, r10
mov r13, qword [rsp + 0x50]
mov rsi, r10
mov rcx, qword [r12 + 0x10]
movzx r9d, byte [rcx]
movzx eax, r9b
cmp r9b, 0xb0
jne 0x140069048
movzx eax, byte [rcx + 2]
cmp al, 0xb1
jne 0x140069055
mov rax, qword [rcx + 0x20]
mov r8, rax
jmp 0x140069061
cmp al, 0x8a
jne 0x14006907c
mov rax, qword [rcx + 0x20]
mov r8, qword [rax + 0x20]
cmp dword [r8], 1
jle 0x14006907c
cmp r9b, 0x8a
je 0x140069073
cmp byte [rcx + 2], 0x8a
jne 0x140069077
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + rsi + 8]
cmp dword [rdi + 0x30], 0
jne 0x140069823
movzx edx, byte [rcx]
lea eax, [rdx + 0x53]
cmp al, 1
ja 0x140069096
mov rcx, qword [rcx + 0x10]
jmp 0x140069086
cmp dl, 0xb0
jne 0x14006909f
movzx edx, byte [rcx + 2]
movzx edx, dl
sub edx, 0x75
je 0x14006916a
sub edx, 0x24
je 0x14006916a
sub edx, 1
je 0x14006916a
sub edx, 1
je 0x14006916a
cmp edx, 0xc
jne 0x140069110
test dword [rcx + 4], 0x200000
jne 0x140069107
mov rax, qword [rcx + 0x40]
test rax, rax
je 0x140069107
movsx rdx, word [rcx + 0x30]
test dx, dx
js 0x140069102
mov r8, qword [rax + 8]
test r8, r8
je 0x140069102
cmp dx, word [rax + 0x36]
jge 0x140069102
lea rcx, [rdx + rdx*2]
test byte [r8 + rcx*8 + 8], 0xf
je 0x140069107
mov eax, r10d
jmp 0x14006910c
mov eax, 1
test eax, eax
je 0x14006916a
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x14006913c
mov r9d, r15d
mov dword [rsp + 0x20], r10d
mov r8d, ebp
mov edx, 0x32
mov rcx, rbx
call fcn.140048950
xor r10d, r10d
jmp 0x14006916a
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x32
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
inc ebp
inc r14
add rsi, 0x20
cmp r14, r13
jl 0x140069031
mov r14d, dword [rsp + 0x38]
mov rsi, r13
mov r13d, dword [rsp + 0x3c]
cmp dword [rsp + 0x48], 1
movsxd rdx, dword [rbx + 0x90]
mov eax, dword [rbx + 0x94]
jne 0x14006926e
mov r12d, dword [rsp + 0x40]
cmp eax, edx
jg 0x1400691cc
mov r15d, dword [rsp + 0x30]
mov r9d, r13d
mov r8d, r12d
mov dword [rsp + 0x20], r15d
mov edx, 0x1e
mov rcx, rbx
call fcn.140048950
xor r10d, r10d
jmp 0x1400691fe
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov edx, dword [rsp + 0x30]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x1e
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r10
movsxd rdx, dword [rbx + 0x90]
mov dword [rsp + 0x38], edx
cmp dword [rbx + 0x94], edx
jg 0x140069238
xor r9d, r9d
mov dword [rsp + 0x20], r10d
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 9]
call fcn.140048950
mov ebp, dword [rsp + 0x44]
xor r8d, r8d
mov dword [rsp + 0x38], eax
jmp 0x1400693af
mov ebp, dword [rsp + 0x44]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor r8d, r8d
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 9
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r10
jmp 0x1400693af
mov ebp, dword [rsp + 0x44]
mov r15d, dword [rsp + 0x30]
cmp eax, edx
jg 0x140069297
mov r9d, ebp
mov dword [rsp + 0x20], r10d
mov r8d, r15d
mov edx, 0x60
mov rcx, rbx
call fcn.140048950
mov edx, eax
jmp 0x1400692c5
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x60
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov r8, qword [rsp + 0x68]
mov r9d, ebp
mov rcx, rbx
call fcn.140049950
movsxd r8, dword [rbx + 0x90]
mov eax, dword [rbx + 0x94]
mov dword [rsp + 0x38], r8d
cmp r13d, dword [rsp + 0x34]
jne 0x14006934f
cmp eax, r8d
jg 0x140069316
mov r8d, dword [rsp + 0x40]
mov r9d, r13d
mov dword [rsp + 0x28], ebp
mov edx, 0x1c
mov rcx, rbx
mov dword [rsp + 0x20], r15d
call fcn.1400489b0
jmp 0x140069803
lea eax, [r8 + 1]
mov dword [rbx + 0x90], eax
lea rcx, [r8 + r8*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xfd1c
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r15d
lea rdx, [rax + rcx*8]
mov eax, dword [rsp + 0x40]
mov dword [rdx + 0x10], ebp
mov dword [rdx + 4], eax
jmp 0x140069803
mov r12d, dword [rsp + 0x40]
cmp eax, r8d
jg 0x14006937d
xor r9d, r9d
mov dword [rsp + 0x28], ebp
mov r8d, r12d
mov dword [rsp + 0x20], r15d
mov rcx, rbx
lea edx, [r9 + 0x1d]
call fcn.1400489b0
mov dword [rsp + 0x38], eax
xor r8d, r8d
jmp 0x1400693af
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
xor r8d, r8d
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xfd1d
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r15d
mov dword [rax + rcx*8 + 0x10], ebp
mov edx, dword [rsp + 0x78]
test edx, edx
je 0x1400693e1
cmp ebp, 1
jne 0x1400693e1
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140069418
mov dword [rsp + 0x20], r8d
mov r9d, r13d
mov r8d, edx
mov rcx, rbx
lea edx, [rbp + 0x32]
call fcn.140048950
xor edx, edx
mov r15d, dword [rsp + 0x34]
cmp r13d, r15d
jne 0x140069473
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x140069449
xor r8d, r8d
mov dword [rsp + 0x20], edx
mov r9d, r13d
mov rcx, rbx
lea edx, [r8 + 9]
call fcn.140048950
jmp 0x140069473
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8 + 4], edx
xor edx, edx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov dword [rax + rcx*8], 0x33
mov dword [rax + rcx*8 + 8], r13d
jmp 0x1400693e3
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
test r14d, r14d
je 0x1400694a4
mov rcx, qword [rbx + 0x18]
not r14d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140069494
mov r8d, r14d
mov rdx, rbx
call fcn.140049110
jmp 0x1400694a4
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r14d
mov dword [rcx + rdx*4], eax
movsxd rdx, dword [rbx + 0x90]
mov dword [rsp + 0x48], edx
cmp dword [rbx + 0x94], edx
jg 0x1400694d6
xor eax, eax
mov r9d, r13d
mov r8d, r12d
mov dword [rsp + 0x20], eax
mov rcx, rbx
lea edx, [rax + 0x24]
call fcn.140048950
mov dword [rsp + 0x48], eax
xor edx, edx
jmp 0x140069506
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor edx, edx
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x24
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
cmp ebp, 1
jle 0x140069512
dec dword [rdi + 0x44]
mov r13d, dword [rdi + 0x44]
mov r14d, edx
test rsi, rsi
jle 0x14006969c
mov r15, rdx
movzx eax, byte [rdi + 0x1f]
test al, al
jne 0x140069531
inc dword [rdi + 0x38]
mov esi, dword [rdi + 0x38]
jmp 0x140069540
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov esi, dword [rdi + rax*4 + 0xe8]
mov r8, qword [rsp + 0x70]
movzx edx, byte [r8]
movzx eax, dl
cmp dl, 0xb0
jne 0x140069556
movzx eax, byte [r8 + 2]
cmp al, 0xb1
jne 0x140069563
mov rax, qword [r8 + 0x20]
mov rcx, rax
jmp 0x14006956f
cmp al, 0x8a
jne 0x140069592
mov rax, qword [r8 + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
jle 0x140069592
cmp dl, 0x8a
je 0x140069587
cmp byte [r8 + 2], 0x8a
je 0x140069587
mov rdx, qword [r15 + rax + 8]
jmp 0x140069595
mov rax, qword [rax + 0x20]
mov rdx, qword [rax + r15 + 8]
jmp 0x140069595
mov rdx, r8
mov rcx, rdi
call fcn.140062640
movsxd rcx, dword [rbx + 0x90]
mov rbp, rax
cmp dword [rbx + 0x94], ecx
jg 0x1400695cb
mov r9d, r14d
mov dword [rsp + 0x20], esi
mov r8d, r12d
mov edx, 0x5e
mov rcx, rbx
call fcn.140048950
xor r9d, r9d
jmp 0x1400695fc
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r9
mov r8d, dword [rsp + 0x30]
movsxd rdx, dword [rbx + 0x90]
add r8d, r14d
cmp dword [rbx + 0x94], edx
jg 0x14006962b
mov r9d, r13d
mov dword [rsp + 0x20], esi
mov edx, 0x34
mov rcx, rbx
call fcn.140048950
mov edx, eax
jmp 0x140069659
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x34
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r9
mov r9d, 0xfffffffe
mov r8, rbp
mov rcx, rbx
call fcn.140049950
test esi, esi
je 0x140069680
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x140069680
mov dword [rdi + rax*4 + 0xe8], esi
inc byte [rdi + 0x1f]
inc r14d
add r15, 0x20
sub qword [rsp + 0x50], 1
jne 0x140069521
mov ebp, dword [rsp + 0x44]
mov r15d, dword [rsp + 0x34]
movsxd rcx, dword [rbx + 0x90]
xor esi, esi
cmp dword [rbx + 0x94], ecx
jg 0x1400696c4
mov r9d, r15d
mov dword [rsp + 0x20], esi
xor r8d, r8d
lea edx, [rsi + 9]
mov rcx, rbx
call fcn.140048950
jmp 0x1400696ee
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
cmp ebp, 1
jle 0x1400697d4
mov rcx, qword [rbx + 0x18]
not r13d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140069713
mov r8d, r13d
mov rdx, rbx
call fcn.140049110
jmp 0x140069723
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r13d
mov dword [rcx + rdx*4], eax
mov edx, dword [rsp + 0x48]
movsxd rcx, dword [rbx + 0x90]
inc edx
cmp dword [rbx + 0x94], ecx
jg 0x140069751
mov r9d, edx
mov dword [rsp + 0x20], esi
mov edx, 0x27
mov r8d, r12d
mov rcx, rbx
call fcn.140048950
jmp 0x14006977e
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x27
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1400697a7
mov r9d, dword [rsp + 0x3c]
xor r8d, r8d
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r8 + 9]
call fcn.140048950
jmp 0x1400697d4
mov edx, dword [rsp + 0x3c]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rbx]
mov edx, dword [rbx + 0x90]
cmp byte [rax + 0x67], 0
je 0x1400697ec
lea rax, [0x140120770]
jmp 0x140069800
movsxd rax, dword [rsp + 0x38]
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov ecx, dword [rsp + 0x30]
cmp ecx, dword [rsp + 0x4c]
je 0x140069823
test ecx, ecx
je 0x140069823
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x140069823
mov dword [rdi + rax*4 + 0xe8], ecx
inc byte [rdi + 0x1f]
mov rdx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x98]
mov rbp, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
test rdx, rdx
je 0x14006984d
mov rcx, qword [rdi]
call fcn.14001a550
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x140069862
mov rcx, qword [rdi]
mov rdx, rax
call fcn.14001a550
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1400f45c0
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
ret