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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x8f8
mov rdi, r9
mov esi, r8d
mov ebp, edx
mov r14d, ecx
mov r15, qword [rsp + 0x960]
mov rcx, qword [r9 + 0x720]
mov rax, qword [r9]
test rcx, rcx
mov qword [rsp + 0x58], r9
je 0x140020b1b
dec rcx
cmp rcx, rax
setb al
mov byte [rdi + 0x730], al
jmp 0x140020b25
shl rax, 0x35
je 0x140020c7d
test esi, esi
jle 0x140020ba3
lea rbx, [rdi + 0x608]
mov rcx, qword [rdi + 0x6d0]
mov rdx, qword [rdi + 0x6c8]
sub rcx, rdx
shr rcx, 4
mov r8d, dword [rdi + 0x6b4]
not r8d
add r8d, ecx
mov rax, qword [rdi + 0x6c0]
xor r9d, r9d
nop dword [rax]
cmp ecx, 2
jl 0x140020bc3
add ecx, 0xfffffffe
cmp ecx, r8d
jl 0x140020bc3
mov r10d, ecx
shl r10, 4
xor r11d, r11d
cmp qword [rdx + r10 + 8], rax
sete r11b
add r9d, r11d
cmp r9d, 2
jne 0x140020b60
xor r15d, r15d
mov eax, r15d
add rsp, 0x8f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov ecx, r14d
mov edx, ebp
mov r8, rdi
add rsp, 0x8f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1400227b0
cmp dword [r15], 0x3f
jl 0x140020be4
mov rcx, rdi
add rsp, 0x8f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.140004eb0
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x48], r14d
mov dword [rsp + 0x28], ebp
mov qword [rsp + 0x40], rsi
mov rdx, qword [0x140145058]
mov rcx, qword [0x140145050]
sub rdx, rcx
sar rdx, 4
mulx r14, r14, rax
shl r14, 4
cmp qword [rcx + r14 + 8], rax
setne al
mov qword [rsp + 0x30], r15
movzx r13d, word [r15 + 0x24]
mov ebp, r13d
shr ebp, 0xa
shr r13d, 4
and r13b, 0x3f
cmp r13b, bpl
setne r12b
or r12b, al
jne 0x140020cfe
movzx eax, byte [rcx + r14 + 4]
cmp eax, dword [rsp + 0x40]
jl 0x140020cfe
movzx eax, byte [rcx + r14 + 5]
cmp eax, 3
je 0x140020cda
cmp eax, 2
je 0x140020ced
cmp eax, 1
jne 0x140020cfe
movsx r15d, word [rcx + r14 + 2]
jmp 0x140020b8c
call fcn.1400286b0
mov rbx, rax
call fcn.140028694
mov rcx, rax
cmp rbx, 0x989680
jne 0x140021954
imul rax, rcx, 0x64
movabs rcx, 0x431bde82d7b634db
imul rcx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x12
add rdx, rax
vcvtsi2sd xmm0, xmm0, rdx
vmovsd xmm1, qword [rdi + 0x6e8]
vaddsd xmm1, xmm1, qword [rdi + 0x728]
vucomisd xmm0, xmm1
seta al
jmp 0x140020b13
movsx r15d, word [rcx + r14 + 2]
cmp r15d, dword [rsp + 0x48]
jle 0x140020b8c
jmp 0x140020cfe
movsx r15d, word [rcx + r14 + 2]
cmp r15d, dword [rsp + 0x28]
jge 0x140020b8c
mov qword [rsp + 0x68], rcx
movzx ebx, byte [rdi + 0x6b0]
xor eax, eax
test rbx, rbx
setne al
mov rcx, rbx
xor rcx, 1
lea rax, [rax + rax*2]
shl rax, 4
mov r15, qword [rsp + 0x50]
tzcnt rax, qword [r15 + rax + 0x28]
mov rdx, rbx
shl rdx, 9
lea r8, [0x1400600b0]
add r8, rdx
lea rcx, [rcx + rcx*2]
shl rcx, 4
mov rdx, qword [r15 + rcx]
test qword [r8 + rax*8], rdx
jne 0x140020dca
lea rdx, [0x1400604b0]
mov r8, qword [r15 + rcx + 8]
test qword [rdx + rax*8], r8
jne 0x140020dca
mov rdx, qword [rdi + 0x6a8]
mov r8, rax
shl r8, 5
lea r9, [0x140d49498]
mov r10, qword [r8 + r9 + 0x10]
pext r11, rdx, qword [r8 + r9 + 8]
mov r9, qword [r15 + rcx + 0x20]
mov rsi, qword [r15 + rcx + 0x10]
or rsi, r9
test qword [r10 + r11*8], rsi
jne 0x140020dca
lea r10, [0x140d49c98]
mov r11, qword [r8 + r10 + 0x10]
pext rdx, rdx, qword [r8 + r10 + 8]
or r9, qword [r15 + rcx + 0x18]
test qword [r11 + rdx*8], r9
jne 0x140020dca
lea rdx, [0x1400606b0]
mov rcx, qword [r15 + rcx + 0x28]
test qword [rdx + rax*8], rcx
je 0x140021915
mov rax, qword [rsp + 0x40]
inc eax
mov qword [rsp + 0x40], rax
mov al, 1
mov dword [rsp + 0x3c], eax
mov rsi, qword [rsp + 0x30]
mov dword [rsi + 8], 0
xor eax, eax
xor r8d, r8d
mov r15d, eax
test r12b, r12b
mov rsi, qword [rsp + 0x68]
jne 0x140020e00
movsx r15d, word [rsi + r14 + 2]
cmp r13b, bpl
setne cl
or cl, byte [rsp + 0x3c]
je 0x140020e18
mov dword [rsp + 0x64], r8d
mov r13, qword [rsp + 0x40]
jmp 0x140020e61
mov r13, qword [rsp + 0x40]
cmp r13d, 7
jg 0x140020e43
cmp r15d, dword [rsp + 0x28]
jl 0x140020e43
movzx ecx, r8b
mov edx, r13d
sub edx, ecx
imul ecx, edx, 0xffffffba
add ecx, r15d
cmp ecx, dword [rsp + 0x28]
jge 0x140020b8c
cmp r13d, 3
mov dword [rsp + 0x64], r8d
jl 0x140020e61
mov rcx, qword [rsp + 0x30]
cmp word [rcx - 0x220], 0xfff0
jne 0x1400217ba
lea rcx, [rsp + 0xe8]
mov r8d, 0x404
xor edx, edx
vzeroupper
call fcn.140050f40
lea rdx, [rsp + 0xe8]
test bl, bl
je 0x140020e91
mov rcx, qword [rsp + 0x50]
call fcn.1400103b0
jmp 0x140020e9b
mov rcx, qword [rsp + 0x50]
call fcn.14000f720
lea rax, [rsi + r14]
mov qword [rsp + 0xc0], rax
movsxd r15, dword [rsp + 0xe8]
mov r12d, 0
test r15, r15
je 0x140020feb
mov rax, qword [rsp + 0xc0]
movzx ebp, word [rax]
lea r12, [rsp + r15*8]
add r12, 0xec
lea rax, [rdi + 8]
mov qword [rsp + 0x70], rax
lea r13, [rsp + 0xec]
jmp 0x140020f44
imul eax, edi, 0xab
shr eax, 9
and eax, 0xfffffffe
lea eax, [rax + rax*2]
sub dil, al
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
call fcn.14001b9f0
movzx ecx, dil
add ecx, ecx
lea ecx, [rcx + rcx*4]
movzx ecx, cl
movzx edx, sil
sub ecx, edx
lea r8d, [rcx + 0x186a0]
test al, al
cmove r8d, ecx
mov rdi, qword [rsp + 0x58]
mov dword [r13 + 4], r8d
add r13, 8
cmp r13, r12
je 0x140020fde
movzx edx, word [r13]
mov rax, rdx
shr rax, 0xa
movzx eax, byte [rdi + rax + 0x668]
mov sil, 6
cmp rax, 0xc
je 0x140020f75
imul ecx, eax, 0xab
shr ecx, 9
and ecx, 0xfffffffe
lea ecx, [rcx + rcx*2]
mov esi, eax
sub sil, cl
mov r8d, 0x493e0
cmp dx, bp
je 0x140020f33
mov ecx, edx
shr ecx, 4
and ecx, 0x3f
movzx edi, byte [rdi + rcx + 0x668]
cmp dil, 0xc
jne 0x140020ef0
mov r8d, 0x13880
mov r9, qword [rsp + 0x30]
cmp dx, word [r9 + 0x14]
mov rdi, qword [rsp + 0x58]
je 0x140020f33
mov r8d, 0x11170
mov r9, qword [rsp + 0x30]
cmp dx, word [r9 + 0x1c]
je 0x140020f33
lea rax, [rax + rax*2]
mov rdx, qword [rsp + 0x70]
lea rax, [rdx + rax*8]
movsx r8d, word [rax + rcx*2]
jmp 0x140020f33
mov r12d, r15d
mov r13, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
lea rcx, [rsp + 0x4f0]
mov r8d, 0x404
xor edx, edx
call fcn.140050f40
mov word [rsp + 0x80], 0
mov dword [rsp + 0x84], 0
test r12d, r12d
jle 0x140021706
movzx eax, bl
lea rax, [rax + rax*2]
shl rax, 4
mov rcx, qword [rsp + 0x50]
vmovdqu xmm0, xmmword [rcx + rax + 8]
vpor xmm0, xmm0, xmmword [rcx + rax + 0x18]
vpshufd xmm1, xmm0, 0xee
vpor xmm0, xmm0, xmm1
vmovq qword [rsp + 0xd8], xmm0
lea rbp, [rsi + r14 + 5]
lea eax, [r13 - 3]
mov dword [rsp + 0x94], eax
mov eax, r13d
shr eax, 1
mov dword [rsp + 0x90], eax
lea eax, [r13*4 + 4]
mov dword [rsp + 0xa4], eax
mov r15, qword [rsp + 0x30]
lea rax, [r15 + 0x22c]
mov qword [rsp + 0xc8], rax
mov eax, dword [rsp + 0x3c]
xor al, 1
mov byte [rsp + 0x2f], al
cmp r13d, 0x3f
mov eax, 0x3f
cmovb eax, r13d
shl rax, 8
lea rcx, [0x140145068]
add rcx, rax
mov qword [rsp + 0xb8], rcx
imul eax, r13d, 0xffffff9c
mov dword [rsp + 0x98], eax
movzx eax, byte [rsp + 0x64]
mov ecx, 2
sub ecx, eax
mov dword [rsp + 0xa0], ecx
lea eax, [r13 - 1]
mov dword [rsp + 0x9c], eax
xor esi, esi
mov dword [rsp + 0x70], 0xffff82ff
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0xb0], rax
xor eax, eax
mov qword [rsp + 0xa8], rax
xor r14d, r14d
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x4c], eax
xor eax, eax
mov qword [rsp + 0x88], rax
xor ebx, ebx
mov qword [rsp + 0xd0], rbp
jmp 0x140021154
mov ebx, r8d
mov r13, qword [rsp + 0x40]
mov r15, qword [rsp + 0x30]
inc r14
movsxd r12, dword [rsp + 0xe8]
dec rsi
cmp r14, r12
jge 0x140021685
mov r8, r14
not r8
movsxd rcx, r12d
mov rdx, rcx
sub rdx, r14
add r8, rcx
mov r9d, 0x80000000
mov rax, r14
mov r10d, 0
cmp r8, 7
jb 0x140021295
lea r8, [rsi + rcx]
and r8, 0xfffffffffffffff8
xor r10d, r10d
mov rax, r14
jmp 0x1400211a4
mov r10d, r11d
mov r9d, edi
add rax, 8
add r8, 0xfffffffffffffff8
je 0x140021290
mov edi, dword [rsp + rax*8 + 0xf0]
mov r11d, eax
cmp edi, r9d
jg 0x1400211b9
mov r11d, r10d
mov edi, r9d
mov r9d, dword [rsp + rax*8 + 0xf8]
cmp r9d, edi
jg 0x1400211d0
mov r9d, edi
jmp 0x1400211d4
lea r11d, [rax + 1]
mov r10d, dword [rsp + rax*8 + 0x100]
cmp r10d, r9d
jg 0x1400211f0
mov r10d, r9d
jmp 0x1400211f4
lea r11d, [rax + 2]
mov r9d, dword [rsp + rax*8 + 0x108]
cmp r9d, r10d
jg 0x140021210
mov r9d, r10d
jmp 0x140021214
lea r11d, [rax + 3]
mov r10d, dword [rsp + rax*8 + 0x110]
cmp r10d, r9d
jg 0x140021230
mov r10d, r9d
jmp 0x140021234
lea r11d, [rax + 4]
mov r9d, dword [rsp + rax*8 + 0x118]
cmp r9d, r10d
jg 0x140021250
mov r9d, r10d
jmp 0x140021254
lea r11d, [rax + 5]
mov edi, dword [rsp + rax*8 + 0x120]
cmp edi, r9d
jg 0x140021270
mov edi, r9d
jmp 0x140021274
lea r11d, [rax + 6]
mov r9d, dword [rsp + rax*8 + 0x128]
cmp r9d, edi
jle 0x140021190
lea r10d, [rax + 7]
jmp 0x140021196
mov rdi, qword [rsp + 0x58]
test dl, 7
je 0x1400212ca
add cl, sil
movzx ecx, cl
and ecx, 7
nop word cs:[rax + rax]
mov edx, dword [rsp + rax*8 + 0xf0]
cmp edx, r9d
cmovg r10d, eax
cmovg r9d, edx
inc rax
dec rcx
jne 0x1400212b0
movsxd rax, r10d
mov rcx, qword [rsp + r14*8 + 0xec]
mov rdx, qword [rsp + rax*8 + 0xec]
mov qword [rsp + r14*8 + 0xec], rdx
mov qword [rsp + rax*8 + 0xec], rcx
mov ecx, dword [rsp + r14*8 + 0xec]
mov eax, ecx
shr eax, 4
and eax, 0x3f
cmp byte [rdi + rax + 0x668], 0xc
setne r12b
mov eax, ecx
not eax
test al, 3
sete dl
movzx eax, word [r15 + 0x24]
cmp cx, ax
je 0x14002113d
lea r8, [rsp + 0xec]
lea r8, [r8 + r14*8]
mov qword [rsp + 0x68], r8
or r12b, dl
cmp r13d, 8
jl 0x1400213f0
mov rdx, qword [rsp + 0xc0]
cmp cx, word [rdx]
jne 0x1400213f0
cmp byte [rbp], 2
jne 0x1400213f0
movsx r15d, word [rbp - 3]
mov ecx, r15d
neg ecx
cmovs ecx, r15d
cmp ecx, 0x752f
ja 0x1400213e5
movzx ecx, byte [rbp - 1]
cmp dword [rsp + 0x94], ecx
ja 0x1400213e5
movzx eax, ax
mov ecx, eax
shr ecx, 0xa
shr eax, 4
and al, 0x3f
cmp al, cl
jne 0x1400213e5
sub r15d, r13d
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
mov rbp, qword [rsp + 0x30]
mov qword [rbp + 0x24], rax
lea ecx, [r15 - 1]
mov qword [rsp + 0x20], rbp
mov edx, r15d
mov r8d, dword [rsp + 0x90]
mov r9, rdi
call fcn.140020ad0
mov qword [rbp + 0x24], 0
cmp eax, r15d
mov r15, rbp
mov eax, 1
mov rcx, qword [rsp + 0x88]
cmovl ecx, eax
mov qword [rsp + 0x88], rcx
jmp 0x1400213f0
mov r15, qword [rsp + 0x30]
nop word [rax + rax]
cmp qword [rsp + 0xd8], 0
sete al
cmp dword [rsp + 0x70], 0xffff8ad1
setl cl
or cl, al
or cl, byte [rsp + 0x3c]
or cl, r12b
mov ebp, dword [rsp + 0x4f0]
jne 0x14002142c
cmp r13d, 7
jg 0x14002142c
cmp ebp, dword [rsp + 0xa4]
jge 0x140021685
mov qword [rsp + 0xe0], rsi
mov rax, qword [rsp + 0x88]
mov rsi, r13
add eax, r13d
mov dword [rsp + 0x7c], eax
mov rcx, rdi
mov r13, rbx
mov rbx, qword [rsp + 0x68]
mov rdx, rbx
call fcn.14001bdb0
mov eax, dword [r15]
inc eax
mov dword [r15 + 0x22c], eax
mov rdx, qword [rbx]
mov qword [r15 + 0xc], rdx
inc qword [rdi]
lea ecx, [r13 + 1]
mov byte [rsp + 0x3b], r12b
test r12b, r12b
mov dword [rsp + 0x64], ecx
je 0x1400214d0
cmp r13d, 2
setge al
and al, byte [rsp + 0x2f]
cmp al, 1
jne 0x140021590
mov r15, rsi
cmp r15d, 2
jle 0x140021590
cmp ecx, 0x3f
mov eax, 0x3f
cmovb eax, ecx
mov rcx, qword [rsp + 0xb8]
mov ebx, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x50]
mov r8d, dword [rsp + 0x98]
call fcn.14001b9f0
movzx eax, al
sub ebx, eax
jmp 0x14002151a
movsxd rax, ebp
inc ebp
mov dword [rsp + 0x4f0], ebp
mov qword [rsp + rax*8 + 0x4f4], rdx
cmp r13d, 2
setge al
and al, byte [rsp + 0x2f]
cmp al, 1
jne 0x140021590
mov r15, rsi
cmp r15d, 3
jl 0x140021590
cmp ecx, 0x3f
mov eax, 0x3f
cmovb eax, ecx
mov rcx, qword [rsp + 0xb8]
mov ebx, dword [rcx + rax*4]
mov esi, dword [rsp + 0x7c]
add ebx, dword [rsp + 0xa0]
mov eax, ebx
sar eax, 0x1f
andn edi, eax, ebx
cmp r15d, ebx
cmovle edi, dword [rsp + 0x9c]
mov r8d, esi
sub r8d, edi
mov r15d, dword [rsp + 0x4c]
mov ebp, r15d
neg ebp
mov ebx, r15d
not ebx
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x20], rax
mov ecx, ebx
mov edx, ebp
mov r9, qword [rsp + 0x58]
call fcn.140020ad0
mov r13d, eax
neg r13d
cmp r15d, r13d
jge 0x14002167b
test edi, edi
mov rdi, qword [rsp + 0x58]
jne 0x14002159e
jmp 0x1400215c2
mov ebp, dword [rsp + 0x4c]
mov ebx, ebp
not ebx
neg ebp
mov esi, dword [rsp + 0x7c]
dec esi
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x20], rax
mov ecx, ebx
mov edx, ebp
mov r8d, esi
mov r9, rdi
call fcn.140020ad0
mov r13d, eax
neg r13d
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x68]
call fcn.140013cd0
dec dword [rdi + 0x100734]
cmp byte [rdi + 0x730], 0
mov rbp, qword [rsp + 0xd0]
mov r8d, dword [rsp + 0x64]
movzx eax, byte [rsp + 0x3b]
mov rsi, qword [rsp + 0xe0]
je 0x140021618
xor r15d, r15d
cmp byte [rdi + 0x6e0], 0
jne 0x140020b8c
cmp qword [rdi + 0x720], 0
jne 0x140020b8c
cmp r13d, dword [rsp + 0x70]
jle 0x140021130
cmp r13d, dword [rsp + 0x4c]
mov r15, qword [rsp + 0x30]
jle 0x140021669
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rcx]
cmp r13d, dword [rsp + 0x28]
jge 0x1400218de
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xa8], rdx
mov ebx, r8d
mov dword [rsp + 0x70], r13d
mov dword [rsp + 0x4c], r13d
mov r13, qword [rsp + 0x40]
jmp 0x14002113d
mov ebx, r8d
mov dword [rsp + 0x70], r13d
mov r13, qword [rsp + 0x40]
jmp 0x14002113d
mov rdi, qword [rsp + 0x58]
jmp 0x1400215c2
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x80], rax
mov rdx, qword [rsp + 0xa8]
mov r13d, dword [rsp + 0x4c]
mov r15d, dword [rsp + 0x70]
mov r8d, ebx
mov esi, dword [rsp + 0x28]
mov eax, dword [rsp + 0x48]
cmp r13d, eax
sete al
je 0x140021717
cmp r15d, esi
mov r13, qword [rsp + 0x40]
jl 0x14002171c
mov ecx, edx
shr ecx, 4
and ecx, 0x3f
xor eax, eax
cmp byte [rdi + rcx + 0x668], 0xc
jne 0x14002171c
and edx, 3
cmp dx, 3
je 0x14002171c
lea rdx, [rsp + 0x4f0]
mov ebx, r8d
lea r8, [rsp + 0x80]
mov rcx, rdi
mov r9d, r13d
call fcn.140022de0
mov r8d, ebx
xor eax, eax
jmp 0x14002171c
mov r15d, 0xffff82ff
mov al, 1
mov esi, dword [rsp + 0x28]
xor r8d, r8d
jmp 0x14002171c
mov r13, qword [rsp + 0x40]
test r8d, r8d
sete cl
cmove r15d, r8d
mov edx, dword [rsp + 0x3c]
and dl, cl
cmp dl, 1
jne 0x14002173f
mov r15d, 0xffff8ad0
mov rcx, qword [rsp + 0x30]
add r15d, dword [rcx]
mov rcx, qword [rsp + 0x30]
movzx ecx, word [rcx + 0x24]
mov edx, ecx
shr edx, 0xa
shr ecx, 4
and cl, 0x3f
cmp cl, dl
jne 0x140020b8c
add al, al
or al, 1
cmp r15d, esi
movzx eax, al
mov ecx, 2
cmovl ecx, eax
mov rax, qword [rdi + 0x6c0]
mov rdx, qword [0x140145058]
mov r8, qword [0x140145050]
sub rdx, r8
sar rdx, 4
mulx rdx, rdx, rax
shl rdx, 4
movzx r9d, word [rsp + 0x80]
mov word [r8 + rdx], r9w
mov word [r8 + rdx + 2], r15w
mov byte [r8 + rdx + 4], r13b
mov byte [r8 + rdx + 5], cl
mov qword [r8 + rdx + 8], rax
jmp 0x140020b8c
lea rcx, [rbx + rbx*2]
shl rcx, 4
mov rdx, qword [rsp + 0x50]
vmovdqu ymm0, ymmword [rdx + rcx + 8]
vptest ymm0, ymm0
je 0x140020e61
cmp eax, dword [rsp + 0x28]
jl 0x140020e61
test r12b, r12b
jne 0x1400217fa
cmp byte [rsi + r14 + 5], 3
jne 0x1400217fa
cmp r15d, dword [rsp + 0x28]
jl 0x140020e61
mov eax, r13d
mov esi, 0xaaaaaaab
imul rsi, rax
shr rsi, 0x21
mov ebx, dword [rsp + 0x28]
sub r15d, ebx
movsxd rax, r15d
imul rcx, rax, 0xffffffffb60b60b7
shr rcx, 0x20
add eax, ecx
mov ecx, eax
shr ecx, 0x1f
sar eax, 7
add eax, ecx
cmp eax, 3
mov edi, 3
cmovl edi, eax
mov r15, qword [rsp + 0x50]
mov rcx, r15
vzeroupper
call fcn.140022c90
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 0xc], 0xfff0
mov eax, dword [rcx]
inc eax
lea r9, [rcx + 0x22c]
mov dword [rcx + 0x22c], eax
add edi, esi
mov rsi, qword [rsp + 0x68]
neg edi
lea r8d, [rdi + r13]
add r8d, 0xfffffffd
mov rdi, qword [rsp + 0x58]
mov ecx, ebx
neg ecx
mov edx, 1
sub edx, ebx
mov qword [rsp + 0x20], r9
mov r9, rdi
call fcn.140020ad0
mov ebx, eax
mov rcx, r15
call fcn.140022d90
cmp byte [rdi + 0x730], 0
je 0x1400218c3
xor r15d, r15d
cmp byte [rdi + 0x6e0], 0
jne 0x140020b8c
cmp qword [rdi + 0x720], 0
jne 0x140020b8c
mov r15d, ebx
neg r15d
mov eax, dword [rsp + 0x28]
cmp r15d, eax
jge 0x140021906
movzx ebx, byte [rdi + 0x6b0]
jmp 0x140020e11
mov qword [rsp + 0x80], rdx
test al, al
je 0x1400218f2
mov r15d, r13d
jmp 0x1400216aa
mov rax, qword [r15 + 0x14]
mov qword [r15 + 0x1c], rax
mov qword [r15 + 0x14], rdx
mov r15d, r13d
jmp 0x1400216aa
cmp ebx, 0xffff8ad0
cmovl r15d, eax
jmp 0x140020b8c
cmp r13b, bpl
mov rsi, qword [rsp + 0x30]
je 0x14002192c
mov dword [rsp + 0x3c], 0
jmp 0x140020de1
mov eax, dword [rsi + 8]
cmp eax, dword [rsi - 0x450]
setg r15b
mov rcx, rdi
call fcn.140004eb0
mov r8d, r15d
mov dword [rsi + 8], eax
mov dword [rsp + 0x3c], 0
jmp 0x140020ded
cmp rbx, 0x16e3600
jne 0x1400219b5
movabs r8, 0xb2f4fc0794908cf3
mov rax, rcx
imul r8
add rdx, rcx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x18
add rdx, rax
imul r9, rdx, 0x3b9aca00
imul rax, rdx, 0x16e3600
sub rcx, rax
imul rcx, rcx, 0x3b9aca00
mov rax, rcx
imul r8
mov rax, rdx
add rax, rcx
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x18
add rax, rcx
add rax, r9
jmp 0x1400219f9
mov rax, rcx
or rax, rbx
shr rax, 0x20
je 0x1400219cb
mov rax, rcx
cqo
idiv rbx
jmp 0x1400219d1
mov eax, ecx
xor edx, edx
div ebx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
mov rdx, rbx
or rdx, rax
shr rdx, 0x20
je 0x1400219f2
cqo
idiv rbx
jmp 0x1400219f6
xor edx, edx
div ebx
add rax, rcx
mov rdi, qword [rsp + 0x58]
jmp 0x140020c9e