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

Disassembly:
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, 0x110
mov rax, qword [0x140372748]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov r14, qword [rcx]
mov rbx, rcx
mov ecx, dword [rcx + 8]
xor ebp, ebp
lea rax, [rbx + 0xfa24]
mov qword [rsp + 0xb8], rax
lea rdx, [rbx + 0xfa28]
mov qword [rsp + 0xc0], rdx
lea rsi, [rbx + 0xfa2c]
mov qword [rsp + 0xc8], rsi
lea r8, [rbx + 0xfa30]
mov qword [rsp + 0xd0], r8
lea r10, [rbx + 0xfa34]
mov qword [rsp + 0xd8], r10
lea r11, [rbx + 0xfa38]
mov qword [rsp + 0xe0], r11
lea r12, [rbx + 0xfa3c]
mov qword [rsp + 0xe8], r12
lea r13, [rbx + 0xfa40]
mov qword [rsp + 0xf0], r13
lea r9, [rbx + 0xfa44]
mov qword [rsp + 0xb0], r9
cmp ecx, 0xa
jne 0x14018b63f
mov dword [rax], ebp
mov dword [rdx], ebp
mov dword [rsi], ebp
mov dword [r8], ebp
mov dword [r10], ebp
mov dword [r11], ebp
mov dword [r12], ebp
mov dword [r13], ebp
mov dword [r9], ebp
mov qword [rbx + 0xfa48], rbp
mov qword [rbx + 0xfa50], rbp
mov qword [rbx + 0xfa58], rbp
mov qword [rbx + 0xfa60], rbp
mov qword [rbx + 0xfa68], rbp
mov qword [rbx + 0xfa70], rbp
mov qword [rbx + 0xfa78], rbp
mov qword [rbx + 0xfa80], rbp
mov qword [rbx + 0xfa88], rbp
jmp 0x14018b687
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xd8], r10
mov qword [rsp + 0xe0], r11
mov qword [rsp + 0xe8], r12
mov qword [rsp + 0xf0], r13
mov qword [rsp + 0xb0], r9
mov r15d, dword [rax]
mov eax, dword [rsi]
mov r9d, dword [rdx]
mov edx, dword [r13]
mov rsi, qword [rbx + 0xfa78]
mov r13d, dword [rbx + 0xfa68]
mov dword [rsp + 0xf8], eax
mov eax, dword [r8]
mov r8d, dword [rbx + 0xfa54]
mov dword [rsp + 0x68], eax
mov eax, dword [r10]
mov r10d, dword [r11]
mov r11d, dword [rbx + 0xfa50]
mov dword [rsp + 0x40], eax
mov eax, dword [r12]
mov r12d, dword [rbx + 0xfa64]
mov dword [rsp + 0x90], eax
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x44], edx
mov dword [rsp + 0x5c], r9d
mov dword [rsp + 0x60], r10d
mov edx, dword [rax]
mov eax, dword [rbx + 0xfa48]
mov dword [rsp + 0x50], eax
mov eax, dword [rbx + 0xfa4c]
mov dword [rsp + 0x78], eax
mov eax, dword [rbx + 0xfa58]
mov dword [rsp + 0x6c], eax
mov eax, dword [rbx + 0xfa5c]
mov dword [rsp + 0x54], eax
mov eax, dword [rbx + 0xfa60]
mov dword [rsp + 0xa8], eax
mov eax, dword [rbx + 0xfa6c]
mov dword [rsp + 0x7c], eax
mov eax, dword [rbx + 0xfa70]
mov dword [rsp + 0x80], eax
mov eax, dword [rbx + 0xfa74]
mov dword [rsp + 0x4c], eax
mov rax, qword [rbx + 0xfa80]
mov dword [rsp + 0x48], edx
mov rdx, qword [rbx + 0xfa88]
mov qword [rsp + 0x98], rax
mov dword [rsp + 0x64], r11d
mov dword [rsp + 0x58], r8d
mov dword [rsp + 0xa4], r12d
mov dword [rsp + 0xa0], r13d
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x70], rdx
cmp ecx, 0x1e
jg 0x14018c20e
je 0x14018c191
cmp ecx, 0x14
jg 0x14018bcd4
je 0x14018bc5d
cmp ecx, 0xf
jg 0x14018bab8
je 0x14018ba54
sub ecx, 0xa
je 0x14018b7ea
sub ecx, 1
je 0x14018b851
sub ecx, 1
je 0x14018b8ae
sub ecx, 1
je 0x14018b90f
cmp ecx, 1
jne 0x14018d360
mov dword [rbx + 8], 0xe
jmp 0x14018ba2b
mov dword [rbx + 8], 0xa
jmp 0x14018b830
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018b830
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018b7f3
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x42
je 0x14018b851
mov ebp, 0xfffffffb
jmp 0x14018d720
mov dword [rbx + 8], 0xb
jmp 0x14018b897
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018b897
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018b85a
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x5a
jne 0x14018b847
mov dword [rbx + 8], 0xc
jmp 0x14018b8f4
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018b8f4
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018b8b7
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x68
jne 0x14018b847
mov dword [rbx + 8], 0xd
jmp 0x14018b955
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018b955
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018b918
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
movzx edx, al
mov dword [rbx + 0x24], ecx
mov dword [rbx + 0x28], edx
lea eax, [rdx - 0x31]
cmp eax, 8
ja 0x14018b847
lea eax, [rdx - 0x30]
mov r8d, 1
mov dword [rbx + 0x28], eax
mov rcx, qword [r14 + 0x48]
mov rdi, qword [r14 + 0x38]
cmp byte [rbx + 0x2c], bpl
je 0x14018b9dd
imul edx, eax, 0x30d40
call rdi
imul edx, dword [rbx + 0x28], 0x186a0
mov r8d, 1
mov qword [rbx + 0xc58], rax
mov rcx, qword [r14 + 0x48]
sar edx, 1
call qword [r14 + 0x38]
mov qword [rbx + 0xc60], rax
cmp qword [rbx + 0xc58], rbp
je 0x14018b9d3
test rax, rax
jne 0x14018b7de
mov ebp, 0xfffffffd
jmp 0x14018d720
imul edx, eax, 0x61a80
call rdi
mov qword [rbx + 0xc50], rax
jmp 0x14018b9ca
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018ba2b
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018b9ee
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x17
je 0x14018d379
cmp al, 0x31
je 0x14018ba54
mov ebp, 0xfffffffc
jmp 0x14018d720
mov dword [rbx + 8], 0xf
jmp 0x14018ba98
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x14018d720
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rdi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018ba98
inc dword [rax + 0x10]
mov ecx, dword [rbx + 0x24]
cmp ecx, 8
jl 0x14018ba5d
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x41
jne 0x14018ba4a
mov dword [rbx + 8], 0x10
jmp 0x14018bb16
sub ecx, 0x10
je 0x14018baaf
sub ecx, 1
je 0x14018bb31
sub ecx, 1
je 0x14018bb92
cmp ecx, 1
je 0x14018bbf3
jmp 0x14018d360
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bb16
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bad9
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x14018ba4a
mov dword [rbx + 8], 0x11
jmp 0x14018bb77
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bb77
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bb3a
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x26
jne 0x14018ba4a
mov dword [rbx + 8], 0x12
jmp 0x14018bbd8
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bbd8
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bb9b
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x53
jne 0x14018ba4a
mov dword [rbx + 8], 0x13
jmp 0x14018bc39
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bc39
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bbfc
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x14018ba4a
inc dword [rbx + 0x30]
mov dword [rbx + 0xc68], ebp
mov dword [rbx + 8], 0x14
jmp 0x14018bca1
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x14018d720
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rdi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bca1
inc dword [rax + 0x10]
mov ecx, dword [rbx + 0x24]
cmp ecx, 8
jl 0x14018bc66
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc68]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc68], ecx
mov dword [rbx + 8], 0x15
jmp 0x14018bd63
sub ecx, 0x15
je 0x14018bcc8
sub ecx, 1
je 0x14018bd8a
sub ecx, 1
je 0x14018bdf7
sub ecx, 1
je 0x14018be64
sub ecx, 1
je 0x14018bec5
sub ecx, 1
je 0x14018bf2c
sub ecx, 1
je 0x14018bf93
sub ecx, 1
je 0x14018c01b
cmp ecx, 1
je 0x14018c0c5
jmp 0x14018d360
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bd63
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bd26
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc68]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc68], ecx
mov dword [rbx + 8], 0x16
jmp 0x14018bdd0
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bdd0
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bd93
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc68]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc68], ecx
mov dword [rbx + 8], 0x17
jmp 0x14018be3d
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018be3d
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018be00
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc68]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc68], ecx
mov dword [rbx + 8], 0x18
jmp 0x14018beaa
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018beaa
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14018be6d
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
and al, 1
mov dword [rbx + 0x24], ecx
mov byte [rbx + 0x14], al
mov dword [rbx + 0x38], ebp
mov dword [rbx + 8], 0x19
jmp 0x14018bf0b
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bf0b
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bece
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x38]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x38], ecx
mov dword [rbx + 8], 0x1a
jmp 0x14018bf72
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bf72
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bf35
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x38]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x38], ecx
mov dword [rbx + 8], 0x1b
jmp 0x14018bfd9
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018bfd9
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018bf9c
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x38]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x38], ecx
js 0x14018ba4a
imul eax, dword [rbx + 0x28], 0x186a0
add eax, 0xa
cmp ecx, eax
jg 0x14018ba4a
mov r15d, ebp
cmp r15d, 0x10
jge 0x14018c086
mov dword [rbx + 8], 0x1c
jmp 0x14018c061
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c061
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14018c024
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
movsxd rax, r15d
shr edx, cl
and dl, 1
mov dword [rbx + 0x24], ecx
inc r15d
mov byte [rax + rbx + 0xd7c], dl
jmp 0x14018c015
lea rcx, [rbx + 0xc7c]
xor edx, edx
mov r8d, 0x100
call sub.VCRUNTIME140.dll_memset
mov r15d, ebp
cmp r15d, 0x10
jge 0x14018c147
movsxd rax, r15d
cmp byte [rax + rbx + 0xd7c], bpl
je 0x14018c13f
mov r9d, ebp
mov dword [rsp + 0x5c], ebp
cmp r9d, 0x10
jge 0x14018c13f
mov dword [rbx + 8], 0x1d
jmp 0x14018c10b
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c10b
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14018c0ce
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x14018c135
mov eax, r15d
shl eax, 4
add eax, r9d
cdqe
mov byte [rax + rbx + 0xc7c], 1
inc r9d
mov dword [rsp + 0x5c], r9d
jmp 0x14018c0bf
inc r15d
jmp 0x14018c09d
mov dword [rbx + 0xc78], ebp
lea rdx, [rbx + 0xc7c]
mov ecx, ebp
cmp byte [rdx], bpl
je 0x14018c16f
movsxd rax, dword [rbx + 0xc78]
mov byte [rax + rbx + 0xd8c], cl
inc dword [rbx + 0xc78]
inc ecx
inc rdx
cmp ecx, 0x100
jl 0x14018c156
mov eax, dword [rbx + 0xc78]
test eax, eax
je 0x14018ba4a
add eax, 2
mov dword [rsp + 0x68], eax
mov dword [rbx + 8], 0x1e
jmp 0x14018c1d7
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c1d7
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 3
jl 0x14018c19a
mov r8d, dword [rbx + 0x20]
lea ecx, [rdi - 3]
shr r8d, cl
and r8d, 7
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x40], r8d
lea eax, [r8 - 2]
cmp eax, 4
ja 0x14018ba4a
mov dword [rbx + 8], 0x1f
jmp 0x14018c297
cmp ecx, 0x29
jg 0x14018d313
je 0x14018c8cc
cmp ecx, 0x24
jg 0x14018c7fe
je 0x14018c77b
sub ecx, 0x1f
je 0x14018c202
sub ecx, 1
je 0x14018c2e7
sub ecx, 1
je 0x14018c419
sub ecx, 1
je 0x14018c49d
cmp ecx, 1
je 0x14018c4fa
jmp 0x14018d360
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c297
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 0xf
jl 0x14018c25a
mov r10d, dword [rbx + 0x20]
lea ecx, [rdi - 0xf]
mov r11d, dword [rsp + 0x40]
shr r10d, cl
and r10d, 0x7fff
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x60], r10d
cmp r10d, 1
jae 0x14018c2cd
mov ebp, 0xfffffffc
jmp 0x14018d725
mov r15d, ebp
mov edx, 0x4652
cmp r15d, r10d
jge 0x14018c381
mov r9d, ebp
mov dword [rsp + 0x5c], ebp
jmp 0x14018c2ec
mov r11d, dword [rsp + 0x40]
lea r8, [rbx + 0x20]
mov rsi, r8
mov dword [rbx + 8], 0x20
jmp 0x14018c338
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x14018d725
mov rax, qword [rdi]
mov edx, dword [rsi]
shl edx, 8
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
or edx, ecx
mov dword [rsi], edx
inc qword [rdi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c335
inc dword [rax + 0x10]
mov rsi, r8
mov ecx, dword [rbx + 0x24]
cmp ecx, 1
jl 0x14018c2fc
mov eax, dword [r8]
dec ecx
shr eax, cl
mov rsi, r8
mov dword [rbx + 0x24], ecx
test al, 1
je 0x14018c364
inc r9d
mov dword [rsp + 0x5c], r9d
cmp r9d, r11d
jge 0x14018c2c3
jmp 0x14018c2f3
mov edx, 0x4652
cmp r15d, edx
jge 0x14018c379
movsxd rax, r15d
mov byte [rax + rbx + 0x651e], r9b
inc r15d
jmp 0x14018c2d5
mov r8d, dword [rsp + 0x40]
cmp r10d, edx
mov cl, bpl
cmovg r10d, edx
mov dword [rsp + 0x60], r10d
test r8d, r8d
jle 0x14018c3ae
movzx eax, cl
mov byte [rsp + rax + 0xf8], cl
inc cl
movzx eax, cl
cmp eax, r8d
jl 0x14018c39a
mov r15d, ebp
test r10d, r10d
jle 0x14018c402
lea rdi, [rbx + 0x1ecc]
mov r8d, r10d
mov r15d, r10d
movzx edx, byte [rdi + 0x4652]
lea rcx, [rsp + 0xf8]
add rcx, rdx
mov sil, byte [rcx]
test dl, dl
je 0x14018c3e9
mov al, byte [rcx - 1]
mov byte [rcx], al
dec rcx
add dl, 0xff
jne 0x14018c3dc
mov byte [rdi], sil
inc rdi
mov byte [rsp + 0xf8], sil
sub r8, 1
jne 0x14018c3c3
mov r8d, dword [rsp + 0x40]
mov r11d, dword [rsp + 0x68]
mov esi, ebp
mov dword [rsp + 0xf8], esi
cmp esi, r8d
jge 0x14018c5a0
mov dword [rbx + 8], 0x21
jmp 0x14018c45f
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c45f
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 5
jl 0x14018c422
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 5]
mov esi, dword [rsp + 0xf8]
mov r15d, ebp
shr edx, cl
and edx, 0x1f
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x54], edx
mov r11d, dword [rsp + 0x68]
cmp r15d, r11d
jge 0x14018c594
lea eax, [rdx - 1]
cmp eax, 0x13
ja 0x14018ba4a
mov dword [rbx + 8], 0x22
jmp 0x14018c4e3
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c4e3
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14018c4a6
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x14018c56a
mov dword [rbx + 8], 0x23
jmp 0x14018c540
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c540
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14018c503
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
mov edx, dword [rsp + 0x54]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
jne 0x14018c55f
inc edx
jmp 0x14018c561
dec edx
mov dword [rsp + 0x54], edx
jmp 0x14018c491
mov ecx, dword [rsp + 0x54]
movsxd rsi, dword [rsp + 0xf8]
movsxd rdx, r15d
imul rax, rsi, 0x102
add rax, rbx
inc r15d
mov byte [rdx + rax + 0xab70], cl
mov edx, ecx
jmp 0x14018c483
mov r8d, dword [rsp + 0x40]
inc esi
jmp 0x14018c409
mov dword [rsp + 0xf8], ebp
movsxd r15, r8d
test r8d, r8d
jle 0x14018c674
lea r12, [rbx + 0xfa0c]
mov r13d, ebp
lea r14, [rbx + 0xab70]
mov esi, 0x20
mov edi, ebp
test r11d, r11d
jle 0x14018c5f0
mov rdx, r14
mov r8d, r11d
movzx ecx, byte [rdx]
mov eax, edi
cmp ecx, eax
mov edi, ecx
cmovle edi, eax
cmp ecx, esi
cmovl esi, ecx
inc rdx
sub r8, 1
jne 0x14018c5d6
movsxd rax, r13d
lea r8, [rbx + 0xe1dc]
imul rcx, rax, 0x408
imul r9, rax, 0x102
mov dword [rsp + 0x30], r11d
lea rdx, [rbx + 0xc9ac]
add r8, rcx
mov dword [rsp + 0x28], edi
add rdx, rcx
mov dword [rsp + 0x20], esi
add rcx, 0xb17c
add rcx, rbx
add r9, 0xab70
add r9, rbx
call fcn.14018f274
mov r11d, dword [rsp + 0x68]
inc r13d
mov dword [r12], esi
add r14, 0x102
add r12, 4
sub r15, 1
jne 0x14018c5c4
mov r12d, dword [rsp + 0xa4]
mov dword [rsp + 0xf8], r13d
mov r13d, dword [rsp + 0xa0]
mov eax, dword [rbx + 0xc78]
lea rcx, [rbx + 0x44]
inc eax
xor edx, edx
mov dword [rsp + 0x90], eax
mov r8d, 0x400
imul eax, dword [rbx + 0x28], 0x186a0
mov r14d, ebp
mov dword [rsp + 0x78], eax
call sub.VCRUNTIME140.dll_memset
mov ecx, 0xf
lea r10, [rbx + 0x1e8b]
mov r8d, 0x1000
lea r9, [rbx + 0x1ec8]
mov r15d, 0x100
mov dil, cl
sub r8d, 0x10
shl dil, 4
mov rsi, r10
sub r10, 0x10
mov edx, 0xf
lea eax, [rdi + rdx]
mov byte [rsi], al
dec rsi
sub edx, 1
jns 0x14018c6d8
mov dword [r9], r8d
sub r9, 4
sub ecx, 1
jns 0x14018c6c1
mov r10d, dword [rsp + 0x60]
mov r11d, ebp
mov dword [rsp + 0x64], ebp
mov r8d, ebp
mov dword [rsp + 0x44], ebp
test r10d, r10d
jg 0x14018c718
mov ebp, 0xfffffffc
mov r11d, dword [rsp + 0x40]
jmp 0x14018d72f
movzx eax, byte [rbx + 0x1ecc]
mov r14d, 0x31
imul rcx, rax, 0x408
mov edx, dword [rbx + rax*4 + 0xfa0c]
mov r12d, edx
mov dword [rsp + 0x80], eax
lea rax, [rbx + 0xb17c]
add rax, rcx
mov dword [rsp + 0x4c], edx
mov qword [rsp + 0x88], rax
lea rax, [rbx + 0xe1dc]
add rax, rcx
mov dword [rsp + 0x48], r14d
mov qword [rsp + 0x70], rax
lea rax, [rbx + 0xc9ac]
add rax, rcx
mov qword [rsp + 0x98], rax
jmp 0x14018c785
mov r8d, dword [rsp + 0x44]
mov r14d, dword [rsp + 0x48]
mov dword [rbx + 8], 0x24
jmp 0x14018c7cb
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018c70e
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c7cb
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r12d
jl 0x14018c78e
mov r13d, dword [rbx + 0x20]
sub edi, r12d
mov r9, qword [rsp + 0x88]
mov ecx, edi
shr r13d, cl
mov eax, 1
mov ecx, r12d
mov dword [rbx + 0x24], edi
shl eax, cl
dec eax
and r13d, eax
jmp 0x14018c896
sub ecx, 0x25
je 0x14018c823
sub ecx, 1
je 0x14018ca69
sub ecx, 1
je 0x14018cafd
cmp ecx, 1
je 0x14018cea8
jmp 0x14018d360
mov r8d, dword [rsp + 0x44]
mov r9, rsi
mov r14d, dword [rsp + 0x48]
mov dword [rbx + 8], 0x25
jmp 0x14018c876
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018c70e
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c876
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14018c839
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr edx, cl
add r13d, r13d
and edx, 1
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x7c], edx
or r13d, edx
cmp r12d, 0x14
jg 0x14018c709
movsxd rcx, r12d
cmp r13d, dword [r9 + rcx*4]
jle 0x14018c8ae
inc r12d
jmp 0x14018c830
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
jbe 0x14018c970
jmp 0x14018c709
mov edi, dword [rbx + 0x24]
mov dword [rbx + 8], 0x29
cmp edi, 1
jge 0x14018c928
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018c918
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14018c8db
mov rsi, qword [rsp + 0x88]
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr edx, cl
add r13d, r13d
and edx, 1
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x7c], edx
or r13d, edx
cmp r12d, 0x14
jg 0x14018ba4a
movsxd rcx, r12d
cmp r13d, dword [rsi + rcx*4]
jg 0x14018cf21
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x14018ba4a
mov r14, qword [rsp + 0x70]
cdqe
mov r9, r14
mov eax, dword [r14 + rax*4]
mov r14d, dword [rsp + 0x4c]
mov dword [rsp + 0x50], eax
cmp eax, dword [rsp + 0x90]
je 0x14018cf34
cmp eax, 1
ja 0x14018cc4e
or r8d, 0xffffffff
mov dword [rsp + 0x58], r8d
lea edx, [r8 + 2]
mov dword [rsp + 0x6c], edx
jmp 0x14018c9b4
mov edx, dword [rsp + 0x6c]
cmp edx, 0x200000
jge 0x14018ba4a
test eax, eax
jne 0x14018c9c9
add r8d, edx
jmp 0x14018c9d2
cmp eax, 1
jne 0x14018c9d7
lea r8d, [r8 + rdx*2]
mov dword [rsp + 0x58], r8d
mov esi, dword [rsp + 0x48]
add edx, edx
mov dword [rsp + 0x6c], edx
test esi, esi
jne 0x14018ca5e
mov edx, dword [rsp + 0x44]
inc edx
mov dword [rsp + 0x44], edx
cmp edx, r10d
jge 0x14018cf29
movsxd rax, edx
lea r14, [rbx + 0xe1dc]
mov esi, 0x32
movzx eax, byte [rax + rbx + 0x1ecc]
mov dword [rsp + 0x80], eax
mov ecx, dword [rbx + rax*4 + 0xfa0c]
mov dword [rsp + 0x4c], ecx
imul rcx, rax, 0x408
lea rax, [rbx + 0xb17c]
add r14, rcx
add rax, rcx
mov qword [rsp + 0x70], r14
lea r14, [rbx + 0xc9ac]
mov r9, qword [rsp + 0x70]
add r14, rcx
mov qword [rsp + 0x98], r14
mov r14d, dword [rsp + 0x4c]
mov qword [rsp + 0x88], rax
dec esi
mov r12d, r14d
mov dword [rsp + 0x48], esi
jmp 0x14018ca71
mov r14d, dword [rsp + 0x4c]
mov r9, rdx
mov dword [rbx + 8], 0x26
jmp 0x14018cab7
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018cab7
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r12d
jl 0x14018ca7a
mov r13d, dword [rbx + 0x20]
sub edi, r12d
mov ecx, edi
mov dword [rbx + 0x24], edi
shr r13d, cl
mov eax, 1
mov ecx, r12d
shl eax, cl
dec eax
and r13d, eax
cmp r12d, 0x14
jg 0x14018ba4a
mov rax, qword [rsp + 0x88]
movsxd rcx, r12d
cmp r13d, dword [rax + rcx*4]
jle 0x14018cb70
inc r12d
jmp 0x14018cb05
mov r14d, dword [rsp + 0x4c]
mov r9, rdx
mov dword [rbx + 8], 0x27
jmp 0x14018cb4b
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018cb4b
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14018cb0e
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr edx, cl
add r13d, r13d
and edx, 1
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x7c], edx
or r13d, edx
jmp 0x14018cadd
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x14018ba4a
cdqe
mov eax, dword [r9 + rax*4]
mov dword [rsp + 0x50], eax
test eax, eax
je 0x14018c9b0
cmp eax, 1
je 0x14018c9b0
movsxd rax, dword [rbx + 0x1e8c]
inc r8d
movsxd rsi, dword [rsp + 0x78]
mov dword [rsp + 0x58], r8d
movsxd rdx, r11d
movzx ecx, byte [rax + rbx + 0xe8c]
mov eax, dword [rsp + 0x50]
movzx edi, byte [rcx + rbx + 0xd8c]
add dword [rbx + rdi*4 + 0x44], r8d
cmp byte [rbx + 0x2c], bpl
je 0x14018cc11
test r8d, r8d
jle 0x14018c987
cmp rdx, rsi
jge 0x14018ba4a
mov rax, qword [rbx + 0xc58]
inc r11d
dec r8d
mov dword [rsp + 0x64], r11d
mov dword [rsp + 0x58], r8d
mov word [rax + rdx*2], di
inc rdx
test r8d, r8d
jg 0x14018cbe3
jmp 0x14018cc45
test r8d, r8d
jle 0x14018c987
cmp rdx, rsi
jge 0x14018ba4a
mov rax, qword [rbx + 0xc50]
inc r11d
dec r8d
mov dword [rsp + 0x64], r11d
mov dword [rsp + 0x58], r8d
mov dword [rax + rdx*4], edi
inc rdx
test r8d, r8d
jg 0x14018cc1a
mov eax, dword [rsp + 0x50]
jmp 0x14018c987
cmp r11d, dword [rsp + 0x78]
jge 0x14018ba4a
lea edx, [rax - 1]
cmp edx, 0x10
jae 0x14018ccff
movsxd r8, dword [rbx + 0x1e8c]
lea edi, [r8 + rdx]
mov r11b, byte [rdi + rbx + 0xe8c]
cmp edx, 3
jbe 0x14018cccf
lea esi, [rdx - 4]
shr esi, 2
inc esi
movsxd rcx, edi
mov al, byte [rcx + rbx + 0xe8b]
mov byte [rcx + rbx + 0xe8c], al
mov al, byte [rcx + rbx + 0xe8a]
mov byte [rcx + rbx + 0xe8b], al
mov al, byte [rcx + rbx + 0xe89]
mov byte [rcx + rbx + 0xe8a], al
mov al, byte [rcx + rbx + 0xe88]
mov byte [rcx + rbx + 0xe89], al
mov eax, 0xfffffffc
add edx, eax
add edi, eax
sub rsi, 1
jne 0x14018cc85
test edx, edx
je 0x14018ccf2
lea ecx, [r8 + rdx]
mov edi, edx
lea edx, [rcx - 1]
mov al, byte [rdx + rbx + 0xe8c]
mov byte [rcx + rbx + 0xe8c], al
mov ecx, edx
sub rdi, 1
jne 0x14018ccd9
mov byte [r8 + rbx + 0xe8c], r11b
jmp 0x14018cdd8
mov eax, edx
lea rdi, [rbx + 0x1e8c]
shr eax, 4
mov r14d, 0xf
mov esi, eax
and edx, r14d
lea rdi, [rdi + rax*4]
mov eax, dword [rdi]
add edx, eax
movsxd rcx, edx
mov r11b, byte [rcx + rbx + 0xe8c]
jmp 0x14018cd40
mov al, byte [rcx + rbx + 0xe8b]
dec edx
mov byte [rcx + rbx + 0xe8c], al
dec rcx
mov eax, dword [rdi]
cmp edx, eax
jg 0x14018cd2b
inc eax
mov dword [rdi], eax
test esi, esi
je 0x14018cd6f
movsxd rcx, dword [rdi]
dec esi
lea eax, [rcx - 1]
mov dword [rdi], eax
lea rdi, [rdi - 4]
movsxd rax, dword [rdi]
mov al, byte [rax + rbx + 0xe9b]
mov byte [rcx + rbx + 0xe8b], al
test esi, esi
jg 0x14018cd4c
movsxd rcx, dword [rbx + 0x1e8c]
lea eax, [rcx - 1]
mov dword [rbx + 0x1e8c], eax
mov byte [rcx + rbx + 0xe8b], r11b
cmp dword [rbx + 0x1e8c], ebp
jne 0x14018cdd8
mov r9, r14
lea r10, [rbx + 0x1e8b]
mov r8d, 0x1000
lea rdx, [rbx + 0x1ec8]
sub r8d, 0x10
mov rsi, r10
sub r10, 0x10
mov edi, r14d
mov eax, dword [rdx]
add eax, edi
cdqe
mov cl, byte [rax + rbx + 0xe8c]
mov byte [rsi], cl
dec rsi
sub edi, 1
jns 0x14018cdb4
mov dword [rdx], r8d
sub rdx, 4
sub r9, 1
jns 0x14018cda6
movzx ecx, r11b
movsxd r11, dword [rsp + 0x64]
movzx eax, byte [rcx + rbx + 0xd8c]
inc dword [rbx + rax*4 + 0x44]
movzx eax, byte [rcx + rbx + 0xd8c]
cmp byte [rbx + 0x2c], bpl
je 0x14018ce0c
movzx ecx, ax
mov rax, qword [rbx + 0xc58]
mov word [rax + r11*2], cx
jmp 0x14018ce19
mov ecx, eax
mov rax, qword [rbx + 0xc50]
mov dword [rax + r11*4], ecx
mov esi, dword [rsp + 0x48]
inc r11d
mov r10d, dword [rsp + 0x60]
mov dword [rsp + 0x64], r11d
test esi, esi
jne 0x14018ce9d
mov edx, dword [rsp + 0x44]
inc edx
mov dword [rsp + 0x44], edx
cmp edx, r10d
jge 0x14018cf29
movsxd rax, edx
mov esi, 0x32
movzx eax, byte [rax + rbx + 0x1ecc]
mov dword [rsp + 0x80], eax
mov ecx, dword [rbx + rax*4 + 0xfa0c]
mov dword [rsp + 0x4c], ecx
imul rcx, rax, 0x408
lea rax, [rbx + 0xb17c]
add rax, rcx
mov qword [rsp + 0x88], rax
lea rax, [rbx + 0xe1dc]
add rax, rcx
mov qword [rsp + 0x70], rax
lea rax, [rbx + 0xc9ac]
add rax, rcx
mov qword [rsp + 0x98], rax
mov r12d, dword [rsp + 0x4c]
dec esi
mov dword [rsp + 0x48], esi
mov dword [rbx + 8], 0x28
jmp 0x14018ceee
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018ceee
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r12d
jl 0x14018ceb1
mov r13d, dword [rbx + 0x20]
sub edi, r12d
mov rsi, qword [rsp + 0x88]
mov ecx, edi
shr r13d, cl
mov eax, 1
mov ecx, r12d
mov dword [rbx + 0x24], edi
shl eax, cl
dec eax
and r13d, eax
jmp 0x14018c940
inc r12d
jmp 0x14018c8cc
mov r8d, edx
mov r14d, esi
jmp 0x14018c709
cmp dword [rbx + 0x38], ebp
jl 0x14018ba4a
cmp dword [rbx + 0x38], r11d
jge 0x14018ba4a
mov r15d, ebp
mov r14d, 1
movsxd rax, r15d
cmp dword [rbx + rax*4 + 0x44], ebp
jl 0x14018ba4a
cmp dword [rbx + rax*4 + 0x44], r11d
jg 0x14018ba4a
add r15d, r14d
cmp r15d, 0xff
jle 0x14018cf50
mov r8d, 0x100
lea rdx, [rbx + 0x44c]
lea r10, [rbx + 0x448]
mov rdi, rdx
mov ecx, r8d
mov dword [r10], ebp
lea rsi, [rbx + 0x44]
rep movsd dword [rdi], dword [rsi]
mov ecx, r8d
mov eax, dword [rdx - 4]
add dword [rdx], eax
lea rdx, [rdx + 4]
sub rcx, r14
jne 0x14018cf9a
mov r15d, ebp
movsxd rax, r15d
mov ecx, dword [rbx + rax*4 + 0x448]
test ecx, ecx
js 0x14018ba4a
cmp ecx, r11d
jg 0x14018ba4a
add r15d, r14d
cmp r15d, r8d
jle 0x14018cfab
mov r15d, r14d
movsxd rcx, r15d
mov eax, dword [rbx + rcx*4 + 0x448]
cmp dword [rbx + rcx*4 + 0x444], eax
jg 0x14018ba4a
add r15d, r14d
cmp r15d, r8d
jle 0x14018cfd1
or dword [rbx + 0xc70], 0xffffffff
mov dword [rbx + 0x10], ebp
mov byte [rbx + 0xc], bpl
mov dword [rbx + 8], 2
cmp byte [rbx + 0x2c], bpl
je 0x14018d245
lea rdi, [rbx + 0x84c]
mov rsi, r10
mov ecx, 0x101
mov r8d, ebp
rep movsd dword [rdi], dword [rsi]
test r11d, r11d
jle 0x14018d091
mov rdi, rbp
mov rcx, qword [rbx + 0xc58]
mov rdx, rdi
sar rdx, 1
movzx r9d, byte [rcx + rdi*2]
movzx eax, word [rbx + r9*4 + 0x84c]
mov word [rcx + rdi*2], ax
add rdx, qword [rbx + 0xc60]
mov ecx, dword [rbx + r9*4 + 0x84c]
mov sil, byte [rdx]
test r14b, r8b
jne 0x14018d06d
sar ecx, 0x10
and sil, 0xf0
or cl, sil
jmp 0x14018d07c
mov eax, ecx
sar ecx, 0xc
sar eax, 0xc
xor al, sil
and al, 0xf
xor cl, al
mov byte [rdx], cl
add r8d, r14d
add dword [rbx + r9*4 + 0x84c], r14d
add rdi, r14
cmp r8d, r11d
jl 0x14018d02b
movsxd r15, dword [rbx + 0x38]
mov rax, qword [rbx + 0xc60]
mov rcx, r15
sar rcx, 1
movzx r11d, byte [rcx + rax]
mov ecx, r15d
mov rax, qword [rbx + 0xc58]
and ecx, r14d
shl ecx, 2
shr r11d, cl
and r11d, 0xf
movzx ecx, word [rax + r15*2]
shl r11d, 0x10
or r11d, ecx
mov rax, qword [rbx + 0xc60]
mov esi, r11d
mov rdx, qword [rbx + 0xc58]
and esi, r14d
mov edi, r11d
mov r8d, r11d
shr r8, 1
lea ecx, [rsi*4]
movzx r9d, byte [r8 + rax]
movzx eax, word [rdx + rdi*2]
shr r9d, cl
and r9d, 0xf
mov word [rdx + rdi*2], r15w
mov rdx, qword [rbx + 0xc60]
shl r9d, 0x10
or r9d, eax
mov cl, byte [rdx + r8]
test esi, esi
jne 0x14018d125
sar r15d, 0x10
and cl, 0xf0
or r15b, cl
jmp 0x14018d136
mov eax, r15d
sar r15d, 0xc
sar eax, 0xc
xor al, cl
and al, 0xf
xor r15b, al
mov byte [rdx + r8], r15b
mov r15d, r11d
mov ecx, dword [rbx + 0x38]
mov r11d, r9d
cmp r15d, ecx
jne 0x14018d0ca
imul eax, dword [rbx + 0x28], 0x186a0
mov dword [rsp + 0x5c], r9d
mov dword [rbx + 0x3c], ecx
mov dword [rbx + 0x444], ebp
cmp byte [rbx + 0x14], bpl
je 0x14018d1f2
mov qword [rbx + 0x18], rbp
cmp ecx, eax
jae 0x14018d2ed
mov rdx, r10
call fcn.140187ff8
mov edi, dword [rbx + 0x3c]
mov esi, eax
mov dword [rbx + 0x40], eax
mov ecx, edi
mov rax, qword [rbx + 0xc60]
shr rcx, 1
movzx edx, byte [rcx + rax]
mov cl, byte [rbx + 0x3c]
mov rax, qword [rbx + 0xc58]
and cl, r14b
shl cl, 2
shr edx, cl
and edx, 0xf
movzx ecx, word [rax + rdi*2]
add dword [rbx + 0x444], r14d
shl edx, 0x10
or edx, ecx
mov dword [rbx + 0x3c], edx
mov edx, dword [rbx + 0x18]
test edx, edx
jne 0x14018d1e0
movsxd rcx, dword [rbx + 0x1c]
lea rdx, [0x140371af0]
mov edx, dword [rdx + rcx*4]
lea eax, [rcx + 1]
mov dword [rbx + 0x1c], eax
cmp eax, 0x200
jne 0x14018d1e0
mov dword [rbx + 0x1c], ebp
mov ecx, ebp
lea eax, [rdx - 1]
cmp eax, r14d
sete cl
xor ecx, esi
jmp 0x14018d2de
cmp ecx, eax
jae 0x14018d2ed
mov rdx, r10
call fcn.140187ff8
mov edi, dword [rbx + 0x3c]
mov dword [rbx + 0x40], eax
mov ecx, edi
mov rax, qword [rbx + 0xc60]
shr rcx, 1
movzx edx, byte [rcx + rax]
mov cl, byte [rbx + 0x3c]
mov rax, qword [rbx + 0xc58]
and cl, r14b
shl cl, 2
shr edx, cl
and edx, 0xf
movzx ecx, word [rax + rdi*2]
shl edx, 0x10
or edx, ecx
add dword [rbx + 0x444], r14d
mov dword [rbx + 0x3c], edx
jmp 0x14018d720
mov r15d, ebp
test r11d, r11d
jle 0x14018d280
mov rsi, rbp
mov rdx, qword [rbx + 0xc50]
mov eax, r15d
shl eax, 8
add r15d, r14d
movzx edi, byte [rdx + rsi]
lea rsi, [rsi + 4]
movsxd rcx, dword [rbx + rdi*4 + 0x448]
or dword [rdx + rcx*4], eax
add dword [rbx + rdi*4 + 0x448], r14d
cmp r15d, r11d
jl 0x14018d250
movsxd rax, dword [rbx + 0x38]
mov rdx, qword [rbx + 0xc50]
mov ecx, dword [rdx + rax*4]
imul eax, dword [rbx + 0x28], 0x186a0
shr ecx, 8
mov dword [rbx + 0x3c], ecx
mov dword [rbx + 0x444], ebp
cmp byte [rbx + 0x14], bpl
je 0x14018d2e9
mov qword [rbx + 0x18], rbp
cmp ecx, eax
jae 0x14018d2ed
mov ecx, dword [rdx + rcx*4]
mov dword [rbx + 0x3c], ecx
movzx edx, cl
shr ecx, 8
mov dword [rbx + 0x3c], ecx
mov ecx, ebp
mov dword [rbx + 0x40], edx
mov dword [rbx + 0x444], r14d
mov eax, dword [0x140371af0]
dec eax
mov dword [rbx + 0x1c], r14d
cmp eax, r14d
sete cl
xor ecx, edx
mov dword [rbx + 0x18], eax
mov dword [rbx + 0x40], ecx
jmp 0x14018d720
cmp ecx, eax
jb 0x14018d2f5
mov eax, r14d
jmp 0x14018d84b
mov ecx, dword [rdx + rcx*4]
mov dword [rbx + 0x3c], ecx
movzx eax, cl
shr ecx, 8
mov dword [rbx + 0x3c], ecx
mov dword [rbx + 0x40], eax
mov dword [rbx + 0x444], r14d
jmp 0x14018d720
sub ecx, 0x2a
je 0x14018d379
sub ecx, 1
je 0x14018d3da
sub ecx, 1
je 0x14018d43b
sub ecx, 1
je 0x14018d49c
sub ecx, 1
je 0x14018d4fd
sub ecx, 1
je 0x14018d564
sub ecx, 1
je 0x14018d5d1
sub ecx, 1
je 0x14018d63e
cmp ecx, 1
je 0x14018d6ab
mov ecx, 0xfa1
call fcn.14002b1e5
mov ecx, 0xfa2
call fcn.14002b1e5
jmp 0x14018d720
mov dword [rbx + 8], 0x2a
jmp 0x14018d3bf
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d3bf
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d382
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x72
jne 0x14018ba4a
mov dword [rbx + 8], 0x2b
jmp 0x14018d420
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d420
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d3e3
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x45
jne 0x14018ba4a
mov dword [rbx + 8], 0x2c
jmp 0x14018d481
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d481
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d444
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x38
jne 0x14018ba4a
mov dword [rbx + 8], 0x2d
jmp 0x14018d4e2
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d4e2
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d4a5
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x50
jne 0x14018ba4a
mov dword [rbx + 8], 0x2e
jmp 0x14018d543
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d543
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d506
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x90
jne 0x14018ba4a
mov dword [rbx + 0xc6c], ebp
mov dword [rbx + 8], 0x2f
jmp 0x14018d5aa
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d5aa
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d56d
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc6c]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc6c], ecx
mov dword [rbx + 8], 0x30
jmp 0x14018d617
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d617
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d5da
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc6c]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc6c], ecx
mov dword [rbx + 8], 0x31
jmp 0x14018d684
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d684
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d647
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc6c]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc6c], ecx
mov dword [rbx + 8], 0x32
jmp 0x14018d6ed
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14018d720
mov rax, qword [rsi]
mov edx, dword [rbx + 0x20]
shl edx, 8
movzx ecx, byte [rax]
lea eax, [rdi + 8]
mov dword [rbx + 0x24], eax
or edx, ecx
mov dword [rbx + 0x20], edx
inc qword [rsi]
mov rax, qword [rbx]
dec dword [rax + 8]
mov rax, qword [rbx]
inc dword [rax + 0xc]
mov rax, qword [rbx]
cmp dword [rax + 0xc], ebp
jne 0x14018d6ed
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14018d6b4
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov ebp, 4
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc6c]
shl eax, 8
or ecx, eax
mov dword [rbx + 8], 1
mov dword [rbx + 0xc6c], ecx
mov r11d, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xc0]
mov dword [rbx + 0xfa64], r12d
mov dword [rbx + 0xfa68], r13d
mov dword [rax], r15d
mov eax, dword [rsp + 0x5c]
mov dword [rcx], eax
mov rcx, qword [rsp + 0xc8]
mov eax, dword [rsp + 0xf8]
mov dword [rcx], eax
mov rax, qword [rsp + 0xd0]
mov ecx, dword [rsp + 0x68]
mov dword [rax], ecx
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xe0]
mov dword [rax], r11d
mov eax, dword [rsp + 0x60]
mov dword [rcx], eax
mov rax, qword [rsp + 0xe8]
mov ecx, dword [rsp + 0x90]
mov dword [rax], ecx
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rsp + 0x64]
mov dword [rbx + 0xfa50], ecx
mov ecx, dword [rsp + 0x58]
mov dword [rax], r8d
mov rax, qword [rsp + 0xb0]
mov dword [rbx + 0xfa54], ecx
mov ecx, dword [rsp + 0x6c]
mov dword [rbx + 0xfa58], ecx
mov ecx, dword [rsp + 0x54]
mov dword [rax], r14d
mov eax, dword [rsp + 0x50]
mov dword [rbx + 0xfa48], eax
mov eax, dword [rsp + 0x78]
mov dword [rbx + 0xfa4c], eax
mov eax, dword [rsp + 0x4c]
mov dword [rbx + 0xfa74], eax
mov rax, qword [rsp + 0x88]
mov qword [rbx + 0xfa78], rax
mov rax, qword [rsp + 0x98]
mov dword [rbx + 0xfa5c], ecx
mov ecx, dword [rsp + 0xa8]
mov qword [rbx + 0xfa80], rax
mov rax, qword [rsp + 0x70]
mov dword [rbx + 0xfa60], ecx
mov ecx, dword [rsp + 0x7c]
mov dword [rbx + 0xfa6c], ecx
mov ecx, dword [rsp + 0x80]
mov qword [rbx + 0xfa88], rax
mov eax, ebp
mov dword [rbx + 0xfa70], ecx
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.14018fc10
lea r11, [rsp + 0x110]
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