Function at 0x140022e48
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, 0xc0
mov rax, qword [0x14016a900]
xor rax, rsp
mov qword [rsp + 0xb8], rax
mov r9, qword [rcx]
mov rbx, rcx
mov ecx, dword [rcx + 8]
xor ebp, ebp
lea rax, [rbx + 0xfa2c]
mov qword [rsp + 0xa8], rax
cmp ecx, 0xa
jne 0x140022ef7
mov dword [rax], ebp
mov qword [rbx + 0xfa30], rbp
mov qword [rbx + 0xfa38], rbp
mov qword [rbx + 0xfa40], rbp
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
mov qword [rbx + 0xfa90], rbp
jmp 0x140022eff
mov qword [rsp + 0xa8], rax
mov r14d, dword [rax]
mov eax, dword [rbx + 0xfa34]
mov esi, dword [rbx + 0xfa30]
mov r10d, dword [rbx + 0xfa4c]
mov r11d, dword [rbx + 0xfa5c]
mov edx, dword [rbx + 0xfa64]
mov r8d, dword [rbx + 0xfa6c]
mov r12d, dword [rbx + 0xfa70]
mov r13d, dword [rbx + 0xfa48]
mov r15d, dword [rbx + 0xfa58]
mov dword [rsp + 0xb0], eax
mov eax, dword [rbx + 0xfa38]
mov dword [rsp + 0x60], eax
mov eax, dword [rbx + 0xfa3c]
mov dword [rsp + 0x64], eax
mov eax, dword [rbx + 0xfa40]
mov dword [rsp + 0x4c], eax
mov eax, dword [rbx + 0xfa44]
mov dword [rsp + 0x90], eax
mov eax, dword [rbx + 0xfa50]
mov dword [rsp + 0x68], eax
mov eax, dword [rbx + 0xfa54]
mov dword [rsp + 0x54], eax
mov eax, dword [rbx + 0xfa60]
mov dword [rsp + 0x78], eax
mov eax, dword [rbx + 0xfa68]
mov dword [rsp + 0xa4], eax
mov eax, dword [rbx + 0xfa74]
mov dword [rsp + 0x7c], eax
mov eax, dword [rbx + 0xfa78]
mov dword [rsp + 0x80], eax
mov eax, dword [rbx + 0xfa7c]
mov dword [rsp + 0x5c], eax
mov rax, qword [rbx + 0xfa80]
mov qword [rsp + 0x88], rax
mov rax, qword [rbx + 0xfa88]
mov qword [rsp + 0x98], rax
mov rax, qword [rbx + 0xfa90]
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x50], r10d
mov dword [rsp + 0x58], r11d
mov dword [rsp + 0x44], edx
mov dword [rsp + 0x48], r8d
mov dword [rsp + 0xa0], r12d
cmp ecx, 0x1e
jg 0x140023a4c
je 0x1400239da
cmp ecx, 0x14
jg 0x14002351e
je 0x1400234a7
cmp ecx, 0xf
jg 0x140023302
je 0x14002329e
sub ecx, 0xa
je 0x140023067
sub ecx, 1
je 0x1400230ce
sub ecx, 1
je 0x14002312b
sub ecx, 1
je 0x14002318c
cmp ecx, 1
jne 0x140024bc4
mov dword [rbx + 8], 0xe
jmp 0x140023275
mov dword [rbx + 8], 0xa
jmp 0x1400230ad
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400230ad
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023070
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x42
je 0x1400230ce
mov ebp, 0xfffffffb
jmp 0x140024bc4
mov dword [rbx + 8], 0xb
jmp 0x140023114
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023114
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400230d7
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x5a
jne 0x1400230c4
mov dword [rbx + 8], 0xc
jmp 0x140023171
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023171
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023134
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x68
jne 0x1400230c4
mov dword [rbx + 8], 0xd
jmp 0x1400231d2
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400231d2
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023195
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 0x1400230c4
lea eax, [rdx - 0x30]
mov r8d, 1
imul edx, eax, 0x186a0
mov dword [rbx + 0x28], eax
mov dword [rbx + 0xc58], edx
mov rcx, qword [r9 + 0x48]
mov rax, qword [r9 + 0x38]
shl edx, 2
call qword [case.0x140092c6b.0]
mov qword [rbx + 0xc50], rax
test rax, rax
jne 0x14002305b
lea ebp, [rax - 3]
jmp 0x140024bc4
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023275
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023238
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x17
je 0x14002481d
cmp al, 0x31
je 0x14002329e
mov ebp, 0xfffffffc
jmp 0x140024bc4
mov dword [rbx + 8], 0xf
jmp 0x1400232e2
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x140024bc4
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 0x1400232e2
inc dword [rax + 0x10]
mov ecx, dword [rbx + 0x24]
cmp ecx, 8
jl 0x1400232a7
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x41
jne 0x140023294
mov dword [rbx + 8], 0x10
jmp 0x140023360
sub ecx, 0x10
je 0x1400232f9
sub ecx, 1
je 0x14002337b
sub ecx, 1
je 0x1400233dc
cmp ecx, 1
je 0x14002343d
jmp 0x140024bc4
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023360
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023323
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x140023294
mov dword [rbx + 8], 0x11
jmp 0x1400233c1
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400233c1
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023384
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x26
jne 0x140023294
mov dword [rbx + 8], 0x12
jmp 0x140023422
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023422
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400233e5
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x53
jne 0x140023294
mov dword [rbx + 8], 0x13
jmp 0x140023483
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023483
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023446
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x140023294
inc dword [rbx + 0x2c]
mov dword [rbx + 0xc70], ebp
mov dword [rbx + 8], 0x14
jmp 0x1400234eb
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x140024bc4
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 0x1400234eb
inc dword [rax + 0x10]
mov ecx, dword [rbx + 0x24]
cmp ecx, 8
jl 0x1400234b0
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc70]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc70], ecx
mov dword [rbx + 8], 0x15
jmp 0x1400235ad
sub ecx, 0x15
je 0x140023512
sub ecx, 1
je 0x1400235d4
sub ecx, 1
je 0x140023641
sub ecx, 1
je 0x1400236ae
sub ecx, 1
je 0x14002370f
sub ecx, 1
je 0x140023776
sub ecx, 1
je 0x1400237dd
sub ecx, 1
je 0x140023865
cmp ecx, 1
je 0x14002390d
jmp 0x140024bc4
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400235ad
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023570
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc70]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc70], ecx
mov dword [rbx + 8], 0x16
jmp 0x14002361a
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x14002361a
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400235dd
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc70]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc70], ecx
mov dword [rbx + 8], 0x17
jmp 0x140023687
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023687
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14002364a
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc70]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc70], ecx
mov dword [rbx + 8], 0x18
jmp 0x1400236f4
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400236f4
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400236b7
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 + 0x34], ebp
mov dword [rbx + 8], 0x19
jmp 0x140023755
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023755
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140023718
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x34]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x34], ecx
mov dword [rbx + 8], 0x1a
jmp 0x1400237bc
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400237bc
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14002377f
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x34]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x34], ecx
mov dword [rbx + 8], 0x1b
jmp 0x140023823
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023823
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400237e6
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0x34]
shl eax, 8
or ecx, eax
mov dword [rbx + 0x34], ecx
js 0x140023294
imul eax, dword [rbx + 0x28], 0x186a0
add eax, 0xa
cmp ecx, eax
jg 0x140023294
mov r14d, ebp
cmp r14d, 0x10
jge 0x1400238d0
mov dword [rbx + 8], 0x1c
jmp 0x1400238ab
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400238ab
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14002386e
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
movsxd rax, r14d
shr edx, cl
and dl, 1
mov dword [rbx + 0x24], ecx
inc r14d
mov byte [rax + rbx + 0xd84], dl
jmp 0x14002385f
lea rcx, [rbx + 0xc84]
xor edx, edx
mov r8d, 0x100
call fcn.140108940
mov r14d, ebp
cmp r14d, 0x10
jge 0x140023990
movsxd rax, r14d
cmp byte [rax + rbx + 0xd84], bpl
je 0x140023988
mov esi, ebp
mov dword [rsp + 0x40], ebp
cmp esi, 0x10
jge 0x140023988
mov dword [rbx + 8], 0x1d
jmp 0x140023953
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023953
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x140023916
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
mov esi, dword [rsp + 0x40]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x140023980
mov eax, r14d
shl eax, 4
add eax, esi
cdqe
mov byte [rax + rbx + 0xc84], 1
inc esi
mov dword [rsp + 0x40], esi
jmp 0x140023908
inc r14d
jmp 0x1400238e7
mov dword [rbx + 0xc80], ebp
lea rdx, [rbx + 0xc84]
mov ecx, ebp
cmp byte [rdx], bpl
je 0x1400239b8
movsxd rax, dword [rbx + 0xc80]
mov byte [rax + rbx + 0xd94], cl
inc dword [rbx + 0xc80]
inc ecx
inc rdx
cmp ecx, 0x100
jl 0x14002399f
mov eax, dword [rbx + 0xc80]
test eax, eax
je 0x140023294
add eax, 2
mov dword [rsp + 0x60], eax
mov dword [rbx + 8], 0x1e
jmp 0x140023a20
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023a20
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 3
jl 0x1400239e3
mov r9d, dword [rbx + 0x20]
lea ecx, [rdi - 3]
shr r9d, cl
and r9d, 7
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x64], r9d
lea eax, [r9 - 2]
cmp eax, 4
jbe 0x140023a9d
jmp 0x140023294
cmp ecx, 0x29
jg 0x1400247cb
je 0x1400240f9
cmp ecx, 0x24
jg 0x140023ff1
je 0x140023f78
sub ecx, 0x1f
je 0x140023a98
sub ecx, 1
je 0x140023b1b
sub ecx, 1
je 0x140023c22
sub ecx, 1
je 0x140023ca5
cmp ecx, 1
je 0x140023d06
jmp 0x140024bc4
mov r9d, dword [rsp + 0x64]
mov dword [rbx + 8], 0x1f
jmp 0x140023ae3
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023ae3
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 0xf
jl 0x140023aa6
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 0xf]
shr edx, cl
and edx, 0x7fff
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x4c], edx
cmp edx, 1
jb 0x140023294
mov r14d, ebp
cmp r14d, edx
jge 0x140023ba2
mov esi, ebp
mov dword [rsp + 0x40], ebp
mov r9d, dword [rsp + 0x64]
mov dword [rbx + 8], 0x20
jmp 0x140023b64
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x140024bc4
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 0x140023b64
inc dword [rax + 0x10]
mov ecx, dword [rbx + 0x24]
cmp ecx, 1
jl 0x140023b29
mov eax, dword [rbx + 0x20]
dec ecx
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x140023b8b
inc esi
mov dword [rsp + 0x40], esi
cmp esi, r9d
jge 0x140023294
jmp 0x140023b20
mov edx, dword [rsp + 0x4c]
movsxd rax, r14d
inc r14d
mov byte [rax + rbx + 0x6526], sil
jmp 0x140023b0c
mov cl, bpl
test r9d, r9d
jle 0x140023bbe
movzx eax, cl
mov byte [rsp + rax + 0xb0], cl
inc cl
movzx eax, cl
cmp eax, r9d
jl 0x140023baa
movsxd rsi, edx
mov r14d, ebp
test edx, edx
jle 0x140023c0c
lea rdi, [rbx + 0x1ed4]
mov r14d, edx
movzx edx, byte [rdi + 0x4652]
lea rcx, [rsp + 0xb0]
add rcx, rdx
mov r8b, byte [rcx]
test dl, dl
je 0x140023bf8
mov al, byte [rcx - 1]
mov byte [rcx], al
dec rcx
add dl, 0xff
jne 0x140023beb
mov byte [rdi], r8b
inc rdi
mov byte [rsp + 0xb0], r8b
sub rsi, 1
jne 0x140023bd2
mov eax, dword [rsp + 0x60]
mov esi, ebp
mov dword [rsp + 0xb0], esi
cmp esi, r9d
jge 0x140023db2
mov dword [rbx + 8], 0x21
jmp 0x140023c68
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023c68
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 5
jl 0x140023c2b
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 5]
mov esi, dword [rsp + 0xb0]
mov r14d, ebp
shr edx, cl
and edx, 0x1f
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x44], edx
mov eax, dword [rsp + 0x60]
cmp r14d, eax
jge 0x140023da6
lea eax, [rdx - 1]
cmp eax, 0x13
ja 0x140023294
mov dword [rbx + 8], 0x22
jmp 0x140023ceb
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023ceb
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x140023cae
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x140023d7c
mov edx, dword [rsp + 0x44]
mov edi, dword [rbx + 0x24]
mov dword [rbx + 8], 0x23
cmp edi, 1
jge 0x140023d5e
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023d52
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x140023d15
mov edx, dword [rsp + 0x44]
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
not al
mov dword [rbx + 0x24], ecx
and eax, 1
lea edx, [rdx + rax*2]
dec edx
mov dword [rsp + 0x44], edx
jmp 0x140023c99
mov ecx, dword [rsp + 0x44]
movsxd rsi, dword [rsp + 0xb0]
movsxd rdx, r14d
imul rax, rsi, 0x102
add rax, rbx
inc r14d
mov byte [rdx + rax + 0xab78], cl
mov edx, ecx
jmp 0x140023c8c
mov r9d, dword [rsp + 0x64]
inc esi
jmp 0x140023c12
mov dword [rsp + 0xb0], ebp
mov r8d, ebp
movsxd r13, eax
movsxd r15, r9d
test r9d, r9d
jle 0x140023e85
lea r12, [rbx + 0xfa14]
lea r14, [rbx + 0xab78]
mov esi, 0x20
mov edi, ebp
mov rdx, rbp
test r13, r13
jle 0x140023e03
movzx ecx, byte [r14 + rdx]
mov eax, edi
cmp ecx, eax
mov edi, ecx
cmovle edi, eax
cmp ecx, esi
cmovl esi, ecx
inc rdx
cmp rdx, r13
jl 0x140023de8
movsxd rax, r8d
lea r9, [rbx + 0xab78]
imul rcx, rax, 0x408
imul rax, rax, 0x102
lea r8, [rbx + 0xe1e4]
add r8, rcx
lea rdx, [rbx + 0xc9b4]
add rdx, rcx
add rcx, 0xb184
add rcx, rbx
add r9, rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], esi
call fcn.140024cf8
mov r8d, dword [rsp + 0xb0]
add r14, 0x102
inc r8d
mov dword [r12], esi
add r12, 4
mov dword [rsp + 0xb0], r8d
sub r15, 1
jne 0x140023dd9
mov r12d, dword [rsp + 0xa0]
mov eax, dword [rbx + 0xc80]
lea rcx, [rbx + 0x40]
inc eax
mov dword [rsp + 0x50], ebp
mov dword [rsp + 0x90], eax
xor edx, edx
imul eax, dword [rbx + 0x28], 0x186a0
mov r8d, 0x400
mov dword [rsp + 0x54], eax
call fcn.140108940
mov ecx, 0xf
lea r10, [rbx + 0x1e93]
mov r8d, 0x1000
lea r9, [rbx + 0x1ed0]
mov r14d, 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 0x140023eea
mov dword [r9], r8d
sub r9, 4
sub ecx, 1
jns 0x140023ed3
mov r15d, ebp
mov r13d, ebp
cmp dword [rsp + 0x4c], ebp
jle 0x140023294
movzx eax, byte [rbx + 0x1ed4]
mov r10d, 0x31
imul rcx, rax, 0x408
mov edx, dword [rbx + rax*4 + 0xfa14]
mov r8d, edx
mov dword [rsp + 0x80], eax
lea rax, [rbx + 0xb184]
add rax, rcx
mov dword [rsp + 0x5c], edx
mov qword [rsp + 0x88], rax
lea rax, [rbx + 0xe1e4]
add rax, rcx
mov dword [rsp + 0x50], r10d
mov qword [rsp + 0x70], rax
lea rax, [rbx + 0xc9b4]
add rax, rcx
mov dword [rsp + 0x48], edx
mov qword [rsp + 0x98], rax
mov dword [rbx + 8], 0x24
jmp 0x140023fbe
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140023fbe
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r8d
jl 0x140023f81
mov r12d, dword [rbx + 0x20]
sub edi, r8d
mov r9, qword [rsp + 0x88]
mov ecx, edi
shr r12d, cl
mov eax, 1
mov ecx, r8d
mov dword [rbx + 0x24], edi
shl eax, cl
dec eax
and r12d, eax
jmp 0x140024084
sub ecx, 0x25
je 0x140024016
sub ecx, 1
je 0x140024235
sub ecx, 1
je 0x1400242c9
cmp ecx, 1
je 0x140024604
jmp 0x140024bc4
mov r9, qword [rsp + 0x88]
mov dword [rbx + 8], 0x25
jmp 0x140024064
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024064
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x140024027
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr edx, cl
add r12d, r12d
and edx, 1
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x7c], edx
or r12d, edx
cmp r8d, 0x14
jg 0x140023294
movsxd rcx, r8d
cmp r12d, dword [r9 + rcx*4]
jle 0x1400240a4
inc r8d
mov dword [rsp + 0x48], r8d
jmp 0x14002401e
mov rdx, qword [rsp + 0x98]
mov eax, r12d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x140023294
mov r9, qword [rsp + 0x70]
mov r8d, dword [rsp + 0x54]
cdqe
mov edx, dword [r9 + rax*4]
mov dword [rsp + 0x68], edx
cmp edx, dword [rsp + 0x90]
je 0x14002467d
cmp edx, 1
ja 0x1400243cf
or r11d, 0xffffffff
mov dword [rsp + 0x58], r11d
lea eax, [r11 + 2]
jmp 0x14002418f
mov r9, qword [rsp + 0x88]
mov dword [rbx + 8], 0x29
jmp 0x140024147
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024147
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14002410a
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr edx, cl
add r12d, r12d
and edx, 1
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x7c], edx
or r12d, edx
cmp r8d, 0x14
jg 0x140023294
movsxd rcx, r8d
cmp r12d, dword [r9 + rcx*4]
jle 0x1400240a4
inc r8d
mov dword [rsp + 0x48], r8d
jmp 0x140024101
mov eax, dword [rsp + 0x78]
test edx, edx
jne 0x140024198
add r11d, eax
jmp 0x1400241a1
cmp edx, 1
jne 0x1400241a6
lea r11d, [r11 + rax*2]
mov dword [rsp + 0x58], r11d
add eax, eax
mov dword [rsp + 0x78], eax
test r10d, r10d
jne 0x140024221
inc r13d
cmp r13d, dword [rsp + 0x4c]
jge 0x140023294
movsxd rax, r13d
mov r10d, 0x32
movzx eax, byte [rax + rbx + 0x1ed4]
mov dword [rsp + 0x80], eax
mov ecx, dword [rbx + rax*4 + 0xfa14]
mov dword [rsp + 0x5c], ecx
imul rcx, rax, 0x408
lea rax, [rbx + 0xb184]
add rax, rcx
mov qword [rsp + 0x88], rax
lea rax, [rbx + 0xe1e4]
add rax, rcx
mov qword [rsp + 0x70], rax
lea rax, [rbx + 0xc9b4]
mov r9, qword [rsp + 0x70]
add rax, rcx
mov qword [rsp + 0x98], rax
mov r8d, dword [rsp + 0x5c]
dec r10d
mov dword [rsp + 0x50], r10d
mov dword [rsp + 0x48], r8d
jmp 0x140024238
mov r9, rax
mov dword [rbx + 8], 0x26
jmp 0x14002427e
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x14002427e
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r8d
jl 0x140024241
mov r12d, dword [rbx + 0x20]
sub edi, r8d
mov ecx, edi
mov dword [rbx + 0x24], edi
shr r12d, cl
mov eax, 1
mov ecx, r8d
shl eax, cl
dec eax
and r12d, eax
cmp r8d, 0x14
jg 0x140023294
mov rax, qword [rsp + 0x88]
movsxd rcx, r8d
cmp r12d, dword [rax + rcx*4]
jle 0x140024337
inc r8d
mov dword [rsp + 0x48], r8d
jmp 0x1400242cc
mov r9, rax
mov dword [rbx + 8], 0x27
jmp 0x140024312
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024312
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400242d5
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr edx, cl
add r12d, r12d
and edx, 1
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x7c], edx
or r12d, edx
jmp 0x1400242a4
mov rdx, qword [rsp + 0x98]
mov eax, r12d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x140023294
cdqe
mov edx, dword [r9 + rax*4]
mov dword [rsp + 0x68], edx
test edx, edx
je 0x14002418b
cmp edx, 1
je 0x14002418b
movsxd rax, dword [rbx + 0x1e94]
inc r11d
movsxd r8, dword [rsp + 0x54]
mov dword [rsp + 0x58], r11d
movzx ecx, byte [rax + rbx + 0xe94]
movzx edi, byte [rcx + rbx + 0xd94]
add dword [rbx + rdi*4 + 0x40], r11d
test r11d, r11d
jle 0x1400240d1
movsxd rdx, r15d
cmp rdx, r8
jge 0x140023294
mov rax, qword [rbx + 0xc50]
dec r11d
inc r15d
mov dword [rsp + 0x58], r11d
mov dword [rax + rdx*4], edi
inc rdx
test r11d, r11d
jg 0x1400243a0
mov edx, dword [rsp + 0x68]
jmp 0x1400240d1
cmp r15d, r8d
jge 0x140023294
dec edx
cmp edx, 0x10
jae 0x14002447d
movsxd r8, dword [rbx + 0x1e94]
lea edi, [r8 + rdx]
mov r11b, byte [rdi + rbx + 0xe94]
cmp edx, 3
jbe 0x14002444d
lea esi, [rdx - 4]
shr esi, 2
inc esi
movsxd rcx, edi
mov al, byte [rcx + rbx + 0xe93]
mov byte [rcx + rbx + 0xe94], al
mov al, byte [rcx + rbx + 0xe92]
mov byte [rcx + rbx + 0xe93], al
mov al, byte [rcx + rbx + 0xe91]
mov byte [rcx + rbx + 0xe92], al
mov al, byte [rcx + rbx + 0xe90]
mov byte [rcx + rbx + 0xe91], al
mov eax, 0xfffffffc
add edx, eax
add edi, eax
sub rsi, 1
jne 0x140024403
test edx, edx
je 0x140024470
lea ecx, [r8 + rdx]
mov edi, edx
lea edx, [rcx - 1]
mov al, byte [rdx + rbx + 0xe94]
mov byte [rcx + rbx + 0xe94], al
mov ecx, edx
sub rdi, 1
jne 0x140024457
mov byte [r8 + rbx + 0xe94], r11b
jmp 0x14002455a
mov eax, edx
lea rdi, [rbx + 0x1e94]
shr eax, 4
and edx, 0xf
mov esi, eax
lea rdi, [rdi + rax*4]
mov eax, dword [rdi]
add edx, eax
movsxd rcx, edx
mov r11b, byte [rcx + rbx + 0xe94]
jmp 0x1400244b8
mov al, byte [rbx + rcx + 0xe93]
dec edx
mov byte [rbx + rcx + 0xe94], al
dec rcx
mov eax, dword [rdi]
cmp edx, eax
jg 0x1400244a3
inc eax
mov dword [rdi], eax
test esi, esi
je 0x1400244e7
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 + 0xea3]
mov byte [rcx + rbx + 0xe93], al
test esi, esi
jg 0x1400244c4
movsxd rcx, dword [rbx + 0x1e94]
lea eax, [rcx - 1]
mov dword [rbx + 0x1e94], eax
mov byte [rcx + rbx + 0xe93], r11b
cmp dword [rbx + 0x1e94], ebp
jne 0x14002455a
mov r9d, 0xf
lea r10, [rbx + 0x1e93]
mov r8d, 0x1000
lea rdx, [rbx + 0x1ed0]
sub r8d, 0x10
mov rsi, r10
sub r10, 0x10
mov edi, 0xf
mov eax, dword [rdx]
add eax, edi
cdqe
mov cl, byte [rax + rbx + 0xe94]
mov byte [rsi], cl
dec rsi
sub edi, 1
jns 0x140024531
mov dword [rdx], r8d
sub rdx, 4
sub r9, 1
jns 0x140024521
mov r10d, dword [rsp + 0x50]
movzx ecx, r11b
movsxd rdx, r15d
inc r15d
movzx eax, byte [rcx + rbx + 0xd94]
inc dword [rbx + rax*4 + 0x40]
mov rax, qword [rbx + 0xc50]
movzx ecx, byte [rcx + rbx + 0xd94]
mov dword [rax + rdx*4], ecx
test r10d, r10d
jne 0x1400245f2
inc r13d
cmp r13d, dword [rsp + 0x4c]
jge 0x140023294
movsxd rax, r13d
mov r10d, 0x32
movzx eax, byte [rax + rbx + 0x1ed4]
mov dword [rsp + 0x80], eax
mov ecx, dword [rbx + rax*4 + 0xfa14]
mov dword [rsp + 0x5c], ecx
imul rcx, rax, 0x408
lea rax, [rbx + 0xb184]
add rax, rcx
mov qword [rsp + 0x88], rax
lea rax, [rbx + 0xe1e4]
add rax, rcx
mov qword [rsp + 0x70], rax
lea rax, [rbx + 0xc9b4]
add rax, rcx
mov qword [rsp + 0x98], rax
mov r8d, dword [rsp + 0x5c]
dec r10d
mov dword [rsp + 0x50], r10d
mov dword [rsp + 0x48], r8d
mov dword [rbx + 8], 0x28
jmp 0x14002464a
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x14002464a
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r8d
jl 0x14002460d
mov r12d, dword [rbx + 0x20]
sub edi, r8d
mov r9, qword [rsp + 0x88]
mov ecx, edi
shr r12d, cl
mov eax, 1
mov ecx, r8d
mov dword [rbx + 0x24], edi
shl eax, cl
dec eax
and r12d, eax
jmp 0x140024167
cmp dword [rbx + 0x34], ebp
jl 0x140023294
cmp dword [rbx + 0x34], r15d
jge 0x140023294
mov r10d, 0x100
lea rdx, [rbx + 0x448]
lea r8, [rbx + 0x444]
mov rdi, rdx
mov ecx, r10d
mov dword [r8], ebp
lea rsi, [rbx + 0x40]
mov r9d, 1
rep movsd dword [rdi], dword [rsi]
mov ecx, r10d
mov eax, dword [rdx - 4]
add dword [rdx], eax
lea rdx, [rdx + 4]
sub rcx, r9
jne 0x1400246bc
mov r14d, ebp
cmp dword [r8], ebp
jl 0x140023294
cmp dword [r8], r15d
jg 0x140023294
add r14d, r9d
add r8, 4
cmp r14d, r10d
jle 0x1400246cd
or dword [rbx + 0xc78], 0xffffffff
mov r14d, ebp
mov dword [rbx + 0x10], ebp
mov byte [rbx + 0xc], bpl
mov dword [rbx + 8], 2
movsxd r8, r15d
test r15d, r15d
jle 0x14002473d
mov rsi, rbp
mov rdx, qword [rbx + 0xc50]
mov eax, r14d
shl eax, 8
add r14d, r9d
movzx edi, byte [rdx + rsi*4]
add rsi, r9
movsxd rcx, dword [rbx + rdi*4 + 0x444]
or dword [rdx + rcx*4], eax
add dword [rbx + rdi*4 + 0x444], r9d
cmp rsi, r8
jl 0x14002470e
movsxd rax, dword [rbx + 0x34]
mov rdx, qword [rbx + 0xc50]
mov ecx, dword [rdx + rax*4]
mov eax, dword [rbx + 0xc58]
shr ecx, 8
mov dword [rbx + 0x38], ecx
mov dword [rbx + 0x440], ebp
cmp byte [rbx + 0x14], bpl
je 0x14002479f
mov qword [rbx + 0x18], rbp
cmp ecx, eax
jae 0x1400247a3
mov ecx, dword [rdx + rcx*4]
mov dword [rbx + 0x38], ecx
movzx edx, cl
shr ecx, 8
mov dword [rbx + 0x38], ecx
mov ecx, ebp
mov dword [rbx + 0x3c], edx
mov dword [rbx + 0x440], r9d
mov eax, dword [0x140160380]
dec eax
mov dword [rbx + 0x1c], r9d
cmp eax, r9d
mov dword [rbx + 0x18], eax
sete cl
xor ecx, edx
jmp 0x1400247c3
cmp ecx, eax
jb 0x1400247ab
mov eax, r9d
jmp 0x140024cc6
mov ecx, dword [rdx + rcx*4]
mov dword [rbx + 0x38], ecx
movzx eax, cl
shr ecx, 8
mov dword [rbx + 0x38], ecx
mov ecx, eax
mov dword [rbx + 0x440], r9d
mov dword [rbx + 0x3c], ecx
jmp 0x140024bc4
sub ecx, 0x2a
je 0x14002481d
sub ecx, 1
je 0x14002487e
sub ecx, 1
je 0x1400248df
sub ecx, 1
je 0x140024940
sub ecx, 1
je 0x1400249a1
sub ecx, 1
je 0x140024a08
sub ecx, 1
je 0x140024a75
sub ecx, 1
je 0x140024ae2
cmp ecx, 1
je 0x140024b4f
jmp 0x140024bc4
mov dword [rbx + 8], 0x2a
jmp 0x140024863
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024863
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140024826
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x72
jne 0x140023294
mov dword [rbx + 8], 0x2b
jmp 0x1400248c4
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400248c4
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140024887
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x45
jne 0x140023294
mov dword [rbx + 8], 0x2c
jmp 0x140024925
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024925
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400248e8
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x38
jne 0x140023294
mov dword [rbx + 8], 0x2d
jmp 0x140024986
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024986
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140024949
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x50
jne 0x140023294
mov dword [rbx + 8], 0x2e
jmp 0x1400249e7
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x1400249e7
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400249aa
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x90
jne 0x140023294
mov dword [rbx + 0xc74], ebp
mov dword [rbx + 8], 0x2f
jmp 0x140024a4e
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024a4e
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140024a11
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc74]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc74], ecx
mov dword [rbx + 8], 0x30
jmp 0x140024abb
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024abb
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140024a7e
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc74]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc74], ecx
mov dword [rbx + 8], 0x31
jmp 0x140024b28
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024b28
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140024aeb
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx ecx, al
mov eax, dword [rbx + 0xc74]
shl eax, 8
or ecx, eax
mov dword [rbx + 0xc74], ecx
mov dword [rbx + 8], 0x32
jmp 0x140024b91
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x140024bc4
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 0x140024b91
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x140024b58
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 + 0xc74]
shl eax, 8
or ecx, eax
mov dword [rbx + 8], 1
mov dword [rbx + 0xc74], ecx
mov rax, qword [rsp + 0xa8]
mov ecx, dword [rsp + 0x54]
mov dword [rbx + 0xfa54], ecx
mov ecx, dword [rsp + 0x58]
mov dword [rax], r14d
mov eax, dword [rsp + 0x40]
mov dword [rbx + 0xfa30], eax
mov eax, dword [rsp + 0xb0]
mov dword [rbx + 0xfa34], eax
mov eax, dword [rsp + 0x60]
mov dword [rbx + 0xfa38], eax
mov eax, dword [rsp + 0x64]
mov dword [rbx + 0xfa3c], eax
mov eax, dword [rsp + 0x4c]
mov dword [rbx + 0xfa40], eax
mov eax, dword [rsp + 0x90]
mov dword [rbx + 0xfa44], eax
mov eax, dword [rsp + 0x50]
mov dword [rbx + 0xfa4c], eax
mov eax, dword [rsp + 0x68]
mov dword [rbx + 0xfa5c], ecx
mov ecx, dword [rsp + 0x78]
mov dword [rbx + 0xfa50], eax
mov eax, dword [rsp + 0x5c]
mov dword [rbx + 0xfa60], ecx
mov ecx, dword [rsp + 0x44]
mov dword [rbx + 0xfa7c], eax
mov rax, qword [rsp + 0x88]
mov dword [rbx + 0xfa64], ecx
mov ecx, dword [rsp + 0xa4]
mov qword [rbx + 0xfa80], rax
mov rax, qword [rsp + 0x98]
mov dword [rbx + 0xfa68], ecx
mov ecx, dword [rsp + 0x48]
mov qword [rbx + 0xfa88], rax
mov rax, qword [rsp + 0x70]
mov dword [rbx + 0xfa6c], ecx
mov ecx, dword [rsp + 0x7c]
mov dword [rbx + 0xfa74], ecx
mov ecx, dword [rsp + 0x80]
mov qword [rbx + 0xfa90], rax
mov eax, ebp
mov dword [rbx + 0xfa48], r13d
mov dword [rbx + 0xfa58], r15d
mov dword [rbx + 0xfa70], r12d
mov dword [rbx + 0xfa78], ecx
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.140105c50
lea r11, [rsp + 0xc0]
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