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

Disassembly:
sub rsp, 0x28
cmp edx, 0xf
je 0x1400279be
cmp edx, 0x14
je 0x1400279a9
cmp edx, 0x1a
je 0x1400279a9
cmp edx, 0x1d
je 0x140027994
cmp edx, 0x32
jne 0x1400279cf
cmp dword [rcx + 0x30], 1
jbe 0x140027988
cmp byte [rcx + 0x4d98], 0
jne 0x140027988
mov dl, r8b
add rsp, 0x28
jmp 0x14002decc
mov dl, r8b
add rsp, 0x28
jmp 0x14002d2e8
cmp byte [rcx + 0x4d98], 0
jne 0x1400279cf
mov dl, r8b
add rsp, 0x28
jmp 0x14002c1cc
cmp byte [rcx + 0x4d98], 0
jne 0x1400279cf
mov dl, r8b
add rsp, 0x28
jmp 0x14002bab0
cmp byte [rcx + 0x4d98], 0
jne 0x1400279cf
mov dl, r8b
call fcn.14002b910
add rsp, 0x28
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
sub rsp, 0x20
cmp byte [rcx + 0x4da8], 0
mov dil, dl
mov rbx, rcx
je 0x14002bae7
mov rax, qword [rcx + 0xc8]
mov qword [rcx + 0xc0], rax
jmp 0x14002bb21
call fcn.14002af00
mov rcx, rbx
call fcn.14002b068
test al, al
je 0x14002c1b1
test dil, dil
je 0x14002bb0a
cmp byte [rbx + 0xe88c], 0
jne 0x14002bb1a
mov rcx, rbx
call fcn.14002968c
test al, al
je 0x14002c1b1
dec qword [rbx + 0x4da0]
cmp qword [rbx + 0x4da0], 0
jl 0x14002c1a1
mov r12d, 0x10
lea rsi, [0x140000000]
lea r13d, [r12 - 1]
mov rax, qword [rbx + 0xe940]
and qword [rbx + 0xc0], rax
mov eax, dword [rbx + 0xd0]
sub eax, 0x1e
cmp dword [rbx + 8], eax
jle 0x14002bb6d
mov rcx, rbx
call fcn.14002b068
test al, al
je 0x14002c1a1
mov rcx, qword [rbx + 0xc8]
mov rdx, qword [rbx + 0xc0]
mov rax, rcx
sub rax, rdx
and rax, qword [rbx + 0xe940]
cmp rax, 0x10e
jae 0x14002bbaa
cmp rcx, rdx
je 0x14002bbaa
mov rcx, rbx
call fcn.14002b220
cmp byte [rbx + 0x4da8], 0
jne 0x14002c1b1
cmp byte [rbx + 0x98a8], 0
mov r11d, dword [rbx + 0xc]
je 0x14002bcef
movsxd rcx, dword [rbx + 8]
mov eax, dword [rbx + 0x98b0]
imul r8, rax, 0xeec
mov rax, qword [rbx + 0x18]
add r8, 0x58f4
add r8, rbx
mov edx, dword [rax + rcx]
mov ecx, r12d
sub ecx, r11d
bswap edx
shr edx, cl
mov ecx, dword [r8 + 0x84]
and edx, 0xfffe
cmp edx, dword [r8 + rcx*4 + 4]
jae 0x14002bc2a
mov eax, r12d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx ecx, byte [rdx + r8 + 0x88]
add ecx, r11d
mov eax, ecx
shr eax, 3
add dword [rbx + 8], eax
and ecx, 7
mov dword [rbx + 0xc], ecx
movzx eax, word [r8 + rdx*2 + 0x488]
jmp 0x14002bc8e
inc ecx
mov r10d, r13d
cmp ecx, r13d
jae 0x14002bc53
mov r9d, ecx
inc r9
lea r9, [r8 + r9*4]
cmp edx, dword [r9]
jb 0x14002bc50
inc ecx
add r9, 4
cmp ecx, r13d
jb 0x14002bc3e
jmp 0x14002bc53
mov r10d, ecx
lea ecx, [r11 + r10]
mov eax, ecx
and ecx, 7
shr eax, 3
add dword [rbx + 8], eax
lea eax, [r10 - 1]
mov dword [rbx + 0xc], ecx
mov ecx, r12d
sub ecx, r10d
sub edx, dword [r8 + rax*4 + 4]
mov eax, r10d
shr edx, cl
add edx, dword [r8 + rax*4 + 0x44]
cmp edx, dword [r8]
sbb eax, eax
and eax, edx
movzx eax, word [r8 + rax*2 + 0xc88]
movzx edx, ax
mov rcx, rbx
cmp edx, 0x100
jne 0x14002bcae
call fcn.14002968c
test al, al
je 0x14002c1a1
jmp 0x14002c193
call fcn.1400271b0
mov rcx, qword [rbx + 0xc0]
mov rdx, qword [rbx + 0x4b90]
mov byte [rdx + rcx], al
inc dword [rbx + 0x98b0]
inc qword [rbx + 0xc0]
mov eax, dword [rbx + 0x98b0]
cmp eax, dword [rbx + 0x98ac]
jne 0x14002bde2
and dword [rbx + 0x98b0], 0
jmp 0x14002bde2
movsxd r10, dword [rbx + 8]
mov ecx, r12d
mov rbp, qword [rbx + 0x18]
sub ecx, r11d
mov edx, dword [r10 + rbp]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x170]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0xf0]
jae 0x14002bd4e
mov eax, r12d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r8d, byte [rdx + rbx + 0x174]
add r8d, r11d
mov edi, r8d
shr edi, 3
add edi, r10d
and r8d, 7
mov dword [rbx + 8], edi
mov dword [rbx + 0xc], r8d
movzx eax, word [rbx + rdx*2 + 0x574]
jmp 0x14002bdbf
inc ecx
mov r9d, r13d
cmp ecx, r13d
jae 0x14002bd78
mov r8d, ecx
add r8, 0x3c
lea r8, [rbx + r8*4]
cmp edx, dword [r8]
jb 0x14002bd75
inc ecx
add r8, 4
cmp ecx, r13d
jb 0x14002bd63
jmp 0x14002bd78
mov r9d, ecx
lea r8d, [r11 + r9]
mov ecx, r12d
sub ecx, r9d
lea eax, [r9 - 1]
mov edi, r8d
and r8d, 7
mov dword [rbx + 0xc], r8d
shr edi, 3
add edi, r10d
mov dword [rbx + 8], edi
sub edx, dword [rbx + rax*4 + 0xf0]
mov eax, r9d
shr edx, cl
add edx, dword [rbx + rax*4 + 0x130]
cmp edx, dword [rbx + 0xec]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0xd74]
movzx edx, ax
cmp edx, 0x100
jae 0x14002bdee
mov rax, qword [rbx + 0xc0]
mov rcx, qword [rbx + 0x4b90]
mov byte [rcx + rax], dl
inc qword [rbx + 0xc0]
dec qword [rbx + 0x4da0]
jmp 0x14002c193
mov eax, 0x10d
cmp edx, eax
jbe 0x14002bfa4
lea eax, [rdx - 0x10e]
movzx r9d, byte [rax + rsi + 0x5c130]
movzx r10d, byte [rax + rsi + 0x5c150]
add r9d, 3
test r10d, r10d
je 0x14002be50
movsxd rax, edi
mov ecx, r12d
sub ecx, r8d
add r8d, r10d
mov edx, dword [rax + rbp]
mov eax, r8d
bswap edx
shr edx, cl
mov ecx, r12d
sub ecx, r10d
shr eax, 3
add eax, edi
movzx edx, dx
shr edx, cl
add r9d, edx
mov dword [rbx + 8], eax
and r8d, 7
mov dword [rbx + 0xc], r8d
movsxd rdi, dword [rbx + 8]
mov ecx, r12d
mov rsi, qword [rbx + 0x18]
sub ecx, r8d
mov edx, dword [rdi + rsi]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x105c]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0xfdc]
jae 0x14002bead
mov eax, r12d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r10d, byte [rdx + rbx + 0x1060]
add r10d, r8d
mov eax, r10d
shr eax, 3
add edi, eax
and r10d, 7
mov dword [rbx + 8], edi
mov dword [rbx + 0xc], r10d
movzx eax, word [rbx + rdx*2 + 0x1460]
jmp 0x14002bf20
inc ecx
mov r11d, r13d
cmp ecx, r13d
jae 0x14002beda
mov r10d, ecx
add r10, 0x3f7
lea r10, [rbx + r10*4]
cmp edx, dword [r10]
jb 0x14002bed7
inc ecx
add r10, 4
cmp ecx, r13d
jb 0x14002bec5
jmp 0x14002beda
mov r11d, ecx
lea r10d, [r8 + r11]
mov ecx, r12d
mov eax, r10d
sub ecx, r11d
shr eax, 3
and r10d, 7
add edi, eax
mov dword [rbx + 0xc], r10d
mov dword [rbx + 8], edi
lea eax, [r11 - 1]
sub edx, dword [rbx + rax*4 + 0xfdc]
mov eax, r11d
shr edx, cl
add edx, dword [rbx + rax*4 + 0x101c]
cmp edx, dword [rbx + 0xfd8]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0x1c60]
movzx eax, ax
lea rcx, [0x140000000]
mov r8d, dword [rcx + rax*4 + 0x5c170]
movzx r11d, byte [rax + rcx + 0x5c230]
inc r8d
test r11d, r11d
je 0x14002bf75
movsxd rax, edi
mov ecx, r12d
sub ecx, r10d
mov edx, dword [rax + rsi]
bswap edx
shr edx, cl
mov ecx, r12d
sub ecx, r11d
movzx edx, dx
shr edx, cl
lea ecx, [r10 + r11]
mov eax, ecx
add r8d, edx
shr eax, 3
add eax, edi
and ecx, 7
mov dword [rbx + 8], eax
mov dword [rbx + 0xc], ecx
cmp r8d, 0x2000
jb 0x14002bf8d
inc r9d
cmp r8d, 0x40000
jb 0x14002bf8d
inc r9d
mov edx, r9d
mov rcx, rbx
call fcn.140026d88
lea rsi, [0x140000000]
jmp 0x14002c193
jne 0x14002bfae
mov rcx, rbx
jmp 0x14002bc9c
cmp edx, 0x100
jne 0x14002bfc8
mov r8d, dword [rbx + 0xb8]
mov edx, dword [rbx + 0xb4]
jmp 0x14002c18b
cmp edx, 0x105
jae 0x14002c131
mov eax, dword [rbx + 0xb0]
mov ecx, r12d
sub eax, edx
sub ecx, r8d
and eax, 3
mov r11d, dword [rbx + rax*4 + 0xa0]
movsxd rax, edi
mov edx, dword [rax + rbp]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x2e34]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0x2db4]
jae 0x14002c03f
mov eax, r12d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r10d, byte [rdx + rbx + 0x2e38]
add r10d, r8d
mov eax, r10d
shr eax, 3
add edi, eax
and r10d, 7
mov dword [rbx + 8], edi
mov dword [rbx + 0xc], r10d
movzx eax, word [rbx + rdx*2 + 0x3238]
jmp 0x14002c0b5
inc ecx
mov esi, r13d
cmp ecx, r13d
jae 0x14002c06b
mov r9d, ecx
add r9, 0xb6d
lea r9, [rbx + r9*4]
cmp edx, dword [r9]
jb 0x14002c069
inc ecx
add r9, 4
cmp ecx, r13d
jb 0x14002c057
jmp 0x14002c06b
mov esi, ecx
lea r10d, [r8 + rsi]
mov ecx, r12d
mov eax, r10d
sub ecx, esi
shr eax, 3
and r10d, 7
add edi, eax
mov dword [rbx + 0xc], r10d
mov dword [rbx + 8], edi
lea eax, [rsi - 1]
sub edx, dword [rbx + rax*4 + 0x2db4]
mov eax, esi
lea rsi, [0x140000000]
shr edx, cl
add edx, dword [rbx + rax*4 + 0x2df4]
cmp edx, dword [rbx + 0x2db0]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0x3a38]
movzx eax, ax
movzx r9d, byte [rax + rsi + 0x5c130]
movzx r8d, byte [rax + rsi + 0x5c150]
add r9d, 2
test r8d, r8d
je 0x14002c105
movsxd rax, edi
mov ecx, r12d
sub ecx, r10d
mov edx, dword [rax + rbp]
bswap edx
shr edx, cl
mov ecx, r12d
sub ecx, r8d
movzx edx, dx
shr edx, cl
lea ecx, [r10 + r8]
mov eax, ecx
add r9d, edx
shr eax, 3
add eax, edi
and ecx, 7
mov dword [rbx + 8], eax
mov dword [rbx + 0xc], ecx
cmp r11d, 0x101
jb 0x14002c129
inc r9d
cmp r11d, 0x2000
jb 0x14002c129
inc r9d
cmp r11d, 0x40000
jb 0x14002c129
inc r9d
mov r8d, r11d
mov edx, r9d
jmp 0x14002c18b
lea eax, [rdx - 0x105]
movzx r9d, byte [rax + rsi + 0x5c260]
movzx r10d, byte [rax + rsi + 0x5c268]
inc r9d
test r10d, r10d
je 0x14002c183
movsxd rax, edi
mov ecx, r12d
sub ecx, r8d
mov edx, dword [rax + rbp]
bswap edx
shr edx, cl
mov ecx, r12d
sub ecx, r10d
movzx edx, dx
shr edx, cl
lea ecx, [r8 + r10]
mov eax, ecx
add r9d, edx
shr eax, 3
add eax, edi
and ecx, 7
mov dword [rbx + 8], eax
mov dword [rbx + 0xc], ecx
mov r8d, r9d
mov edx, 2
mov rcx, rbx
call fcn.140026d88
cmp qword [rbx + 0x4da0], 0
jge 0x14002bb41
mov rcx, rbx
call fcn.140029480
mov rcx, rbx
call fcn.14002b220
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r13
pop r12
pop rdi
ret
mov qword [rsp + 0x18], rbx
mov byte [rsp + 0x10], dl
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
xor r12d, r12d
lea rsi, [0x140000000]
cmp dword [0x140072184], r12d
mov dil, dl
mov rbx, rcx
mov r13d, 1
jne 0x14002c27e
mov r15d, r12d
lea r14, [0x14005c2b0]
mov esi, r12d
lea rbx, [0x140072280]
mov ebp, r12d
mov edi, r12d
cmp dword [r14], r12d
jle 0x14002c25e
mov r12d, dword [r14]
mov ecx, esi
shl r13d, cl
mov r8d, r12d
lea rcx, [rdi + rbx]
mov dl, sil
call fcn.1400329c0
lea rax, [0x140000000]
mov dword [rax + rdi*4 + 0x72180], r15d
inc rdi
add r15d, r13d
sub r12, 1
jne 0x14002c245
lea r13d, [r12 + 1]
add ebp, r13d
add r14, 4
add esi, r13d
cmp ebp, 0x13
jb 0x14002c222
mov rbx, qword [rsp + 0x60]
lea rsi, [0x140000000]
mov dil, byte [rsp + 0x68]
mov byte [rbx + 0x4db8], r13b
cmp byte [rbx + 0x4da8], r12b
jne 0x14002c2c7
mov dl, dil
mov rcx, rbx
call fcn.14002af00
mov rcx, rbx
call fcn.14002afd8
test al, al
je 0x14002d2d3
test dil, dil
je 0x14002c2b7
cmp byte [rbx + 0xe88d], r12b
jne 0x14002c2c7
mov rcx, rbx
call fcn.140029adc
test al, al
je 0x14002d2d3
mov r15d, dword [rsp + 0x60]
mov r14d, 0x10
mov rax, qword [rbx + 0xe940]
and qword [rbx + 0xc0], rax
mov eax, dword [rbx + 0xd4]
cmp dword [rbx + 8], eax
jle 0x14002c2fb
mov rcx, rbx
call fcn.14002afd8
test al, al
je 0x14002d2cb
mov rcx, qword [rbx + 0xc8]
mov rdx, qword [rbx + 0xc0]
mov rax, rcx
sub rax, rdx
and rax, qword [rbx + 0xe940]
cmp rax, 0x104
ja 0x14002c34c
cmp rcx, rdx
je 0x14002c34c
mov rcx, rbx
call fcn.14002b2ac
mov rax, qword [rbx + 0x4da0]
cmp qword [rbx + 0x4db0], rax
jg 0x14002d2d3
cmp byte [rbx + 0x4da8], r12b
jne 0x14002d2b3
cmp dword [rbx + 0xe888], r13d
jne 0x14002c715
lea rdi, [rbx + 0x9a30]
mov rcx, rdi
call fcn.1400274dc
mov esi, eax
cmp eax, 0xffffffff
je 0x14002d2bc
cmp eax, dword [rbx + 0xe6f0]
jne 0x14002c6f7
mov rcx, rdi
call fcn.1400274dc
cmp eax, 0xffffffff
je 0x14002d2bc
test eax, eax
jne 0x14002c3b0
mov rcx, rbx
call fcn.140029adc
test al, al
je 0x14002d2cb
lea rsi, [0x140000000]
jmp 0x14002c2d2
cmp eax, 2
je 0x14002d2cb
cmp eax, 3
jne 0x14002c3c8
mov rcx, rbx
call fcn.14002a440
jmp 0x14002c39c
cmp eax, 4
jne 0x14002c5e3
mov esi, r12d
mov r14b, r12b
mov ebp, r12d
test r14b, r14b
jne 0x14002d2cb
mov rcx, rdi
call fcn.1400274dc
cmp eax, 0xffffffff
jne 0x14002c404
mov rcx, rdi
call fcn.140026c88
mov dword [rbx + 0xe888], r12d
mov r14b, r13b
jmp 0x14002c411
movzx eax, al
cmp ebp, 3
je 0x14002c424
shl esi, 8
add esi, eax
add ebp, r13d
cmp ebp, 4
jl 0x14002c3da
test r14b, r14b
jne 0x14002d2cb
jmp 0x14002c427
mov r15d, eax
mov r9, qword [rbx + 0xc0]
lea edx, [r15 + 0x20]
add esi, 2
mov r8, r9
mov eax, esi
sub r8, rax
mov rax, qword [rbx + 0xe938]
add rax, 0xffffffffffffeffc
cmp r8, rax
jae 0x14002c58e
cmp r9, rax
jae 0x14002c58e
mov rax, qword [rbx + 0x4b90]
lea rcx, [rax + r8]
lea r8, [rax + r9]
mov eax, edx
add rax, r9
mov qword [rbx + 0xc0], rax
cmp edx, 8
jb 0x14002c4e5
mov r9d, edx
shr r9, 3
cmp esi, edx
jae 0x14002c4cf
mov al, byte [rcx]
add edx, 0xfffffff8
mov byte [r8], al
mov al, byte [rcx + 1]
mov byte [r8 + 1], al
mov al, byte [rcx + 2]
mov byte [r8 + 2], al
mov al, byte [rcx + 3]
mov byte [r8 + 3], al
mov al, byte [rcx + 4]
mov byte [r8 + 4], al
mov al, byte [rcx + 5]
mov byte [r8 + 5], al
mov al, byte [rcx + 6]
mov byte [r8 + 6], al
mov al, byte [rcx + 7]
add rcx, 8
mov byte [r8 + 7], al
add r8, 8
sub r9, r13
jne 0x14002c487
jmp 0x14002c4e5
mov rax, qword [rcx]
add edx, 0xfffffff8
mov qword [r8], rax
add rcx, 8
add r8, 8
sub r9, r13
jne 0x14002c4cf
mov r14d, 0x10
lea rsi, [0x140000000]
test edx, edx
je 0x14002c2d2
mov al, byte [rcx]
lea rsi, [0x140000000]
mov byte [r8], al
cmp edx, r13d
jbe 0x14002c2d2
mov al, byte [rcx + 1]
lea rsi, [0x140000000]
mov byte [r8 + 1], al
cmp edx, 2
jbe 0x14002c2d2
mov al, byte [rcx + 2]
lea rsi, [0x140000000]
mov byte [r8 + 2], al
cmp edx, 3
jbe 0x14002c2d2
mov al, byte [rcx + 3]
lea rsi, [0x140000000]
mov byte [r8 + 3], al
cmp edx, 4
jbe 0x14002c2d2
mov al, byte [rcx + 4]
lea rsi, [0x140000000]
mov byte [r8 + 4], al
cmp edx, 5
jbe 0x14002c2d2
mov al, byte [rcx + 5]
lea rsi, [0x140000000]
mov byte [r8 + 5], al
cmp edx, 6
jbe 0x14002c2d2
mov al, byte [rcx + 6]
mov byte [r8 + 6], al
jmp 0x14002c3a4
lea rsi, [0x140000000]
mov r14d, 0x10
test edx, edx
je 0x14002c2d2
mov rax, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
and rax, r8
add r8, r13
mov al, byte [rax + rcx]
mov byte [rcx + r9], al
mov r9, qword [rbx + 0xc0]
mov rax, qword [rbx + 0xe940]
add r9, r13
and r9, rax
mov qword [rbx + 0xc0], r9
add edx, 0xffffffff
jne 0x14002c5aa
jmp 0x14002c3a4
cmp eax, 5
jne 0x14002c6f7
mov rcx, rdi
call fcn.1400274dc
cmp eax, 0xffffffff
je 0x14002d2bc
mov r9, qword [rbx + 0xc0]
lea edx, [rax + 4]
mov rax, qword [rbx + 0xe938]
add rax, 0xffffffffffffeffc
lea r8, [r9 - 1]
cmp r8, rax
jae 0x14002c6a5
cmp r9, rax
jae 0x14002c6a5
mov rax, qword [rbx + 0x4b90]
lea rcx, [rax + r8]
lea r8, [rax + r9]
mov eax, edx
add rax, r9
mov qword [rbx + 0xc0], rax
cmp edx, r13d
jbe 0x14002c4eb
cmp edx, 8
jb 0x14002c4fa
mov r9d, edx
shr r9, 3
mov al, byte [rcx]
add edx, 0xfffffff8
mov byte [r8], al
mov al, byte [rcx + 1]
mov byte [r8 + 1], al
mov al, byte [rcx + 2]
mov byte [r8 + 2], al
mov al, byte [rcx + 3]
mov byte [r8 + 3], al
mov al, byte [rcx + 4]
mov byte [r8 + 4], al
mov al, byte [rcx + 5]
mov byte [r8 + 5], al
mov al, byte [rcx + 6]
mov byte [r8 + 6], al
mov al, byte [rcx + 7]
add rcx, 8
mov byte [r8 + 7], al
add r8, 8
sub r9, r13
jne 0x14002c65a
jmp 0x14002c4eb
lea rsi, [0x140000000]
test edx, edx
je 0x14002c2d2
mov r10, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
mov rax, r8
and rax, r10
add r8, r13
mov al, byte [rax + rcx]
mov byte [rcx + r9], al
mov r9, qword [rbx + 0xc0]
mov r10, qword [rbx + 0xe940]
add r9, r13
and r9, r10
mov qword [rbx + 0xc0], r9
add edx, 0xffffffff
jne 0x14002c6bb
jmp 0x14002c3a4
mov rax, qword [rbx + 0xc0]
mov rcx, qword [rbx + 0x4b90]
mov byte [rcx + rax], sil
add qword [rbx + 0xc0], r13
jmp 0x14002c3a4
movsxd r10, dword [rbx + 8]
mov ecx, r14d
mov rdi, qword [rbx + 0x18]
mov r11d, dword [rbx + 0xc]
sub ecx, r11d
mov edx, dword [r10 + rdi]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x170]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0xf0]
jae 0x14002c77a
mov eax, r14d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r8d, byte [rdx + rbx + 0x174]
add r8d, r11d
mov r11d, r8d
shr r11d, 3
add r11d, r10d
and r8d, 7
mov dword [rbx + 8], r11d
mov dword [rbx + 0xc], r8d
movzx eax, word [rbx + rdx*2 + 0x574]
jmp 0x14002c7f1
mov r9d, 0xf
inc ecx
cmp ecx, r9d
jae 0x14002c7a8
mov r8d, ecx
add r8, 0x3c
lea r8, [rbx + r8*4]
cmp edx, dword [r8]
jb 0x14002c7a5
add ecx, r13d
add r8, 4
cmp ecx, r9d
jb 0x14002c792
jmp 0x14002c7a8
mov r9d, ecx
lea r8d, [r11 + r9]
mov ecx, r14d
sub ecx, r9d
lea eax, [r9 - 1]
mov r11d, r8d
and r8d, 7
mov dword [rbx + 0xc], r8d
shr r11d, 3
add r11d, r10d
mov dword [rbx + 8], r11d
sub edx, dword [rbx + rax*4 + 0xf0]
mov eax, r9d
shr edx, cl
add edx, dword [rbx + rax*4 + 0x130]
cmp edx, dword [rbx + 0xec]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0xd74]
movzx edx, ax
cmp edx, 0x100
jae 0x14002c819
mov rax, qword [rbx + 0xc0]
mov rcx, qword [rbx + 0x4b90]
mov byte [rcx + rax], dl
add qword [rbx + 0xc0], r13
jmp 0x14002c2d2
cmp edx, 0x10f
jb 0x14002ccdf
lea eax, [rdx - 0x10f]
movzx r9d, byte [rax + rsi + 0x5c270]
movzx r10d, byte [rax + rsi + 0x5c290]
add r9d, 3
test r10d, r10d
je 0x14002c87b
movsxd rax, r11d
mov ecx, r14d
sub ecx, r8d
add r8d, r10d
mov edx, dword [rax + rdi]
mov eax, r8d
bswap edx
shr edx, cl
mov ecx, r14d
sub ecx, r10d
shr eax, 3
add eax, r11d
movzx edx, dx
shr edx, cl
add r9d, edx
mov dword [rbx + 8], eax
and r8d, 7
mov dword [rbx + 0xc], r8d
movsxd rsi, dword [rbx + 8]
mov ecx, r14d
mov rbp, qword [rbx + 0x18]
sub ecx, r8d
mov edx, dword [rsi + rbp]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x105c]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0xfdc]
jae 0x14002c8d8
mov eax, r14d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r11d, byte [rdx + rbx + 0x1060]
add r11d, r8d
mov eax, r11d
shr eax, 3
add esi, eax
and r11d, 7
mov dword [rbx + 8], esi
mov dword [rbx + 0xc], r11d
movzx ecx, word [rbx + rdx*2 + 0x1460]
jmp 0x14002c948
mov edi, 0xf
inc ecx
cmp ecx, edi
jae 0x14002c905
mov r10d, ecx
add r10, 0x3f7
lea r10, [rbx + r10*4]
cmp edx, dword [r10]
jb 0x14002c903
add ecx, r13d
add r10, 4
cmp ecx, edi
jb 0x14002c8f1
jmp 0x14002c905
mov edi, ecx
lea r11d, [rdi + r8]
mov ecx, r14d
mov eax, r11d
sub ecx, edi
shr eax, 3
and r11d, 7
add esi, eax
mov dword [rbx + 0xc], r11d
mov dword [rbx + 8], esi
lea eax, [rdi - 1]
sub edx, dword [rbx + rax*4 + 0xfdc]
shr edx, cl
mov eax, edi
add edx, dword [rbx + rax*4 + 0x101c]
cmp edx, dword [rbx + 0xfd8]
sbb eax, eax
and eax, edx
movzx ecx, word [rbx + rax*2 + 0x1c60]
movzx eax, cx
lea rdx, [0x140000000]
mov r10d, dword [rdx + rax*4 + 0x72180]
lea rdx, [0x140072280]
movzx edi, byte [rax + rdx]
add r10d, r13d
test edi, edi
je 0x14002caed
cmp cx, 9
jbe 0x14002cabc
cmp edi, 4
jbe 0x14002c9be
movsxd rax, esi
mov ecx, r14d
sub ecx, r11d
add r11d, 0xfffffffc
add r11d, edi
mov edx, dword [rax + rbp]
mov eax, r11d
shr eax, 3
add eax, esi
bswap edx
shr edx, cl
mov ecx, 0x14
sub ecx, edi
movzx r8d, dx
shr r8d, cl
shl r8d, 4
add r10d, r8d
mov dword [rbx + 8], eax
and r11d, 7
mov dword [rbx + 0xc], r11d
mov eax, dword [rbx + 0x9a2c]
test eax, eax
jle 0x14002c9d5
dec eax
mov dword [rbx + 0x9a2c], eax
jmp 0x14002caa9
movsxd rcx, dword [rbx + 8]
mov rax, qword [rbx + 0x18]
mov edx, dword [rcx + rax]
mov ecx, r14d
sub ecx, r11d
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x1f48]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0x1ec8]
jae 0x14002ca2c
mov eax, r14d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx ecx, byte [rdx + rbx + 0x1f4c]
add ecx, r11d
mov eax, ecx
shr eax, 3
add dword [rbx + 8], eax
and ecx, 7
mov dword [rbx + 0xc], ecx
movzx eax, word [rbx + rdx*2 + 0x234c]
jmp 0x14002ca97
mov edi, 0xf
inc ecx
cmp ecx, edi
jae 0x14002ca59
mov r8d, ecx
add r8, 0x7b2
lea r8, [rbx + r8*4]
cmp edx, dword [r8]
jb 0x14002ca57
add ecx, r13d
add r8, 4
cmp ecx, edi
jb 0x14002ca45
jmp 0x14002ca59
mov edi, ecx
lea ecx, [rdi + r11]
mov eax, ecx
and ecx, 7
shr eax, 3
add dword [rbx + 8], eax
lea eax, [rdi - 1]
mov dword [rbx + 0xc], ecx
mov ecx, r14d
sub ecx, edi
sub edx, dword [rbx + rax*4 + 0x1ec8]
mov eax, edi
shr edx, cl
add edx, dword [rbx + rax*4 + 0x1f08]
cmp edx, dword [rbx + 0x1ec4]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0x2b4c]
movzx eax, ax
cmp eax, r14d
jne 0x14002cab1
mov dword [rbx + 0x9a2c], 0xf
mov eax, dword [rbx + 0x9a28]
jmp 0x14002cab7
mov dword [rbx + 0x9a28], eax
add r10d, eax
jmp 0x14002caed
movsxd rax, esi
mov ecx, r14d
sub ecx, r11d
mov edx, dword [rax + rbp]
bswap edx
shr edx, cl
mov ecx, r14d
sub ecx, edi
movzx edx, dx
shr edx, cl
lea ecx, [r11 + rdi]
mov eax, ecx
add r10d, edx
shr eax, 3
add eax, esi
and ecx, 7
mov dword [rbx + 8], eax
mov dword [rbx + 0xc], ecx
cmp r10d, 0x2000
jb 0x14002cb05
add r9d, r13d
cmp r10d, 0x40000
jb 0x14002cb05
add r9d, r13d
mov eax, dword [rbx + 0xa8]
mov dword [rbx + 0xac], eax
mov eax, dword [rbx + 0xa4]
mov dword [rbx + 0xa8], eax
mov eax, dword [rbx + 0xa0]
mov dword [rbx + 0xa4], eax
mov dword [rbx + 0xa0], r10d
mov r8, qword [rbx + 0xc0]
mov eax, r10d
mov rdx, r8
sub rdx, rax
mov dword [rbx + 0xb4], r9d
mov rax, qword [rbx + 0xe938]
add rax, 0xffffffffffffeffc
cmp rdx, rax
jae 0x14002cc8e
cmp r8, rax
jae 0x14002cc8e
mov rax, qword [rbx + 0x4b90]
lea rcx, [rax + rdx]
lea rdx, [rax + r8]
mov eax, r9d
add rax, r8
mov qword [rbx + 0xc0], rax
cmp r9d, 8
jb 0x14002cbec
mov r8d, r9d
shr r8, 3
cmp r10d, r9d
jae 0x14002cbd5
mov al, byte [rcx]
add r9d, 0xfffffff8
mov byte [rdx], al
mov al, byte [rcx + 1]
mov byte [rdx + 1], al
mov al, byte [rcx + 2]
mov byte [rdx + 2], al
mov al, byte [rcx + 3]
mov byte [rdx + 3], al
mov al, byte [rcx + 4]
mov byte [rdx + 4], al
mov al, byte [rcx + 5]
mov byte [rdx + 5], al
mov al, byte [rcx + 6]
mov byte [rdx + 6], al
mov al, byte [rcx + 7]
add rcx, 8
mov byte [rdx + 7], al
add rdx, 8
sub r8, r13
jne 0x14002cb94
jmp 0x14002cbec
mov rax, qword [rcx]
add r9d, 0xfffffff8
mov qword [rdx], rax
add rcx, 8
add rdx, 8
sub r8, r13
jne 0x14002cbd5
lea rsi, [0x140000000]
test r9d, r9d
je 0x14002c2d2
mov al, byte [rcx]
lea rsi, [0x140000000]
mov byte [rdx], al
cmp r9d, r13d
jbe 0x14002c2d2
mov al, byte [rcx + 1]
lea rsi, [0x140000000]
mov byte [rdx + 1], al
cmp r9d, 2
jbe 0x14002c2d2
mov al, byte [rcx + 2]
lea rsi, [0x140000000]
mov byte [rdx + 2], al
cmp r9d, 3
jbe 0x14002c2d2
mov al, byte [rcx + 3]
lea rsi, [0x140000000]
mov byte [rdx + 3], al
cmp r9d, 4
jbe 0x14002c2d2
mov al, byte [rcx + 4]
lea rsi, [0x140000000]
mov byte [rdx + 4], al
cmp r9d, 5
jbe 0x14002c2d2
cmp r9d, 6
mov al, byte [rcx + 5]
lea rsi, [0x140000000]
mov byte [rdx + 5], al
jbe 0x14002c2d2
mov al, byte [rcx + 6]
mov byte [rdx + 6], al
jmp 0x14002c3a4
lea rsi, [0x140000000]
test r9d, r9d
je 0x14002c2d2
mov rax, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
and rax, rdx
add rdx, r13
mov al, byte [rax + rcx]
mov byte [rcx + r8], al
mov r8, qword [rbx + 0xc0]
mov rax, qword [rbx + 0xe940]
add r8, r13
and r8, rax
mov qword [rbx + 0xc0], r8
add r9d, 0xffffffff
jne 0x14002cca5
jmp 0x14002c3a4
cmp edx, 0x100
jne 0x14002ccf1
mov rcx, rbx
call fcn.1400292d0
jmp 0x14002cd01
cmp edx, 0x101
jne 0x14002cd0e
mov rcx, rbx
call fcn.14002a2b4
test al, al
je 0x14002d2cb
jmp 0x14002c2d2
cmp edx, 0x102
jne 0x14002ce96
mov edx, dword [rbx + 0xb4]
test edx, edx
je 0x14002c2d2
mov r9, qword [rbx + 0xc0]
mov r10d, dword [rbx + 0xa0]
mov r8, r9
mov rax, qword [rbx + 0xe938]
sub r8, r10
add rax, 0xffffffffffffeffc
cmp r8, rax
jae 0x14002ce56
cmp r9, rax
jae 0x14002ce56
mov rax, qword [rbx + 0x4b90]
lea rcx, [rax + r8]
lea r8, [rax + r9]
lea rax, [r9 + rdx]
mov qword [rbx + 0xc0], rax
cmp edx, 8
jb 0x14002cde4
mov r9d, edx
shr r9, 3
cmp r10d, edx
jae 0x14002cdce
mov al, byte [rcx]
add edx, 0xfffffff8
mov byte [r8], al
mov al, byte [rcx + 1]
mov byte [r8 + 1], al
mov al, byte [rcx + 2]
mov byte [r8 + 2], al
mov al, byte [rcx + 3]
mov byte [r8 + 3], al
mov al, byte [rcx + 4]
mov byte [r8 + 4], al
mov al, byte [rcx + 5]
mov byte [r8 + 5], al
mov al, byte [rcx + 6]
mov byte [r8 + 6], al
mov al, byte [rcx + 7]
add rcx, 8
mov byte [r8 + 7], al
add r8, 8
sub r9, r13
jne 0x14002cd86
jmp 0x14002cde4
mov rax, qword [rcx]
add edx, 0xfffffff8
mov qword [r8], rax
add rcx, 8
add r8, 8
sub r9, r13
jne 0x14002cdce
test edx, edx
je 0x14002c2d2
mov al, byte [rcx]
mov byte [r8], al
cmp edx, r13d
jbe 0x14002c2d2
mov al, byte [rcx + 1]
mov byte [r8 + 1], al
cmp edx, 2
jbe 0x14002c2d2
mov al, byte [rcx + 2]
mov byte [r8 + 2], al
cmp edx, 3
jbe 0x14002c2d2
mov al, byte [rcx + 3]
mov byte [r8 + 3], al
cmp edx, 4
jbe 0x14002c2d2
mov al, byte [rcx + 4]
mov byte [r8 + 4], al
cmp edx, 5
jbe 0x14002c2d2
mov al, byte [rcx + 5]
mov byte [r8 + 5], al
cmp edx, 6
jbe 0x14002c2d2
mov al, byte [rcx + 6]
mov byte [r8 + 6], al
jmp 0x14002c2d2
mov rax, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
and rax, r8
add r8, r13
mov al, byte [rax + rcx]
mov byte [rcx + r9], al
mov r9, qword [rbx + 0xc0]
mov rax, qword [rbx + 0xe940]
add r9, r13
and r9, rax
mov qword [rbx + 0xc0], r9
add edx, 0xffffffff
jne 0x14002ce5d
jmp 0x14002c2d2
cmp edx, 0x107
jae 0x14002d194
add edx, 0xfffffefd
lea r8, [rdx + 0x28]
lea r8, [rbx + r8*4]
mov esi, dword [r8]
je 0x14002cec8
sub edx, 1
mov ecx, dword [rbx + rdx*4 + 0xa0]
mov dword [r8], ecx
lea r8, [r8 - 4]
jne 0x14002ceb5
mov dword [rbx + 0xa0], esi
mov ecx, r14d
movsxd r11, dword [rbx + 8]
mov rbp, qword [rbx + 0x18]
mov edi, dword [rbx + 0xc]
sub ecx, edi
mov edx, dword [r11 + rbp]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x2e34]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0x2db4]
jae 0x14002cf30
mov eax, r14d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r9d, byte [rdx + rbx + 0x2e38]
add r9d, edi
mov eax, r9d
shr eax, 3
add r11d, eax
and r9d, 7
mov dword [rbx + 8], r11d
mov dword [rbx + 0xc], r9d
movzx eax, word [rbx + rdx*2 + 0x3238]
jmp 0x14002cfa9
mov r10d, 0xf
inc ecx
cmp ecx, r10d
jae 0x14002cf61
mov r8d, ecx
add r8, 0xb6d
lea r8, [rbx + r8*4]
cmp edx, dword [r8]
jb 0x14002cf5e
add ecx, r13d
add r8, 4
cmp ecx, r10d
jb 0x14002cf4b
jmp 0x14002cf61
mov r10d, ecx
lea r9d, [r10 + rdi]
mov ecx, r14d
mov eax, r9d
sub ecx, r10d
shr eax, 3
and r9d, 7
add r11d, eax
mov dword [rbx + 0xc], r9d
mov dword [rbx + 8], r11d
lea eax, [r10 - 1]
sub edx, dword [rbx + rax*4 + 0x2db4]
mov eax, r10d
shr edx, cl
add edx, dword [rbx + rax*4 + 0x2df4]
cmp edx, dword [rbx + 0x2db0]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0x3a38]
movzx eax, ax
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x5c270]
movzx r10d, byte [rax + rcx + 0x5c290]
add r8d, 2
test r10d, r10d
je 0x14002d001
movsxd rax, r11d
mov ecx, r14d
sub ecx, r9d
mov edx, dword [rax + rbp]
bswap edx
shr edx, cl
mov ecx, r14d
sub ecx, r10d
movzx edx, dx
shr edx, cl
lea ecx, [r9 + r10]
mov eax, ecx
add r8d, edx
shr eax, 3
add eax, r11d
and ecx, 7
mov dword [rbx + 8], eax
mov dword [rbx + 0xc], ecx
mov r9, qword [rbx + 0xc0]
mov rax, qword [rbx + 0xe938]
mov rdx, r9
sub rdx, rsi
mov dword [rbx + 0xb4], r8d
add rax, 0xffffffffffffeffc
cmp rdx, rax
jae 0x14002d143
cmp r9, rax
jae 0x14002d143
mov rax, qword [rbx + 0x4b90]
lea rcx, [rax + rdx]
lea rdx, [rax + r9]
mov eax, r8d
add rax, r9
mov qword [rbx + 0xc0], rax
cmp r8d, 8
jb 0x14002d0ba
mov r9d, r8d
shr r9, 3
cmp esi, r8d
jae 0x14002d0a3
mov al, byte [rcx]
add r8d, 0xfffffff8
mov byte [rdx], al
mov al, byte [rcx + 1]
mov byte [rdx + 1], al
mov al, byte [rcx + 2]
mov byte [rdx + 2], al
mov al, byte [rcx + 3]
mov byte [rdx + 3], al
mov al, byte [rcx + 4]
mov byte [rdx + 4], al
mov al, byte [rcx + 5]
mov byte [rdx + 5], al
mov al, byte [rcx + 6]
mov byte [rdx + 6], al
mov al, byte [rcx + 7]
add rcx, 8
mov byte [rdx + 7], al
add rdx, 8
sub r9, r13
jne 0x14002d062
jmp 0x14002d0ba
mov rax, qword [rcx]
add r8d, 0xfffffff8
mov qword [rdx], rax
add rcx, 8
add rdx, 8
sub r9, r13
jne 0x14002d0a3
lea rsi, [0x140000000]
test r8d, r8d
je 0x14002c2d2
mov al, byte [rcx]
lea rsi, [0x140000000]
mov byte [rdx], al
cmp r8d, r13d
jbe 0x14002c2d2
mov al, byte [rcx + 1]
lea rsi, [0x140000000]
mov byte [rdx + 1], al
cmp r8d, 2
jbe 0x14002c2d2
mov al, byte [rcx + 2]
lea rsi, [0x140000000]
mov byte [rdx + 2], al
cmp r8d, 3
jbe 0x14002c2d2
mov al, byte [rcx + 3]
lea rsi, [0x140000000]
mov byte [rdx + 3], al
cmp r8d, 4
jbe 0x14002c2d2
mov al, byte [rcx + 4]
lea rsi, [0x140000000]
mov byte [rdx + 4], al
cmp r8d, 5
jbe 0x14002c2d2
cmp r8d, 6
jmp 0x14002cc70
lea rsi, [0x140000000]
test r8d, r8d
je 0x14002c2d2
mov rax, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
and rax, rdx
add rdx, r13
mov al, byte [rax + rcx]
mov byte [rcx + r9], al
mov r9, qword [rbx + 0xc0]
mov rax, qword [rbx + 0xe940]
add r9, r13
and r9, rax
mov qword [rbx + 0xc0], r9
add r8d, 0xffffffff
jne 0x14002d15a
jmp 0x14002c3a4
lea eax, [rdx - 0x107]
movzx r9d, byte [rax + rsi + 0x5c300]
movzx r10d, byte [rax + rsi + 0x5c308]
add r9d, r13d
test r10d, r10d
je 0x14002d1e7
movsxd rax, r11d
mov ecx, r14d
sub ecx, r8d
mov edx, dword [rax + rdi]
bswap edx
shr edx, cl
mov ecx, r14d
sub ecx, r10d
movzx edx, dx
shr edx, cl
lea ecx, [r8 + r10]
mov eax, ecx
add r9d, edx
shr eax, 3
add eax, r11d
and ecx, 7
mov dword [rbx + 8], eax
mov dword [rbx + 0xc], ecx
mov eax, dword [rbx + 0xa8]
mov r10d, 2
mov dword [rbx + 0xac], eax
mov eax, dword [rbx + 0xa4]
mov dword [rbx + 0xa8], eax
mov eax, dword [rbx + 0xa0]
mov dword [rbx + 0xa4], eax
mov dword [rbx + 0xa0], r9d
mov rdx, qword [rbx + 0xc0]
mov eax, r9d
mov r8, rdx
sub r8, rax
mov dword [rbx + 0xb4], 2
mov rax, qword [rbx + 0xe938]
add rax, 0xffffffffffffeffc
cmp r8, rax
jae 0x14002d270
cmp rdx, rax
jae 0x14002d270
mov rcx, qword [rbx + 0x4b90]
lea rax, [rdx + 2]
mov qword [rbx + 0xc0], rax
mov al, byte [rcx + r8]
mov byte [rcx + rdx], al
mov al, byte [rcx + r8 + 1]
mov byte [rcx + rdx + 1], al
jmp 0x14002c2d2
mov r9, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
mov rax, r8
and rax, r9
add r8, r13
mov al, byte [rax + rcx]
mov byte [rcx + rdx], al
mov rdx, qword [rbx + 0xc0]
mov r9, qword [rbx + 0xe940]
add rdx, r13
and rdx, r9
mov qword [rbx + 0xc0], rdx
add r10d, 0xffffffff
jne 0x14002d277
jmp 0x14002c2d2
mov byte [rbx + 0x4db8], r12b
jmp 0x14002d2d3
mov rcx, rdi
call fcn.140026c88
mov dword [rbx + 0xe888], r12d
mov rcx, rbx
call fcn.14002b2ac
mov rbx, qword [rsp + 0x70]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor ebp, ebp
mov byte [rcx + 0x4db8], 1
mov rbx, rcx
cmp byte [rcx + 0x4da8], bpl
jne 0x14002d37a
call fcn.14002af00
mov rcx, rbx
call fcn.14002b068
test al, al
je 0x14002da8b
lea r13, [rbx + 0xd8]
mov rcx, rbx
lea r14, [rbx + 8]
mov r8, r13
mov rdx, r14
call fcn.14002916c
test al, al
je 0x14002da8b
lea r9, [rbx + 0xec]
mov r8, r13
mov rdx, r14
mov rcx, rbx
call fcn.140029f4c
test al, al
je 0x14002da8b
cmp byte [rbx + 0xe88e], bpl
jne 0x14002d385
jmp 0x14002da8b
lea r14, [rcx + 8]
lea r13, [rcx + 0xd8]
lea r15, [rbx + 0xc0]
mov rax, qword [rbx + 0xe940]
and qword [r15], rax
mov eax, dword [rbx + 0xd4]
cmp dword [r14], eax
jl 0x14002d413
mov ecx, dword [rbx + 0xe0]
mov edx, dword [r13]
dec ecx
add edx, ecx
cmp dword [r14], edx
jg 0x14002d3c1
jne 0x14002d403
mov eax, dword [rbx + 0xdc]
cmp dword [rbx + 0xc], eax
jl 0x14002d403
cmp byte [rbx + 0xe8], bpl
jne 0x14002da83
mov r8, r13
mov rdx, r14
mov rcx, rbx
call fcn.14002916c
test al, al
je 0x14002da8b
lea r9, [rbx + 0xec]
mov r8, r13
mov rdx, r14
mov rcx, rbx
call fcn.140029f4c
test al, al
je 0x14002da8b
jmp 0x14002d3a1
mov rcx, rbx
call fcn.14002b068
test al, al
je 0x14002da83
mov rcx, qword [rbx + 0x4b88]
mov rax, rcx
sub rax, qword [r15]
and rax, qword [rbx + 0xe940]
cmp rax, 0x1004
ja 0x14002d45d
cmp rcx, qword [r15]
je 0x14002d45d
mov rcx, rbx
call fcn.14002b508
mov rax, qword [rbx + 0x4da0]
cmp qword [rbx + 0x4db0], rax
jg 0x14002da8b
cmp byte [rbx + 0x4da8], bpl
jne 0x14002debd
movsxd r11, dword [r14]
mov ecx, 0x10
mov r12, qword [r14 + 0x10]
mov edi, dword [r14 + 4]
sub ecx, edi
mov edx, dword [r11 + r12]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x170]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0xf0]
jae 0x14002d4c2
mov eax, 0x10
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r9d, byte [rdx + rbx + 0x174]
add r9d, edi
mov esi, r9d
shr esi, 3
add esi, r11d
and r9d, 7
mov dword [r14], esi
mov dword [r14 + 4], r9d
movzx eax, word [rbx + rdx*2 + 0x574]
jmp 0x14002d538
mov r10d, 0xf
inc ecx
cmp ecx, r10d
jae 0x14002d4ef
mov r8d, ecx
add r8, 0x3c
lea r8, [rbx + r8*4]
cmp edx, dword [r8]
jb 0x14002d4ec
inc ecx
add r8, 4
cmp ecx, r10d
jb 0x14002d4da
jmp 0x14002d4ef
mov r10d, ecx
lea r9d, [rdi + r10]
mov ecx, 0x10
sub ecx, r10d
lea eax, [r10 - 1]
mov esi, r9d
and r9d, 7
mov dword [r14 + 4], r9d
shr esi, 3
add esi, r11d
mov dword [r14], esi
sub edx, dword [rbx + rax*4 + 0xf0]
mov eax, r10d
shr edx, cl
add edx, dword [rbx + rax*4 + 0x130]
cmp edx, dword [rbx + 0xec]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0xd74]
movzx edi, ax
cmp edi, 0x100
jae 0x14002d580
cmp byte [rbx + 0x4d98], bpl
je 0x14002d56a
mov rdx, qword [r15]
lea rcx, [rbx + 0x4b98]
lea rax, [rdx + 1]
mov qword [r15], rax
call fcn.1400262b8
mov byte [rax], dil
jmp 0x14002d38c
mov rax, qword [r15]
mov rcx, qword [rbx + 0x4b90]
mov byte [rcx + rax], dil
inc qword [r15]
jmp 0x14002d38c
cmp edi, 0x106
jb 0x14002da52
lea r10d, [rdi - 0x106]
cmp r10d, 8
jae 0x14002d59f
add r10d, 2
jmp 0x14002d5fb
mov r11d, r10d
and r10d, 3
or r10d, 4
shr r11d, 2
dec r11d
mov ecx, r11d
shl r10d, cl
add r10d, 2
test r11d, r11d
je 0x14002d5fb
movsxd rax, esi
mov ecx, 0x10
sub ecx, r9d
add r9d, r11d
mov edx, dword [rax + r12]
mov eax, r9d
shr eax, 3
add esi, eax
bswap edx
shr edx, cl
mov ecx, 0x10
sub ecx, r11d
movzx r8d, dx
shr r8d, cl
add r10d, r8d
mov dword [r14], esi
and r9d, 7
mov dword [r14 + 4], r9d
mov ecx, 0x10
movsxd rax, esi
sub ecx, r9d
mov edx, dword [rax + r12]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x105c]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0xfdc]
jae 0x14002d658
mov eax, 0x10
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r11d, byte [rdx + rbx + 0x1060]
add r11d, r9d
mov eax, r11d
shr eax, 3
add esi, eax
and r11d, 7
mov dword [r14], esi
mov dword [r14 + 4], r11d
movzx eax, word [rbx + rdx*2 + 0x1460]
jmp 0x14002d6c9
mov edi, 0xf
inc ecx
cmp ecx, edi
jae 0x14002d684
mov r8d, ecx
add r8, 0x3f7
lea r8, [rbx + r8*4]
cmp edx, dword [r8]
jb 0x14002d682
inc ecx
add r8, 4
cmp ecx, edi
jb 0x14002d671
jmp 0x14002d684
mov edi, ecx
lea r11d, [r9 + rdi]
mov ecx, 0x10
mov eax, r11d
sub ecx, edi
shr eax, 3
and r11d, 7
add esi, eax
mov dword [r14 + 4], r11d
mov dword [r14], esi
lea eax, [rdi - 1]
sub edx, dword [rbx + rax*4 + 0xfdc]
mov eax, edi
shr edx, cl
add edx, dword [rbx + rax*4 + 0x101c]
cmp edx, dword [rbx + 0xfd8]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0x1c60]
movzx eax, ax
mov ebp, esi
cmp eax, 4
jae 0x14002d6dc
lea r8d, [rax + 1]
jmp 0x14002d867
mov r9d, eax
and eax, 1
shr r9d, 1
or eax, 2
dec r9d
mov ecx, r9d
shl eax, cl
lea edi, [rax + 1]
mov r8d, edi
test r9d, r9d
je 0x14002d867
cmp r9d, 4
jb 0x14002d82b
jbe 0x14002d75a
mov ecx, r11d
movsxd rdx, esi
add r11d, 0xfffffffc
add r11d, r9d
mov ebp, r11d
mov r8d, dword [rdx + r12]
movzx edx, byte [rdx + r12 + 4]
bswap r8d
shl r8d, cl
mov ecx, 8
sub cl, byte [rbx + 0xc]
shr edx, cl
mov ecx, 0x24
or r8d, edx
shr ebp, 3
sub ecx, r9d
add ebp, esi
shr r8d, cl
shl r8d, 4
add r8d, edi
mov dword [r14], ebp
and r11d, 7
mov dword [r14 + 4], r11d
movsxd rcx, ebp
mov edx, dword [rcx + r12]
mov r12d, 0x10
mov ecx, r12d
sub ecx, r11d
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x1f48]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0x1ec8]
jae 0x14002d7b6
mov eax, r12d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx ecx, byte [rdx + rbx + 0x1f4c]
add ecx, r11d
mov eax, ecx
shr eax, 3
add eax, ebp
and ecx, 7
mov dword [r14], eax
mov dword [r14 + 4], ecx
movzx eax, word [rbx + rdx*2 + 0x234c]
jmp 0x14002d823
mov edi, 0xf
inc ecx
cmp ecx, edi
jae 0x14002d7e2
mov r9d, ecx
add r9, 0x7b2
lea r9, [rbx + r9*4]
cmp edx, dword [r9]
jb 0x14002d7e0
inc ecx
add r9, 4
cmp ecx, edi
jb 0x14002d7cf
jmp 0x14002d7e2
mov edi, ecx
lea ecx, [r11 + rdi]
mov eax, ecx
and ecx, 7
shr eax, 3
add eax, ebp
mov dword [r14 + 4], ecx
mov dword [r14], eax
mov ecx, r12d
sub ecx, edi
lea eax, [rdi - 1]
sub edx, dword [rbx + rax*4 + 0x1ec8]
mov eax, edi
shr edx, cl
add edx, dword [rbx + rax*4 + 0x1f08]
cmp edx, dword [rbx + 0x1ec4]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0x2b4c]
movzx eax, ax
add r8d, eax
jmp 0x14002d867
movsxd rax, esi
mov edx, dword [rax + r12]
mov r12d, 0x10
mov ecx, r12d
sub ecx, r11d
bswap edx
shr edx, cl
mov ecx, r12d
sub ecx, r9d
movzx r8d, dx
shr r8d, cl
lea ecx, [r11 + r9]
mov eax, ecx
add r8d, edi
shr eax, 3
add eax, esi
and ecx, 7
mov dword [r14], eax
mov dword [r14 + 4], ecx
cmp r8d, 0x100
jbe 0x14002d88b
inc r10d
cmp r8d, 0x2000
jbe 0x14002d88b
inc r10d
cmp r8d, 0x40000
jbe 0x14002d88b
inc r10d
mov eax, dword [rbx + 0xa8]
xor ebp, ebp
mov dword [rbx + 0xac], eax
mov eax, dword [rbx + 0xa4]
mov dword [rbx + 0xa8], eax
mov eax, dword [rbx + 0xa0]
mov dword [rbx + 0xa4], eax
mov dword [rbx + 0xa0], r8d
mov dword [rbx + 0xb4], r10d
cmp byte [rbx + 0x4d98], bpl
je 0x14002d8eb
mov edx, r10d
mov rax, qword [rbx + 0xe940]
lea rcx, [rbx + 0x4b98]
mov r9, r15
mov qword [rsp + 0x20], rax
call fcn.140026f20
jmp 0x14002d38c
mov r9, qword [r15]
mov eax, r8d
mov rdx, r9
sub rdx, rax
mov rax, qword [rbx + 0xe938]
add rax, 0xffffffffffffeffc
cmp rdx, rax
jae 0x14002da10
cmp r9, rax
jae 0x14002da10
mov rax, qword [rbx + 0x4b90]
lea rcx, [rdx + rax]
lea rdx, [r9 + rax]
mov eax, r10d
add rax, r9
mov qword [r15], rax
cmp r10d, 8
jb 0x14002d99e
cmp r8d, r10d
mov r8d, r10d
jae 0x14002d982
shr r8, 3
mov al, byte [rcx]
add r10d, 0xfffffff8
mov byte [rdx], al
mov al, byte [rcx + 1]
mov byte [rdx + 1], al
mov al, byte [rcx + 2]
mov byte [rdx + 2], al
mov al, byte [rcx + 3]
mov byte [rdx + 3], al
mov al, byte [rcx + 4]
mov byte [rdx + 4], al
mov al, byte [rcx + 5]
mov byte [rdx + 5], al
mov al, byte [rcx + 6]
mov byte [rdx + 6], al
mov al, byte [rcx + 7]
add rcx, 8
mov byte [rdx + 7], al
add rdx, 8
sub r8, 1
jne 0x14002d940
jmp 0x14002d99e
shr r8, 3
mov rax, qword [rcx]
add r10d, 0xfffffff8
mov qword [rdx], rax
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14002d986
test r10d, r10d
je 0x14002d38c
mov al, byte [rcx]
mov byte [rdx], al
cmp r10d, 1
jbe 0x14002d38c
mov al, byte [rcx + 1]
mov byte [rdx + 1], al
cmp r10d, 2
jbe 0x14002d38c
mov al, byte [rcx + 2]
mov byte [rdx + 2], al
cmp r10d, 3
jbe 0x14002d38c
mov al, byte [rcx + 3]
mov byte [rdx + 3], al
cmp r10d, 4
jbe 0x14002d38c
mov al, byte [rcx + 4]
mov byte [rdx + 4], al
cmp r10d, 5
jbe 0x14002d38c
mov al, byte [rcx + 5]
mov byte [rdx + 5], al
cmp r10d, 6
jbe 0x14002d38c
mov al, byte [rcx + 6]
mov byte [rdx + 6], al
jmp 0x14002d38c
test r10d, r10d
je 0x14002d38c
mov rax, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
and rax, rdx
inc rdx
mov al, byte [rax + rcx]
mov byte [r9 + rcx], al
mov r9, qword [r15]
mov rax, qword [rbx + 0xe940]
inc r9
and r9, rax
mov qword [r15], r9
add r10d, 0xffffffff
jne 0x14002da20
jmp 0x14002d38c
cmp edi, 0x100
jne 0x14002daa9
lea r8, [rsp + 0x30]
mov rdx, r14
mov rcx, rbx
call fcn.140029340
test al, al
je 0x14002da83
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.1400264fc
test al, al
jne 0x14002d38c
mov rcx, rbx
call fcn.14002b508
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
cmp edi, 0x101
jne 0x14002dc38
mov edx, dword [rbx + 0xb4]
test edx, edx
je 0x14002d38c
cmp byte [rbx + 0x4d98], bpl
je 0x14002dad8
mov r8d, dword [rbx + 0xa0]
jmp 0x14002d8cb
mov r9, qword [r15]
mov r10d, dword [rbx + 0xa0]
mov r8, r9
mov rax, qword [rbx + 0xe938]
sub r8, r10
add rax, 0xffffffffffffeffc
cmp r8, rax
jae 0x14002dc00
cmp r9, rax
jae 0x14002dc00
mov rax, qword [rbx + 0x4b90]
lea rcx, [r8 + rax]
lea r8, [r9 + rax]
lea rax, [r9 + rdx]
mov qword [r15], rax
cmp edx, 8
jb 0x14002db8e
mov r9, rdx
shr r9, 3
cmp r10d, edx
jae 0x14002db77
mov al, byte [rcx]
add edx, 0xfffffff8
mov byte [r8], al
mov al, byte [rcx + 1]
mov byte [r8 + 1], al
mov al, byte [rcx + 2]
mov byte [r8 + 2], al
mov al, byte [rcx + 3]
mov byte [r8 + 3], al
mov al, byte [rcx + 4]
mov byte [r8 + 4], al
mov al, byte [rcx + 5]
mov byte [r8 + 5], al
mov al, byte [rcx + 6]
mov byte [r8 + 6], al
mov al, byte [rcx + 7]
add rcx, 8
mov byte [r8 + 7], al
add r8, 8
sub r9, 1
jne 0x14002db2e
jmp 0x14002db8e
mov rax, qword [rcx]
add edx, 0xfffffff8
mov qword [r8], rax
add rcx, 8
add r8, 8
sub r9, 1
jne 0x14002db77
test edx, edx
je 0x14002d38c
mov al, byte [rcx]
mov byte [r8], al
cmp edx, 1
jbe 0x14002d38c
mov al, byte [rcx + 1]
mov byte [r8 + 1], al
cmp edx, 2
jbe 0x14002d38c
mov al, byte [rcx + 2]
mov byte [r8 + 2], al
cmp edx, 3
jbe 0x14002d38c
mov al, byte [rcx + 3]
mov byte [r8 + 3], al
cmp edx, 4
jbe 0x14002d38c
mov al, byte [rcx + 4]
mov byte [r8 + 4], al
cmp edx, 5
jbe 0x14002d38c
mov al, byte [rcx + 5]
mov byte [r8 + 5], al
cmp edx, 6
jbe 0x14002d38c
mov al, byte [rcx + 6]
mov byte [r8 + 6], al
jmp 0x14002d38c
mov rax, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
and rax, r8
inc r8
mov al, byte [rax + rcx]
mov byte [r9 + rcx], al
mov r9, qword [r15]
mov rax, qword [rbx + 0xe940]
inc r9
and r9, rax
mov qword [r15], r9
add edx, 0xffffffff
jne 0x14002dc07
jmp 0x14002d38c
add edi, 0xfffffefe
lea rdx, [rbx + 0xa0]
lea rdx, [rdx + rdi*4]
mov esi, dword [rdx]
je 0x14002dc5f
sub edi, 1
mov ecx, dword [rbx + rdi*4 + 0xa0]
mov dword [rdx], ecx
lea rdx, [rdx - 4]
jne 0x14002dc4d
mov rbp, qword [r14 + 0x10]
mov r12d, 0x10
mov dword [rbx + 0xa0], esi
mov ecx, r12d
movsxd r10, dword [r14]
mov edi, dword [r14 + 4]
sub ecx, edi
mov edx, dword [r10 + rbp]
bswap edx
shr edx, cl
mov ecx, dword [rbx + 0x2e34]
and edx, 0xfffe
cmp edx, dword [rbx + rcx*4 + 0x2db4]
jae 0x14002dccc
mov eax, r12d
sub eax, ecx
mov cl, al
shr rdx, cl
movzx r11d, byte [rdx + rbx + 0x2e38]
add r11d, edi
mov edi, r11d
shr edi, 3
add edi, r10d
and r11d, 7
mov dword [r14], edi
mov dword [r14 + 4], r11d
movzx eax, word [rbx + rdx*2 + 0x3238]
jmp 0x14002dd43
mov r9d, 0xf
inc ecx
cmp ecx, r9d
jae 0x14002dcfc
mov r8d, ecx
add r8, 0xb6d
lea r8, [rbx + r8*4]
cmp edx, dword [r8]
jb 0x14002dcf9
inc ecx
add r8, 4
cmp ecx, r9d
jb 0x14002dce7
jmp 0x14002dcfc
mov r9d, ecx
lea r11d, [rdi + r9]
mov ecx, r12d
sub ecx, r9d
lea eax, [r9 - 1]
mov edi, r11d
and r11d, 7
mov dword [r14 + 4], r11d
shr edi, 3
add edi, r10d
mov dword [r14], edi
sub edx, dword [rbx + rax*4 + 0x2db4]
mov eax, r9d
shr edx, cl
add edx, dword [rbx + rax*4 + 0x2df4]
cmp edx, dword [rbx + 0x2db0]
sbb eax, eax
and eax, edx
movzx eax, word [rbx + rax*2 + 0x3a38]
movzx r10d, ax
cmp r10d, 8
jae 0x14002dd53
add r10d, 2
jmp 0x14002dda9
mov r9d, r10d
and r10d, 3
or r10d, 4
shr r9d, 2
dec r9d
mov ecx, r9d
shl r10d, cl
add r10d, 2
test r9d, r9d
je 0x14002dda9
movsxd rax, edi
mov ecx, r12d
sub ecx, r11d
mov edx, dword [rax + rbp]
bswap edx
shr edx, cl
mov ecx, r12d
sub ecx, r9d
movzx r8d, dx
shr r8d, cl
lea ecx, [r11 + r9]
mov eax, ecx
add r10d, r8d
shr eax, 3
add eax, edi
and ecx, 7
mov dword [r14], eax
mov dword [r14 + 4], ecx
xor ebp, ebp
mov dword [rbx + 0xb4], r10d
cmp byte [rbx + 0x4d98], bpl
je 0x14002ddc3
mov r8d, esi
jmp 0x14002d8c8
mov r8, qword [r15]
mov rax, qword [rbx + 0xe938]
mov rdx, r8
sub rdx, rsi
add rax, 0xffffffffffffeffc
cmp rdx, rax
jae 0x14002de7b
cmp r8, rax
jae 0x14002de7b
mov rax, qword [rbx + 0x4b90]
lea rcx, [rdx + rax]
lea rdx, [r8 + rax]
mov eax, r10d
add rax, r8
mov qword [r15], rax
cmp r10d, 8
jb 0x14002d99e
mov r8d, r10d
shr r8, 3
cmp esi, r10d
jae 0x14002de5e
mov al, byte [rcx]
add r10d, 0xfffffff8
mov byte [rdx], al
mov al, byte [rcx + 1]
mov byte [rdx + 1], al
mov al, byte [rcx + 2]
mov byte [rdx + 2], al
mov al, byte [rcx + 3]
mov byte [rdx + 3], al
mov al, byte [rcx + 4]
mov byte [rdx + 4], al
mov al, byte [rcx + 5]
mov byte [rdx + 5], al
mov al, byte [rcx + 6]
mov byte [rdx + 6], al
mov al, byte [rcx + 7]
add rcx, 8
mov byte [rdx + 7], al
add rdx, 8
sub r8, 1
jne 0x14002de19
jmp 0x14002d99e
mov rax, qword [rcx]
add r10d, 0xfffffff8
mov qword [rdx], rax
add rcx, 8
add rdx, 8
sub r8, 1
jne 0x14002de5e
jmp 0x14002d99e
test r10d, r10d
je 0x14002d38c
mov rax, qword [rbx + 0xe940]
mov rcx, qword [rbx + 0x4b90]
and rax, rdx
inc rdx
mov al, byte [rax + rcx]
mov byte [r8 + rcx], al
mov r8, qword [r15]
mov rax, qword [rbx + 0xe940]
inc r8
and r8, rax
mov qword [r15], r8
add r10d, 0xffffffff
jne 0x14002de8b
jmp 0x14002d38c
mov byte [rbx + 0x4db8], bpl
jmp 0x14002da8b
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x450
mov rax, qword [0x14005c318]
xor rax, rsp
mov qword [rsp + 0x440], rax
mov bl, dl
mov rsi, rcx
call fcn.14002847c
mov dl, bl
mov rcx, rsi
call fcn.14002af00
mov eax, dword [rsi + 0x30]
lea r15, [rsi + 0x28]
xor ebx, ebx
mov edx, ebx
add eax, eax
je 0x14002df43
mov eax, edx
inc edx
imul rcx, rax, 0x4af8
add rcx, qword [r15]
mov byte [rcx + 0x4add], bl
mov byte [rcx + 0x4adf], bl
mov eax, dword [rsi + 0x30]
add eax, eax
cmp edx, eax
jb 0x14002df20
mov rcx, qword [r15]
lea rdx, [rsi + 0xec]
movups xmm0, xmmword [rsi + 0xd8]
mov r8d, 0x4a9c
movups xmmword [rcx + 0x24], xmm0
mov eax, dword [rsi + 0xe8]
mov dword [rcx + 0x34], eax
mov rcx, qword [r15]
add rcx, 0x3c
call fcn.140032ed0
mov dword [rsp + 0x2c], ebx
mov r13d, ebx
mov byte [rsp + 0x21], bl
mov byte [rsp + 0x20], bl
mov r14d, ebx
mov rcx, qword [rsi]
mov eax, 0x400000
sub eax, r14d
movsxd rdx, r14d
add rdx, qword [rsi + 0x38]
movsxd r8, eax
and r8, 0xfffffffffffffff0
call fcn.14001a61c
xor ecx, ecx
mov dword [rsp + 0x28], eax
mov edi, eax
test eax, eax
js 0x14002e2ab
add r14d, eax
mov dword [rsp + 0x30], r14d
je 0x14002e2ab
test eax, eax
jle 0x14002dfd2
cmp r14d, 0x400
jl 0x14002e2a1
cmp r13d, r14d
jge 0x14002e2a1
mov eax, dword [rsi + 0x30]
mov r12d, ecx
mov dword [rsp + 0x24], ecx
mov ebp, ecx
add eax, eax
je 0x14002e0f4
mov eax, r12d
imul rbx, rax, 0x4af8
mov dword [rsp + 0x2c], r12d
add rbx, qword [r15]
lea rbp, [rbx + 8]
mov qword [rbx], rsi
cmp byte [rbx + 0x4adf], cl
je 0x14002e019
mov dword [rbx + 0x4ad8], r14d
jmp 0x14002e04c
movsxd rdx, r13d
mov rcx, rbp
add rdx, qword [rsi + 0x38]
call fcn.1400148bc
xor ecx, ecx
mov eax, r14d
sub eax, r13d
mov qword [rbp], rcx
mov dword [rbx + 0x4ad8], eax
je 0x14002e0f0
mov byte [rbx + 0x4adc], cl
mov byte [rbx + 0x20], cl
mov byte [rbx + 0x38], cl
test edi, edi
mov byte [rbx + 0x4adf], cl
mov dword [rbx + 0x4af0], r12d
lea rdi, [rbx + 0x24]
sete al
mov byte [rbx + 0x4ade], al
cmp byte [rbx + 0x20], cl
jne 0x14002e099
mov r8, rdi
mov byte [rbx + 0x20], 1
mov rdx, rbp
mov rcx, rsi
call fcn.14002916c
xor ecx, ecx
test al, al
je 0x14002e0eb
cmp byte [rbx + 0x35], cl
jne 0x14002e092
cmp byte [rsi + 0xe88e], cl
je 0x14002e0eb
mov byte [rsi + 0xe88e], 1
cmp byte [rsp + 0x21], cl
jne 0x14002e0ad
cmp dword [rdi], 0x20000
jg 0x14002e0ad
inc dword [rsp + 0x24]
jmp 0x14002e0b9
mov byte [rbx + 0x4add], 1
mov byte [rsp + 0x21], 1
mov eax, dword [rbx + 0x30]
inc r12d
add eax, dword [rdi]
add r13d, eax
mov eax, r14d
sub eax, r13d
js 0x14002e0d1
cmp byte [rbx + 0x34], cl
jne 0x14002e0f0
cmp eax, 0x400
jl 0x14002e0f0
mov eax, dword [rsi + 0x30]
add eax, eax
cmp r12d, eax
jae 0x14002e0f0
mov edi, dword [rsp + 0x28]
jmp 0x14002dfef
mov byte [rsp + 0x20], 1
mov ebp, dword [rsp + 0x24]
xor edx, edx
mov eax, ebp
div dword [rsi + 0x30]
xor edx, edx
mov edi, eax
mov eax, ebp
div dword [rsi + 0x30]
test edx, edx
je 0x14002e10a
inc edi
mov ebx, ecx
test ebp, ebp
je 0x14002e16e
mov r14d, ecx
mov eax, r14d
lea r8, [rsp + 0x40]
shl rax, 4
inc r14d
add r8, rax
mov eax, ebx
imul rdx, rax, 0x4af8
mov eax, ebp
add rdx, qword [r15]
sub eax, ebx
cmp edi, eax
mov qword [r8], rdx
cmovb eax, edi
mov dword [r8 + 8], eax
cmp r12d, 1
jne 0x14002e151
mov rcx, rsi
call fcn.14002e358
jmp 0x14002e161
mov rcx, qword [rsi + 0x20]
lea rdx, [0x14002ebd0]
call fcn.14002418c
add ebx, edi
cmp ebx, ebp
jb 0x14002e113
mov r14d, dword [rsp + 0x30]
xor ecx, ecx
test r12d, r12d
je 0x14002e2a1
mov rcx, qword [rsi + 0x20]
call fcn.140024488
xor ecx, ecx
mov edi, ecx
test r12d, r12d
je 0x14002e1f6
mov ebx, ecx
mov rbp, qword [r15]
add rbp, rbx
cmp byte [rbp + 0x4add], cl
jne 0x14002e1b6
mov rdx, rbp
mov rcx, rsi
call fcn.140028b78
xor ecx, ecx
test al, al
je 0x14002e2ab
cmp byte [rbp + 0x4add], cl
je 0x14002e1cb
mov rdx, rbp
mov rcx, rsi
call fcn.14002ec10
xor ecx, ecx
test al, al
je 0x14002e2ab
cmp byte [rbp + 0x4adc], cl
jne 0x14002e2ab
cmp byte [rbp + 0x4adf], cl
jne 0x14002e224
cmp byte [rbp + 0x34], cl
jne 0x14002e2ab
inc edi
add rbx, 0x4af8
cmp edi, r12d
jb 0x14002e18b
cmp byte [rsp + 0x20], cl
jne 0x14002e2ab
mov ebx, r14d
sub ebx, r13d
cmp ebx, 0x400
jl 0x14002e331
cmp r13d, r14d
jge 0x14002df85
mov edi, dword [rsp + 0x28]
jmp 0x14002dfdb
mov eax, dword [rbp + 8]
sub eax, dword [rsi + 0x38]
add eax, dword [rbp + 0x18]
cmp r14d, eax
jle 0x14002e2ab
mov rcx, qword [rsi + 0x38]
sub r14d, eax
movsxd rdx, eax
movsxd r8, r14d
add rdx, rcx
call fcn.140032ed0
mov eax, dword [rbp + 0x2c]
xor ecx, ecx
sub eax, dword [rbp + 8]
add dword [rbp + 0x24], eax
mov qword [rbp + 0x2c], rcx
mov rax, qword [rsi + 0x38]
mov qword [rbp + 0x18], rax
mov dword [rbp + 8], ecx
test edi, edi
je 0x14002e29e
mov rcx, qword [r15]
mov r8d, 0x4af8
mov rdx, rbp
mov rbx, qword [rcx + 0x4ae0]
mov edi, dword [rcx + 0x4aec]
call fcn.140032ed0
mov rax, qword [r15]
xor ecx, ecx
mov qword [rax + 0x4ae0], rbx
mov rax, qword [r15]
mov dword [rax + 0x4aec], edi
mov byte [rbp + 0x4adf], cl
mov r13d, ecx
cmp byte [rsp + 0x20], cl
je 0x14002df85
mov rax, qword [rsi + 0xe940]
mov rcx, rsi
and qword [rsi + 0xc0], rax
call fcn.14002b508
mov rdx, qword [r15]
mov r8d, 0x4a9c
mov ecx, dword [rsp + 0x2c]
imul r9, rcx, 0x4af8
lea rcx, [rsi + 0xec]
movups xmm0, xmmword [r9 + rdx + 0x24]
movups xmmword [rsi + 0xd8], xmm0
mov eax, dword [r9 + rdx + 0x34]
add r9, 0x3c
add rdx, r9
mov dword [rsi + 0xe8], eax
call fcn.140032ed0
mov rcx, qword [rsp + 0x440]
xor rcx, rsp
call fcn.140030c60
lea r11, [rsp + 0x450]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
test ebx, ebx
js 0x14002e2ab
jle 0x14002e34f
mov rcx, qword [rsi + 0x38]
movsxd rdx, r13d
add rdx, rcx
movsxd r8, ebx
call fcn.140032ed0
xor ecx, ecx
mov r13d, ecx
jmp 0x14002df82