Function at 0x14005b850
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 [0x141b8de38]
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 0x14005b973
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 0x14005b9bb
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 0x14005c542
je 0x14005c4c5
cmp ecx, 0x14
jg 0x14005c008
je 0x14005bf91
cmp ecx, 0xf
jg 0x14005bdec
je 0x14005bd88
sub ecx, 0xa
je 0x14005bb1e
sub ecx, 1
je 0x14005bb85
sub ecx, 1
je 0x14005bbe2
sub ecx, 1
je 0x14005bc43
cmp ecx, 1
jne 0x14005d694
mov dword [rbx + 8], 0xe
jmp 0x14005bd5f
mov dword [rbx + 8], 0xa
jmp 0x14005bb64
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005bb64
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005bb27
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x42
je 0x14005bb85
mov ebp, 0xfffffffb
jmp 0x14005da54
mov dword [rbx + 8], 0xb
jmp 0x14005bbcb
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005bbcb
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005bb8e
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x5a
jne 0x14005bb7b
mov dword [rbx + 8], 0xc
jmp 0x14005bc28
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005bc28
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005bbeb
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x68
jne 0x14005bb7b
mov dword [rbx + 8], 0xd
jmp 0x14005bc89
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005bc89
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005bc4c
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 0x14005bb7b
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 0x14005bd11
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 0x14005bd07
test rax, rax
jne 0x14005bb12
mov ebp, 0xfffffffd
jmp 0x14005da54
imul edx, eax, 0x61a80
call rdi
mov qword [rbx + 0xc50], rax
jmp 0x14005bcfe
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005bd5f
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005bd22
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x17
je 0x14005d6ad
cmp al, 0x31
je 0x14005bd88
mov ebp, 0xfffffffc
jmp 0x14005da54
mov dword [rbx + 8], 0xf
jmp 0x14005bdcc
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x14005da54
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 0x14005bdcc
inc dword [rax + 0x10]
mov ecx, dword [rbx + 0x24]
cmp ecx, 8
jl 0x14005bd91
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x41
jne 0x14005bd7e
mov dword [rbx + 8], 0x10
jmp 0x14005be4a
sub ecx, 0x10
je 0x14005bde3
sub ecx, 1
je 0x14005be65
sub ecx, 1
je 0x14005bec6
cmp ecx, 1
je 0x14005bf27
jmp 0x14005d694
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005be4a
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005be0d
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x14005bd7e
mov dword [rbx + 8], 0x11
jmp 0x14005beab
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005beab
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005be6e
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x26
jne 0x14005bd7e
mov dword [rbx + 8], 0x12
jmp 0x14005bf0c
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005bf0c
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005becf
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x53
jne 0x14005bd7e
mov dword [rbx + 8], 0x13
jmp 0x14005bf6d
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005bf6d
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005bf30
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x14005bd7e
inc dword [rbx + 0x30]
mov dword [rbx + 0xc68], ebp
mov dword [rbx + 8], 0x14
jmp 0x14005bfd5
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x14005da54
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 0x14005bfd5
inc dword [rax + 0x10]
mov ecx, dword [rbx + 0x24]
cmp ecx, 8
jl 0x14005bf9a
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 0x14005c097
sub ecx, 0x15
je 0x14005bffc
sub ecx, 1
je 0x14005c0be
sub ecx, 1
je 0x14005c12b
sub ecx, 1
je 0x14005c198
sub ecx, 1
je 0x14005c1f9
sub ecx, 1
je 0x14005c260
sub ecx, 1
je 0x14005c2c7
sub ecx, 1
je 0x14005c34f
cmp ecx, 1
je 0x14005c3f9
jmp 0x14005d694
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c097
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005c05a
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 0x14005c104
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c104
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005c0c7
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 0x14005c171
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c171
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005c134
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 0x14005c1de
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c1de
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14005c1a1
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 0x14005c23f
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c23f
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005c202
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 0x14005c2a6
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c2a6
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005c269
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 0x14005c30d
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c30d
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005c2d0
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 0x14005bd7e
imul eax, dword [rbx + 0x28], 0x186a0
add eax, 0xa
cmp ecx, eax
jg 0x14005bd7e
mov r15d, ebp
cmp r15d, 0x10
jge 0x14005c3ba
mov dword [rbx + 8], 0x1c
jmp 0x14005c395
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c395
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14005c358
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 0x14005c349
lea rcx, [rbx + 0xc7c]
xor edx, edx
mov r8d, 0x100
call sub.VCRUNTIME140.dll_memset
mov r15d, ebp
cmp r15d, 0x10
jge 0x14005c47b
movsxd rax, r15d
cmp byte [rax + rbx + 0xd7c], bpl
je 0x14005c473
mov r9d, ebp
mov dword [rsp + 0x5c], ebp
cmp r9d, 0x10
jge 0x14005c473
mov dword [rbx + 8], 0x1d
jmp 0x14005c43f
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c43f
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14005c402
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x14005c469
mov eax, r15d
shl eax, 4
add eax, r9d
cdqe
mov byte [rax + rbx + 0xc7c], 1
inc r9d
mov dword [rsp + 0x5c], r9d
jmp 0x14005c3f3
inc r15d
jmp 0x14005c3d1
mov dword [rbx + 0xc78], ebp
lea rdx, [rbx + 0xc7c]
mov ecx, ebp
cmp byte [rdx], bpl
je 0x14005c4a3
movsxd rax, dword [rbx + 0xc78]
mov byte [rax + rbx + 0xd8c], cl
inc dword [rbx + 0xc78]
inc ecx
inc rdx
cmp ecx, 0x100
jl 0x14005c48a
mov eax, dword [rbx + 0xc78]
test eax, eax
je 0x14005bd7e
add eax, 2
mov dword [rsp + 0x68], eax
mov dword [rbx + 8], 0x1e
jmp 0x14005c50b
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c50b
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 3
jl 0x14005c4ce
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 0x14005bd7e
mov dword [rbx + 8], 0x1f
jmp 0x14005c5cb
cmp ecx, 0x29
jg 0x14005d647
je 0x14005cc00
cmp ecx, 0x24
jg 0x14005cb32
je 0x14005caaf
sub ecx, 0x1f
je 0x14005c536
sub ecx, 1
je 0x14005c61b
sub ecx, 1
je 0x14005c74d
sub ecx, 1
je 0x14005c7d1
cmp ecx, 1
je 0x14005c82e
jmp 0x14005d694
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c5cb
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 0xf
jl 0x14005c58e
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 0x14005c601
mov ebp, 0xfffffffc
jmp 0x14005da59
mov r15d, ebp
mov edx, 0x4652
cmp r15d, r10d
jge 0x14005c6b5
mov r9d, ebp
mov dword [rsp + 0x5c], ebp
jmp 0x14005c620
mov r11d, dword [rsp + 0x40]
lea r8, [rbx + 0x20]
mov rsi, r8
mov dword [rbx + 8], 0x20
jmp 0x14005c66c
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x14005da59
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 0x14005c669
inc dword [rax + 0x10]
mov rsi, r8
mov ecx, dword [rbx + 0x24]
cmp ecx, 1
jl 0x14005c630
mov eax, dword [r8]
dec ecx
shr eax, cl
mov rsi, r8
mov dword [rbx + 0x24], ecx
test al, 1
je 0x14005c698
inc r9d
mov dword [rsp + 0x5c], r9d
cmp r9d, r11d
jge 0x14005c5f7
jmp 0x14005c627
mov edx, 0x4652
cmp r15d, edx
jge 0x14005c6ad
movsxd rax, r15d
mov byte [rax + rbx + 0x651e], r9b
inc r15d
jmp 0x14005c609
mov r8d, dword [rsp + 0x40]
cmp r10d, edx
mov cl, bpl
cmovg r10d, edx
mov dword [rsp + 0x60], r10d
test r8d, r8d
jle 0x14005c6e2
movzx eax, cl
mov byte [rsp + rax + 0xf8], cl
inc cl
movzx eax, cl
cmp eax, r8d
jl 0x14005c6ce
mov r15d, ebp
test r10d, r10d
jle 0x14005c736
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 0x14005c71d
mov al, byte [rcx - 1]
mov byte [rcx], al
dec rcx
add dl, 0xff
jne 0x14005c710
mov byte [rdi], sil
inc rdi
mov byte [rsp + 0xf8], sil
sub r8, 1
jne 0x14005c6f7
mov r8d, dword [rsp + 0x40]
mov r11d, dword [rsp + 0x68]
mov esi, ebp
mov dword [rsp + 0xf8], esi
cmp esi, r8d
jge 0x14005c8d4
mov dword [rbx + 8], 0x21
jmp 0x14005c793
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c793
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 5
jl 0x14005c756
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 0x14005c8c8
lea eax, [rdx - 1]
cmp eax, 0x13
ja 0x14005bd7e
mov dword [rbx + 8], 0x22
jmp 0x14005c817
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c817
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14005c7da
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x14005c89e
mov dword [rbx + 8], 0x23
jmp 0x14005c874
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005c874
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14005c837
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 0x14005c893
inc edx
jmp 0x14005c895
dec edx
mov dword [rsp + 0x54], edx
jmp 0x14005c7c5
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 0x14005c7b7
mov r8d, dword [rsp + 0x40]
inc esi
jmp 0x14005c73d
mov dword [rsp + 0xf8], ebp
movsxd r15, r8d
test r8d, r8d
jle 0x14005c9a8
lea r12, [rbx + 0xfa0c]
mov r13d, ebp
lea r14, [rbx + 0xab70]
mov esi, 0x20
mov edi, ebp
test r11d, r11d
jle 0x14005c924
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 0x14005c90a
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.14005dbb0
mov r11d, dword [rsp + 0x68]
inc r13d
mov dword [r12], esi
add r14, 0x102
add r12, 4
sub r15, 1
jne 0x14005c8f8
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 0x14005ca0c
mov dword [r9], r8d
sub r9, 4
sub ecx, 1
jns 0x14005c9f5
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 0x14005ca4c
mov ebp, 0xfffffffc
mov r11d, dword [rsp + 0x40]
jmp 0x14005da63
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 0x14005cab9
mov r8d, dword [rsp + 0x44]
mov r14d, dword [rsp + 0x48]
mov dword [rbx + 8], 0x24
jmp 0x14005caff
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005ca42
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 0x14005caff
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r12d
jl 0x14005cac2
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 0x14005cbca
sub ecx, 0x25
je 0x14005cb57
sub ecx, 1
je 0x14005cd9d
sub ecx, 1
je 0x14005ce31
cmp ecx, 1
je 0x14005d1dc
jmp 0x14005d694
mov r8d, dword [rsp + 0x44]
mov r9, rsi
mov r14d, dword [rsp + 0x48]
mov dword [rbx + 8], 0x25
jmp 0x14005cbaa
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005ca42
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 0x14005cbaa
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14005cb6d
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 0x14005ca3d
movsxd rcx, r12d
cmp r13d, dword [r9 + rcx*4]
jle 0x14005cbe2
inc r12d
jmp 0x14005cb64
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
jbe 0x14005cca4
jmp 0x14005ca3d
mov edi, dword [rbx + 0x24]
mov dword [rbx + 8], 0x29
cmp edi, 1
jge 0x14005cc5c
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005cc4c
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14005cc0f
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 0x14005bd7e
movsxd rcx, r12d
cmp r13d, dword [rsi + rcx*4]
jg 0x14005d255
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x14005bd7e
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 0x14005d268
cmp eax, 1
ja 0x14005cf82
or r8d, 0xffffffff
mov dword [rsp + 0x58], r8d
lea edx, [r8 + 2]
mov dword [rsp + 0x6c], edx
jmp 0x14005cce8
mov edx, dword [rsp + 0x6c]
cmp edx, 0x200000
jge 0x14005bd7e
test eax, eax
jne 0x14005ccfd
add r8d, edx
jmp 0x14005cd06
cmp eax, 1
jne 0x14005cd0b
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 0x14005cd92
mov edx, dword [rsp + 0x44]
inc edx
mov dword [rsp + 0x44], edx
cmp edx, r10d
jge 0x14005d25d
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 0x14005cda5
mov r14d, dword [rsp + 0x4c]
mov r9, rdx
mov dword [rbx + 8], 0x26
jmp 0x14005cdeb
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005cdeb
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r12d
jl 0x14005cdae
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 0x14005bd7e
mov rax, qword [rsp + 0x88]
movsxd rcx, r12d
cmp r13d, dword [rax + rcx*4]
jle 0x14005cea4
inc r12d
jmp 0x14005ce39
mov r14d, dword [rsp + 0x4c]
mov r9, rdx
mov dword [rbx + 8], 0x27
jmp 0x14005ce7f
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005ce7f
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x14005ce42
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 0x14005ce11
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x14005bd7e
cdqe
mov eax, dword [r9 + rax*4]
mov dword [rsp + 0x50], eax
test eax, eax
je 0x14005cce4
cmp eax, 1
je 0x14005cce4
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 0x14005cf45
test r8d, r8d
jle 0x14005ccbb
cmp rdx, rsi
jge 0x14005bd7e
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 0x14005cf17
jmp 0x14005cf79
test r8d, r8d
jle 0x14005ccbb
cmp rdx, rsi
jge 0x14005bd7e
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 0x14005cf4e
mov eax, dword [rsp + 0x50]
jmp 0x14005ccbb
cmp r11d, dword [rsp + 0x78]
jge 0x14005bd7e
lea edx, [rax - 1]
cmp edx, 0x10
jae 0x14005d033
movsxd r8, dword [rbx + 0x1e8c]
lea edi, [r8 + rdx]
mov r11b, byte [rdi + rbx + 0xe8c]
cmp edx, 3
jbe 0x14005d003
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 0x14005cfb9
test edx, edx
je 0x14005d026
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 0x14005d00d
mov byte [r8 + rbx + 0xe8c], r11b
jmp 0x14005d10c
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 0x14005d074
mov al, byte [rcx + rbx + 0xe8b]
dec edx
mov byte [rcx + rbx + 0xe8c], al
dec rcx
mov eax, dword [rdi]
cmp edx, eax
jg 0x14005d05f
inc eax
mov dword [rdi], eax
test esi, esi
je 0x14005d0a3
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 0x14005d080
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 0x14005d10c
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 0x14005d0e8
mov dword [rdx], r8d
sub rdx, 4
sub r9, 1
jns 0x14005d0da
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 0x14005d140
movzx ecx, ax
mov rax, qword [rbx + 0xc58]
mov word [rax + r11*2], cx
jmp 0x14005d14d
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 0x14005d1d1
mov edx, dword [rsp + 0x44]
inc edx
mov dword [rsp + 0x44], edx
cmp edx, r10d
jge 0x14005d25d
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 0x14005d222
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d222
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r12d
jl 0x14005d1e5
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 0x14005cc74
inc r12d
jmp 0x14005cc00
mov r8d, edx
mov r14d, esi
jmp 0x14005ca3d
cmp dword [rbx + 0x38], ebp
jl 0x14005bd7e
cmp dword [rbx + 0x38], r11d
jge 0x14005bd7e
mov r15d, ebp
mov r14d, 1
movsxd rax, r15d
cmp dword [rbx + rax*4 + 0x44], ebp
jl 0x14005bd7e
cmp dword [rbx + rax*4 + 0x44], r11d
jg 0x14005bd7e
add r15d, r14d
cmp r15d, 0xff
jle 0x14005d284
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 0x14005d2ce
mov r15d, ebp
movsxd rax, r15d
mov ecx, dword [rbx + rax*4 + 0x448]
test ecx, ecx
js 0x14005bd7e
cmp ecx, r11d
jg 0x14005bd7e
add r15d, r14d
cmp r15d, r8d
jle 0x14005d2df
mov r15d, r14d
movsxd rcx, r15d
mov eax, dword [rbx + rcx*4 + 0x448]
cmp dword [rbx + rcx*4 + 0x444], eax
jg 0x14005bd7e
add r15d, r14d
cmp r15d, r8d
jle 0x14005d305
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 0x14005d579
lea rdi, [rbx + 0x84c]
mov rsi, r10
mov ecx, 0x101
mov r8d, ebp
rep movsd dword [rdi], dword [rsi]
test r11d, r11d
jle 0x14005d3c5
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 0x14005d3a1
sar ecx, 0x10
and sil, 0xf0
or cl, sil
jmp 0x14005d3b0
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 0x14005d35f
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 0x14005d459
sar r15d, 0x10
and cl, 0xf0
or r15b, cl
jmp 0x14005d46a
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 0x14005d3fe
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 0x14005d526
mov qword [rbx + 0x18], rbp
cmp ecx, eax
jae 0x14005d621
mov rdx, r10
call fcn.14005ac50
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 0x14005d514
movsxd rcx, dword [rbx + 0x1c]
lea rdx, [0x141b8d1f0]
mov edx, dword [rdx + rcx*4]
lea eax, [rcx + 1]
mov dword [rbx + 0x1c], eax
cmp eax, 0x200
jne 0x14005d514
mov dword [rbx + 0x1c], ebp
mov ecx, ebp
lea eax, [rdx - 1]
cmp eax, r14d
sete cl
xor ecx, esi
jmp 0x14005d612
cmp ecx, eax
jae 0x14005d621
mov rdx, r10
call fcn.14005ac50
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 0x14005da54
mov r15d, ebp
test r11d, r11d
jle 0x14005d5b4
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 0x14005d584
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 0x14005d61d
mov qword [rbx + 0x18], rbp
cmp ecx, eax
jae 0x14005d621
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 [0x141b8d1f0]
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 0x14005da54
cmp ecx, eax
jb 0x14005d629
mov eax, r14d
jmp 0x14005db7f
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 0x14005da54
sub ecx, 0x2a
je 0x14005d6ad
sub ecx, 1
je 0x14005d70e
sub ecx, 1
je 0x14005d76f
sub ecx, 1
je 0x14005d7d0
sub ecx, 1
je 0x14005d831
sub ecx, 1
je 0x14005d898
sub ecx, 1
je 0x14005d905
sub ecx, 1
je 0x14005d972
cmp ecx, 1
je 0x14005d9df
mov ecx, 0xfa1
call fcn.140006e5e
mov ecx, 0xfa2
call fcn.140006e5e
jmp 0x14005da54
mov dword [rbx + 8], 0x2a
jmp 0x14005d6f3
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d6f3
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d6b6
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x72
jne 0x14005bd7e
mov dword [rbx + 8], 0x2b
jmp 0x14005d754
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d754
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d717
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x45
jne 0x14005bd7e
mov dword [rbx + 8], 0x2c
jmp 0x14005d7b5
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d7b5
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d778
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x38
jne 0x14005bd7e
mov dword [rbx + 8], 0x2d
jmp 0x14005d816
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d816
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d7d9
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x50
jne 0x14005bd7e
mov dword [rbx + 8], 0x2e
jmp 0x14005d877
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d877
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d83a
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x90
jne 0x14005bd7e
mov dword [rbx + 0xc6c], ebp
mov dword [rbx + 8], 0x2f
jmp 0x14005d8de
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d8de
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d8a1
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 0x14005d94b
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d94b
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d90e
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 0x14005d9b8
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005d9b8
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d97b
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 0x14005da21
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x14005da54
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 0x14005da21
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x14005d9e8
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.14005e080
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