Function at 0x18002dd1c
Capabilities:
Resolve function by parsing pe exports
Terminate process

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa8
mov rsi, qword [rcx]
mov rbx, rcx
mov ecx, dword [rcx + 8]
xor ebp, ebp
cmp ecx, 0xa
jne 0x18002dda1
mov qword [rbx + 0xfa24], rbp
mov qword [rbx + 0xfa2c], rbp
mov qword [rbx + 0xfa34], rbp
mov qword [rbx + 0xfa3c], rbp
mov qword [rbx + 0xfa44], rbp
mov qword [rbx + 0xfa4c], rbp
mov qword [rbx + 0xfa54], rbp
mov qword [rbx + 0xfa5c], rbp
mov qword [rbx + 0xfa64], rbp
mov qword [rbx + 0xfa6c], rbp
mov dword [rbx + 0xfa74], ebp
mov qword [rbx + 0xfa78], rbp
mov qword [rbx + 0xfa80], rbp
mov qword [rbx + 0xfa88], rbp
mov eax, dword [rbx + 0xfa2c]
mov r8d, dword [rbx + 0xfa28]
mov r9d, dword [rbx + 0xfa40]
mov r10d, dword [rbx + 0xfa44]
mov r11d, dword [rbx + 0xfa50]
mov r14d, dword [rbx + 0xfa64]
mov r15d, dword [rbx + 0xfa68]
mov rdi, qword [rbx + 0xfa78]
mov rdx, qword [rbx + 0xfa88]
mov r13d, dword [rbx + 0xfa24]
mov dword [rsp + 0x2c], eax
mov eax, dword [rbx + 0xfa30]
mov dword [rsp + 0x40], eax
mov eax, dword [rbx + 0xfa34]
mov dword [rsp + 0x38], r8d
mov dword [rsp + 0xf0], eax
mov eax, dword [rbx + 0xfa38]
mov dword [rsp + 0x68], r9d
mov dword [rsp + 0x34], eax
mov eax, dword [rbx + 0xfa3c]
mov dword [rsp + 0x60], r10d
mov dword [rsp + 0x80], eax
mov eax, dword [rbx + 0xfa48]
mov dword [rsp + 0x108], r11d
mov dword [rsp + 0x100], eax
mov eax, dword [rbx + 0xfa4c]
mov dword [rsp + 0x88], r14d
mov dword [rsp + 0x78], eax
mov eax, dword [rbx + 0xfa54]
mov dword [rsp + 0x90], r15d
mov dword [rsp + 0xf8], eax
mov eax, dword [rbx + 0xfa58]
mov qword [rsp + 0x20], rdi
mov dword [rsp + 0x50], eax
mov eax, dword [rbx + 0xfa5c]
mov qword [rsp + 0x48], rdx
mov dword [rsp + 0x28], eax
mov eax, dword [rbx + 0xfa60]
mov r12d, 0x100
mov dword [rsp + 0x8c], eax
mov eax, dword [rbx + 0xfa6c]
mov dword [rsp + 0x58], eax
mov eax, dword [rbx + 0xfa70]
mov dword [rsp + 0x54], eax
mov eax, dword [rbx + 0xfa74]
mov dword [rsp + 0x3c], eax
mov rax, qword [rbx + 0xfa80]
mov qword [rsp + 0x70], rax
cmp ecx, 0x1e
jg 0x18002e963
je 0x18002e8eb
cmp ecx, 0x14
jg 0x18002e42a
je 0x18002e3b2
cmp ecx, 0xf
jg 0x18002e1f2
je 0x18002e18d
sub ecx, 0xa
je 0x18002df1c
dec ecx
je 0x18002df82
dec ecx
je 0x18002dfde
dec ecx
je 0x18002e03e
dec ecx
jne 0x18002fb52
mov dword [rbx + 8], 0xe
jmp 0x18002e15e
mov dword [rbx + 8], 0xa
jmp 0x18002df60
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002df60
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002df25
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x42
je 0x18002df82
mov ebp, 0xfffffffb
jmp 0x18002fefc
mov dword [rbx + 8], 0xb
jmp 0x18002dfc6
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002dfc6
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002df8b
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x5a
jne 0x18002df78
mov dword [rbx + 8], 0xc
jmp 0x18002e022
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e022
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002dfe7
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x68
jne 0x18002df78
mov dword [rbx + 8], 0xd
jmp 0x18002e082
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e082
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e047
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx edx, al
mov dword [rbx + 0x28], edx
cmp edx, 0x31
jl 0x18002df78
cmp edx, 0x39
jg 0x18002df78
add edx, 0xffffffd0
mov r8d, 1
mov dword [rbx + 0x28], edx
mov rcx, qword [rsi + 0x48]
cmp byte [rbx + 0x2c], bpl
je 0x18002e111
imul edx, edx, 0x30d40
call qword [rsi + 0x38]
mov edx, dword [rbx + 0x28]
mov r8d, 1
mov qword [rbx + 0xc58], rax
mov rcx, qword [rsi + 0x48]
imul edx, edx, 0x186a0
inc edx
sar edx, 1
call qword [rsi + 0x38]
mov qword [rbx + 0xc60], rax
cmp qword [rbx + 0xc58], rbp
je 0x18002e107
test rax, rax
jne 0x18002df10
mov ebp, 0xfffffffd
jmp 0x18002fefc
imul edx, edx, 0x61a80
call qword [rsi + 0x38]
mov qword [rbx + 0xc50], rax
jmp 0x18002e0fe
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e15e
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e123
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
movzx edx, al
cmp dl, 0x17
je 0x18002fb5e
cmp dl, 0x31
je 0x18002e18d
mov ebp, 0xfffffffc
jmp 0x18002fefc
mov dword [rbx + 8], 0xf
jmp 0x18002e1d1
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e1d1
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e196
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x41
jne 0x18002e183
mov dword [rbx + 8], 0x10
jmp 0x18002e24b
sub ecx, 0x10
je 0x18002e1e9
dec ecx
je 0x18002e267
dec ecx
je 0x18002e2c7
dec ecx
je 0x18002e327
jmp 0x18002fb52
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e24b
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e210
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x18002e183
mov dword [rbx + 8], 0x11
jmp 0x18002e2ab
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e2ab
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e270
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x26
jne 0x18002e183
mov dword [rbx + 8], 0x12
jmp 0x18002e30b
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e30b
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e2d0
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x53
jne 0x18002e183
mov dword [rbx + 8], 0x13
jmp 0x18002e36b
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e36b
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e330
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x18002e183
inc dword [rbx + 0x30]
cmp dword [rbx + 0x34], 2
jl 0x18002e3ac
mov rcx, qword [sym.imp.msvcrt.dll__iob]
mov r8d, dword [rbx + 0x30]
lea rdx, str._n______d:_huffmtf
add rcx, 0x60
call qword [sym.imp.msvcrt.dll_fprintf]
mov dword [rbx + 0xc68], ebp
mov dword [rbx + 8], 0x14
jmp 0x18002e3f6
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e3f6
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e3bb
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0xc68]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0xc68], ecx
mov dword [rbx + 8], 0x15
jmp 0x18002e4af
sub ecx, 0x15
je 0x18002e41e
dec ecx
je 0x18002e4d7
dec ecx
je 0x18002e543
dec ecx
je 0x18002e5af
dec ecx
je 0x18002e60f
dec ecx
je 0x18002e675
dec ecx
je 0x18002e6db
dec ecx
je 0x18002e764
dec ecx
je 0x18002e81c
jmp 0x18002fb52
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e4af
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e474
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0xc68]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0xc68], ecx
mov dword [rbx + 8], 0x16
jmp 0x18002e51b
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e51b
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e4e0
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0xc68]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0xc68], ecx
mov dword [rbx + 8], 0x17
jmp 0x18002e587
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e587
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e54c
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0xc68]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0xc68], ecx
mov dword [rbx + 8], 0x18
jmp 0x18002e5f3
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e5f3
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002e5b8
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
mov dword [rbx + 0x38], ebp
dec ecx
shr eax, cl
mov dword [rbx + 0x24], ecx
and eax, 1
mov byte [rbx + 0x14], al
mov dword [rbx + 8], 0x19
jmp 0x18002e653
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e653
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e618
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0x38]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0x38], ecx
mov dword [rbx + 8], 0x1a
jmp 0x18002e6b9
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e6b9
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e67e
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0x38]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0x38], ecx
mov dword [rbx + 8], 0x1b
jmp 0x18002e71f
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e71f
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002e6e4
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0x38]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0x38], ecx
jl 0x18002e183
mov eax, dword [rbx + 0x28]
imul eax, eax, 0x186a0
add eax, 0xa
cmp ecx, eax
jg 0x18002e183
mov r13d, ebp
cmp r13d, 0x10
jge 0x18002e7dc
mov dword [rbx + 8], 0x1c
jmp 0x18002e7a8
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e7a8
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002e76d
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
dec ecx
shr eax, cl
mov dword [rbx + 0x24], ecx
and eax, 1
cmp al, 1
movsxd rax, r13d
jne 0x18002e7cf
mov byte [rax + rbx + 0xd7c], 1
jmp 0x18002e7d7
mov byte [rax + rbx + 0xd7c], bpl
inc r13d
jmp 0x18002e75e
lea rcx, [rbx + 0xc7c]
mov r8, r12
xor edx, edx
call sub.msvcrt.dll_memset
mov r13d, ebp
cmp r13d, 0x10
jge 0x18002e8a4
movsxd rax, r13d
cmp byte [rax + rbx + 0xd7c], bpl
je 0x18002e89c
mov r8d, ebp
mov dword [rsp + 0x38], ebp
cmp r8d, 0x10
jge 0x18002e89c
mov dword [rbx + 8], 0x1d
jmp 0x18002e860
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e860
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002e825
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
dec ecx
shr eax, cl
mov dword [rbx + 0x24], ecx
and eax, 1
cmp al, 1
jne 0x18002e88f
movsxd rax, r13d
movsxd rcx, r8d
shl rax, 4
add rax, rbx
mov byte [rcx + rax + 0xc7c], 1
inc r8d
mov dword [rsp + 0x38], r8d
jmp 0x18002e812
inc r13d
jmp 0x18002e7f0
mov dword [rbx + 0xc78], ebp
mov ecx, ebp
lea rdx, [rbx + 0xc7c]
cmp byte [rdx], bpl
je 0x18002e8cc
movsxd rax, dword [rbx + 0xc78]
mov byte [rax + rbx + 0xd8c], cl
inc dword [rbx + 0xc78]
inc ecx
inc rdx
cmp ecx, r12d
jl 0x18002e8b3
mov eax, dword [rbx + 0xc78]
test eax, eax
je 0x18002e183
add eax, 2
mov dword [rsp + 0x40], eax
mov dword [rbx + 8], 0x1e
jmp 0x18002e92f
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e92f
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 3
jl 0x18002e8f4
mov ecx, dword [rbx + 0x24]
mov edi, dword [rbx + 0x20]
add ecx, 0xfffffffd
shr edi, cl
mov dword [rbx + 0x24], ecx
and edi, 7
mov dword [rsp + 0xf0], edi
cmp edi, 2
jl 0x18002e957
cmp edi, 6
jle 0x18002e9ab
mov ebp, 0xfffffffc
mov esi, edi
jmp 0x18002ff03
cmp ecx, 0x29
jg 0x18002fb0d
je 0x18002f10a
cmp ecx, 0x24
jg 0x18002f01b
je 0x18002efa0
sub ecx, 0x1f
je 0x18002e9ab
dec ecx
je 0x18002ea38
dec ecx
je 0x18002eb41
dec ecx
je 0x18002ebc6
dec ecx
je 0x18002ec24
jmp 0x18002fb52
mov dword [rbx + 8], 0x1f
jmp 0x18002e9ef
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002e9ef
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 0xf
jl 0x18002e9b4
mov ecx, dword [rbx + 0x24]
mov edx, dword [rbx + 0x20]
mov esi, dword [rsp + 0xf0]
add ecx, 0xfffffff1
shr edx, cl
mov dword [rbx + 0x24], ecx
and edx, 0x7fff
mov dword [rsp + 0x34], edx
cmp edx, 1
jge 0x18002ea23
mov ebp, 0xfffffffc
jmp 0x18002ff03
mov r13d, ebp
cmp r13d, edx
jge 0x18002eac7
mov r8d, ebp
mov dword [rsp + 0x38], ebp
jmp 0x18002ea3f
mov esi, dword [rsp + 0xf0]
mov dword [rbx + 8], 0x20
jmp 0x18002ea83
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002ff03
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002ea83
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002ea48
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
dec ecx
shr eax, cl
mov dword [rbx + 0x24], ecx
and eax, 1
test al, al
je 0x18002eab0
inc r8d
mov dword [rsp + 0x38], r8d
cmp r8d, esi
jge 0x18002ea19
jmp 0x18002ea3f
mov edx, dword [rsp + 0x34]
movsxd rax, r13d
inc r13d
mov byte [rax + rbx + 0x651e], r8b
jmp 0x18002ea26
mov edi, dword [rsp + 0xf0]
mov cl, bpl
test edi, edi
jle 0x18002eae5
movzx eax, cl
mov byte [rsp + rax + 0x2c], cl
inc cl
movzx eax, cl
cmp eax, edi
jl 0x18002ead5
mov r13d, ebp
test edx, edx
jle 0x18002eb2f
lea rdi, [rbx + 0x1ecc]
mov r13d, edx
mov r8d, edx
movzx ecx, byte [rdi + 0x4652]
lea rdx, [rsp + rcx + 0x2c]
mov sil, byte [rdx]
test cl, cl
je 0x18002eb18
mov al, byte [rdx - 1]
mov byte [rdx], al
dec rdx
dec cl
jne 0x18002eb0c
mov byte [rdi], sil
inc rdi
dec r8
mov byte [rsp + 0x2c], sil
jne 0x18002eaf9
mov edi, dword [rsp + 0xf0]
mov esi, dword [rsp + 0x40]
mov edx, ebp
mov dword [rsp + 0x2c], edx
cmp edx, edi
jge 0x18002eccc
mov dword [rbx + 8], 0x21
jmp 0x18002eb85
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002eb85
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 5
jl 0x18002eb4a
mov ecx, dword [rbx + 0x24]
mov edi, dword [rbx + 0x20]
mov edx, dword [rsp + 0x2c]
add ecx, 0xfffffffb
mov r13d, ebp
shr edi, cl
mov dword [rbx + 0x24], ecx
and edi, 0x1f
mov dword [rsp + 0x28], edi
mov esi, dword [rsp + 0x40]
cmp r13d, esi
jge 0x18002ecbe
cmp edi, 1
jl 0x18002e183
cmp edi, 0x14
jg 0x18002e183
mov dword [rbx + 8], 0x22
jmp 0x18002ec0a
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002ec0a
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002ebcf
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
dec ecx
shr eax, cl
mov dword [rbx + 0x24], ecx
and eax, 1
test al, al
je 0x18002ec95
mov dword [rbx + 8], 0x23
jmp 0x18002ec68
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002ec68
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002ec2d
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
mov edi, dword [rsp + 0x28]
dec ecx
shr eax, cl
mov dword [rbx + 0x24], ecx
and eax, 1
test al, al
jne 0x18002ec8a
inc edi
jmp 0x18002ec8c
dec edi
mov dword [rsp + 0x28], edi
jmp 0x18002ebb4
movsxd rdx, dword [rsp + 0x2c]
mov edi, dword [rsp + 0x28]
movsxd rcx, r13d
mov rax, rdx
imul rax, rax, 0x102
add rax, rbx
inc r13d
mov byte [rcx + rax + 0xab70], dil
jmp 0x18002eba7
mov edi, dword [rsp + 0xf0]
inc edx
jmp 0x18002eb35
movsxd r9, esi
movsxd rax, edi
mov dword [rsp + 0x2c], ebp
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x78], rax
test edi, edi
jle 0x18002eebc
lea rcx, [rbx + 0xfa0c]
lea r10, [rbx + 0xb17c]
lea r15, [rbx + 0xab70]
mov qword [rsp + 0x80], rcx
mov rcx, 0xffffffffffff5490
mov qword [rsp + 0x108], r10
sub rcx, rbx
mov dword [rsp + 0x2c], eax
mov qword [rsp + 0x68], rcx
mov r14d, 0x20
mov r13d, ebp
test esi, esi
jle 0x18002ed50
mov rcx, r15
mov edx, esi
movzx eax, byte [rcx]
cmp eax, r13d
cmovg r13d, eax
cmp eax, r14d
cmovl r14d, eax
inc rcx
dec rdx
jne 0x18002ed32
mov rcx, qword [rsp + 0x68]
lea r12, [r10 + 0x1830]
mov rsi, rbp
mov edi, r14d
cmp r14d, r13d
jg 0x18002ed98
lea r8, [rcx + r15]
mov edx, ebp
mov rcx, rbp
test r9, r9
jle 0x18002ed91
movzx eax, byte [r15 + rcx]
cmp eax, edi
jne 0x18002ed87
lea rax, [r8 + rsi]
inc rsi
mov dword [rbx + rax*4 + 0xe1dc], edx
inc rcx
inc edx
cmp rcx, r9
jl 0x18002ed70
inc edi
cmp edi, r13d
jle 0x18002ed66
xor edx, edx
mov rcx, r12
lea r8d, [rdx + 0x5c]
call sub.msvcrt.dll_memset
mov rdx, qword [rsp + 0x60]
test rdx, rdx
jle 0x18002edc3
mov rcx, r15
movzx eax, byte [rcx]
inc rcx
inc dword [r12 + rax*4 + 4]
dec rdx
jne 0x18002edb3
mov ecx, 1
mov eax, dword [r12 + rcx*4 - 4]
add dword [r12 + rcx*4], eax
inc rcx
cmp rcx, 0x17
jl 0x18002edc8
mov rcx, qword [rsp + 0x108]
xor edx, edx
lea r8d, [rdx + 0x5c]
call sub.msvcrt.dll_memset
mov r10, qword [rsp + 0x108]
movsxd rax, r14d
movsxd rdx, r13d
mov esi, ebp
cmp rax, rdx
jg 0x18002ee30
mov rdi, rdx
mov r9, r10
lea r8, [r12 + rax*4]
sub rdi, rax
sub r9, r12
inc rdi
mov eax, dword [r8 + 4]
sub eax, dword [r8]
add esi, eax
lea eax, [rsi - 1]
add esi, esi
mov dword [r9 + r8], eax
add r8, 4
dec rdi
jne 0x18002ee15
lea eax, [r14 + 1]
cdqe
cmp rax, rdx
jg 0x18002ee60
mov rdi, r10
sub rdx, rax
lea rcx, [r12 + rax*4]
sub rdi, r12
inc rdx
mov eax, dword [rdi + rcx - 4]
lea eax, [rax + rax + 2]
sub eax, dword [rcx]
mov dword [rcx], eax
add rcx, 4
dec rdx
jne 0x18002ee4b
mov rcx, qword [rsp + 0x80]
mov r9, qword [rsp + 0x60]
mov esi, dword [rsp + 0x40]
mov dword [rcx], r14d
add rcx, 4
add r10, 0x408
add r15, 0x102
dec qword [rsp + 0x78]
mov qword [rsp + 0x80], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x108], r10
jne 0x18002ed20
mov r14d, dword [rsp + 0x88]
mov r15d, dword [rsp + 0x90]
mov r12d, 0x100
mov eax, dword [rbx + 0xc78]
lea rcx, [rbx + 0x44]
xor edx, edx
inc eax
mov r8d, 0x400
mov dword [rsp + 0x60], ebp
mov dword [rsp + 0x80], eax
mov eax, dword [rbx + 0x28]
imul eax, eax, 0x186a0
mov dword [rsp + 0x78], eax
call sub.msvcrt.dll_memset
mov esi, 0x1000
mov r13d, r12d
mov ecx, 0xf
lea r9d, [rsi - 1]
lea r8, [rbx + 0x1ec8]
mov dil, cl
mov edx, 0xf
shl dil, 4
sub esi, 0x10
lea eax, [rdi + rdx]
dec r9
dec edx
mov byte [r9 + rbx + 0xe8d], al
jns 0x18002ef14
mov dword [r8], esi
sub r8, 4
dec ecx
jns 0x18002ef05
mov r11d, ebp
mov dword [rsp + 0x108], ebp
mov r9d, ebp
mov dword [rsp + 0x68], ebp
cmp dword [rsp + 0x34], ebp
jle 0x18002e183
movzx eax, byte [rbx + 0x1ecc]
mov r10d, 0x31
mov edx, dword [rbx + rax*4 + 0xfa0c]
mov dword [rsp + 0x54], eax
mov dword [rsp + 0x60], r10d
imul rax, rax, 0x408
lea r8, [rax + rbx + 0xb17c]
lea rcx, [rax + rbx + 0xe1dc]
lea rax, [rax + rbx + 0xc9ac]
mov dword [rsp + 0x3c], edx
mov r14d, edx
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x48], rcx
jmp 0x18002efa3
mov r8, rdi
mov dword [rbx + 8], 0x24
jmp 0x18002efe3
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002f00f
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002efe3
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], r14d
jl 0x18002efac
mov edx, dword [rbx + 0x24]
mov r15d, dword [rbx + 0x20]
mov eax, 1
sub edx, r14d
mov ecx, edx
mov dword [rbx + 0x24], edx
shr r15d, cl
mov ecx, r14d
shl eax, cl
dec eax
and r15d, eax
jmp 0x18002f0a6
mov esi, dword [rsp + 0xf0]
jmp 0x18002ff08
sub ecx, 0x25
je 0x18002f0c1
dec ecx
je 0x18002f294
dec ecx
je 0x18002f31d
dec ecx
jne 0x18002fb52
mov r8, rdi
mov dword [rbx + 8], 0x28
jmp 0x18002f74c
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002f086
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002f04b
mov ecx, dword [rbx + 0x24]
mov edx, dword [rbx + 0x20]
add r15d, r15d
dec ecx
shr edx, cl
mov dword [rbx + 0x24], ecx
and edx, 1
mov dword [rsp + 0x58], edx
or r15d, edx
cmp r14d, 0x14
jg 0x18002e183
mov rsi, qword [rsp + 0x20]
movsxd rax, r14d
cmp r15d, dword [rsi + rax*4]
jle 0x18002f0ca
inc r14d
mov dword [rbx + 8], 0x25
jmp 0x18002f086
mov rcx, qword [rsp + 0x70]
movsxd rax, r14d
movsxd rcx, dword [rcx + rax*4]
mov eax, r15d
sub eax, ecx
js 0x18002e183
cmp eax, 0x102
jge 0x18002e183
mov r12, qword [rsp + 0x48]
mov rax, rcx
movsxd rcx, r15d
sub rcx, rax
mov eax, dword [r12 + rcx*4]
mov dword [rsp + 0x100], eax
jmp 0x18002f1cb
cmp dword [rbx + 0x24], 1
mov dword [rbx + 8], 0x29
jge 0x18002f15d
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002f152
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002f117
mov rdi, qword [rsp + 0x20]
mov ecx, dword [rbx + 0x24]
mov edx, dword [rbx + 0x20]
add r15d, r15d
dec ecx
shr edx, cl
mov dword [rbx + 0x24], ecx
and edx, 1
mov dword [rsp + 0x58], edx
or r15d, edx
cmp r14d, 0x14
jg 0x18002e183
movsxd rax, r14d
cmp r15d, dword [rdi + rax*4]
jg 0x18002f77d
mov rcx, qword [rsp + 0x70]
movsxd rcx, dword [rcx + rax*4]
mov eax, r15d
sub eax, ecx
js 0x18002e183
cmp eax, 0x102
jge 0x18002e183
mov r12, qword [rsp + 0x48]
mov rax, rcx
movsxd rcx, r15d
sub rcx, rax
mov eax, dword [r12 + rcx*4]
mov dword [rsp + 0x100], eax
mov rsi, qword [rsp + 0x20]
cmp eax, dword [rsp + 0x80]
je 0x18002f785
test eax, eax
je 0x18002f1e5
cmp eax, 1
jne 0x18002f4a2
or rcx, 0xffffffffffffffff
mov r8d, ecx
mov dword [rsp + 0xf8], ecx
lea edx, [rcx + 2]
jmp 0x18002f1fc
mov edx, dword [rsp + 0x50]
test eax, eax
jne 0x18002f205
add r8d, edx
jmp 0x18002f20e
cmp eax, 1
jne 0x18002f216
lea r8d, [r8 + rdx*2]
mov dword [rsp + 0xf8], r8d
add edx, edx
mov dword [rsp + 0x50], edx
test r10d, r10d
jne 0x18002f285
inc r9d
mov dword [rsp + 0x68], r9d
cmp r9d, dword [rsp + 0x34]
jge 0x18002e183
movsxd rax, r9d
mov r10d, 0x32
movzx eax, byte [rax + rbx + 0x1ecc]
mov dword [rsp + 0x54], eax
mov ecx, dword [rbx + rax*4 + 0xfa0c]
mov dword [rsp + 0x3c], ecx
imul rax, rax, 0x408
lea rcx, [rax + rbx + 0xe1dc]
lea rsi, [rax + rbx + 0xb17c]
lea rax, [rax + rbx + 0xc9ac]
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x70], rax
mov r12, rcx
mov r14d, dword [rsp + 0x3c]
dec r10d
mov dword [rsp + 0x60], r10d
jmp 0x18002f29a
mov rsi, rdi
mov r12, rdx
mov dword [rbx + 8], 0x26
jmp 0x18002f2de
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002f2de
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], r14d
jl 0x18002f2a3
mov edx, dword [rbx + 0x24]
mov r15d, dword [rbx + 0x20]
mov eax, 1
sub edx, r14d
mov ecx, edx
mov dword [rbx + 0x24], edx
shr r15d, cl
mov ecx, r14d
shl eax, cl
dec eax
and r15d, eax
cmp r14d, 0x14
jg 0x18002e183
movsxd rax, r14d
cmp r15d, dword [rsi + rax*4]
jle 0x18002f38c
inc r14d
jmp 0x18002f323
mov rsi, rdi
mov r12, rdx
mov dword [rbx + 8], 0x27
jmp 0x18002f367
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002f367
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 1
jl 0x18002f32c
mov ecx, dword [rbx + 0x24]
mov edx, dword [rbx + 0x20]
add r15d, r15d
dec ecx
shr edx, cl
mov dword [rbx + 0x24], ecx
and edx, 1
mov dword [rsp + 0x58], edx
or r15d, edx
jmp 0x18002f305
mov rcx, qword [rsp + 0x70]
movsxd rax, r14d
movsxd rcx, dword [rcx + rax*4]
mov eax, r15d
sub eax, ecx
js 0x18002e183
cmp eax, 0x102
jge 0x18002e183
mov r8d, dword [rsp + 0xf8]
mov rax, rcx
movsxd rcx, r15d
sub rcx, rax
mov eax, dword [r12 + rcx*4]
mov dword [rsp + 0x100], eax
test eax, eax
je 0x18002f1f8
cmp eax, 1
je 0x18002f1f8
movsxd rax, dword [rbx + 0x1e8c]
movsxd rsi, dword [rsp + 0x78]
inc r8d
movzx ecx, byte [rax + rbx + 0xe8c]
mov eax, dword [rsp + 0x100]
mov dword [rsp + 0xf8], r8d
movzx edi, byte [rcx + rbx + 0xd8c]
movsxd rdx, r11d
add dword [rbx + rdi*4 + 0x44], r8d
cmp byte [rbx + 0x2c], bpl
je 0x18002f458
test r8d, r8d
jle 0x18002f1c6
cmp rdx, rsi
jge 0x18002e183
mov rax, qword [rbx + 0xc58]
dec r8d
inc r11d
movzx ecx, dil
mov dword [rsp + 0x108], r11d
mov dword [rsp + 0xf8], r8d
mov word [rax + rdx*2], cx
inc rdx
test r8d, r8d
jg 0x18002f420
jmp 0x18002f496
test r8d, r8d
jle 0x18002f1c6
cmp rdx, rsi
jge 0x18002e183
mov rax, qword [rbx + 0xc50]
dec r8d
inc r11d
movzx ecx, dil
mov dword [rsp + 0x108], r11d
mov dword [rsp + 0xf8], r8d
mov dword [rax + rdx*4], ecx
inc rdx
test r8d, r8d
jg 0x18002f461
mov eax, dword [rsp + 0x100]
jmp 0x18002f1c6
cmp r11d, dword [rsp + 0x78]
jge 0x18002e183
lea edi, [rax - 1]
cmp edi, 0x10
jae 0x18002f583
movsxd rdx, dword [rbx + 0x1e8c]
mov r10, rdx
lea eax, [rdx + rdi]
movsxd rdx, edi
mov r12b, byte [rax + rbx + 0xe8c]
cmp edi, 3
jbe 0x18002f54b
lea rax, [rbx + 0xe8b]
lea r11d, [rdi - 4]
mov r8, rbx
lea rcx, [rax + r10]
mov r9, rbx
mov rsi, rbx
add rcx, rdx
mov rdx, rbx
shr r11d, 2
sub r8, rax
sub r9, rax
sub rsi, rax
sub rdx, rax
inc r11d
mov al, byte [rcx]
add edi, 0xfffffffc
mov byte [r8 + rcx + 0xe8c], al
mov al, byte [rdx + rcx + 0xe8a]
mov byte [rcx], al
mov al, byte [rsi + rcx + 0xe89]
sub rcx, 4
dec r11
mov byte [rdx + rcx + 0xe8e], al
mov al, byte [r9 + rcx + 0xe8c]
mov byte [rsi + rcx + 0xe8d], al
jne 0x18002f507
mov r11d, dword [rsp + 0x108]
movsxd rax, edi
test edi, edi
je 0x18002f576
add rax, r10
or r11, 0xffffffffffffffff
lea rcx, [rax + rbx + 0xe8c]
mov al, byte [r11 + rcx]
mov byte [rcx], al
dec rcx
dec edi
jne 0x18002f561
mov r11d, dword [rsp + 0x108]
mov byte [r10 + rbx + 0xe8c], r12b
jmp 0x18002f645
mov esi, edi
mov r9d, 0xf
shr esi, 4
and edi, r9d
lea rdx, [rbx + rsi*4 + 0x1e8c]
add edi, dword [rdx]
movsxd rax, edi
lea r8, [rax + rbx + 0xe8c]
mov r12b, byte [r8]
jmp 0x18002f5b7
mov al, byte [r8 - 1]
dec edi
mov byte [r8], al
dec r8
cmp edi, dword [rdx]
jg 0x18002f5ab
inc dword [rdx]
jmp 0x18002f5df
mov ecx, dword [rdx]
dec ecx
mov dword [rdx], ecx
add rdx, 0xfffffffffffffffc
movsxd rcx, ecx
movsxd rax, dword [rdx]
dec esi
mov al, byte [rax + rbx + 0xe9b]
mov byte [rcx + rbx + 0xe8c], al
test esi, esi
jg 0x18002f5bf
or rax, 0xffffffffffffffff
add dword [rbx + 0x1e8c], eax
movsxd rax, dword [rbx + 0x1e8c]
mov byte [rax + rbx + 0xe8c], r12b
cmp dword [rbx + 0x1e8c], ebp
jne 0x18002f645
mov edi, 0x1000
mov rsi, r9
lea rcx, [rbx + 0x1ec8]
lea r8d, [rdi - 1]
mov rdx, r9
sub edi, 0x10
movsxd rax, dword [rcx]
dec r8
add rax, rdx
dec rdx
mov al, byte [rax + rbx + 0xe8c]
mov byte [r8 + rbx + 0xe8d], al
jns 0x18002f61d
mov dword [rcx], edi
sub rcx, 4
dec rsi
jns 0x18002f617
movzx ecx, r12b
movsxd rdx, r11d
movzx eax, byte [rcx + rbx + 0xd8c]
inc dword [rbx + rax*4 + 0x44]
movzx ecx, byte [rcx + rbx + 0xd8c]
cmp byte [rbx + 0x2c], bpl
je 0x18002f673
mov rax, qword [rbx + 0xc58]
mov word [rax + rdx*2], cx
jmp 0x18002f67d
mov rax, qword [rbx + 0xc50]
mov dword [rax + rdx*4], ecx
mov r10d, dword [rsp + 0x60]
mov r9d, dword [rsp + 0x68]
inc r11d
mov dword [rsp + 0x108], r11d
test r10d, r10d
jne 0x18002f6fa
inc r9d
mov dword [rsp + 0x68], r9d
cmp r9d, dword [rsp + 0x34]
jge 0x18002e183
movsxd rax, r9d
mov r10d, 0x32
movzx eax, byte [rax + rbx + 0x1ecc]
mov dword [rsp + 0x54], eax
mov ecx, dword [rbx + rax*4 + 0xfa0c]
mov dword [rsp + 0x3c], ecx
imul rax, rax, 0x408
lea r8, [rax + rbx + 0xb17c]
lea rcx, [rax + rbx + 0xe1dc]
lea rax, [rax + rbx + 0xc9ac]
mov qword [rsp + 0x20], r8
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x70], rax
jmp 0x18002f6ff
mov r8, qword [rsp + 0x20]
mov r14d, dword [rsp + 0x3c]
dec r10d
mov dword [rsp + 0x60], r10d
jmp 0x18002f03f
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002f00f
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002f74c
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], r14d
jl 0x18002f711
mov edx, dword [rbx + 0x24]
mov r15d, dword [rbx + 0x20]
mov rdi, qword [rsp + 0x20]
sub edx, r14d
mov eax, 1
mov ecx, edx
mov dword [rbx + 0x24], edx
shr r15d, cl
mov ecx, r14d
shl eax, cl
dec eax
and r15d, eax
jmp 0x18002f177
inc r14d
jmp 0x18002f10a
cmp dword [rbx + 0x38], ebp
jl 0x18002e183
cmp dword [rbx + 0x38], r11d
jge 0x18002e183
or dword [rbx + 0xc70], 0xffffffff
cmp dword [rbx + 0x34], 2
mov dword [rbx + 0x10], ebp
mov byte [rbx + 0xc], bpl
mov dword [rbx + 8], 2
jl 0x18002f7d3
mov rcx, qword [sym.imp.msvcrt.dll__iob]
lea rdx, str.rtrld
add rcx, 0x60
call qword [sym.imp.msvcrt.dll_fprintf]
mov r11d, dword [rsp + 0x108]
lea rdx, [rbx + 0x44c]
mov r12d, 0x100
lea rsi, [rbx + 0x44]
mov rdi, rdx
mov ecx, r12d
mov dword [rbx + 0x448], ebp
rep movsd dword [rdi], dword [rsi]
mov eax, dword [rdx - 4]
add dword [rdx], eax
add rdx, 4
dec r12
jne 0x18002f7f2
cmp byte [rbx + 0x2c], bpl
je 0x18002fa4b
lea rdi, [rbx + 0x84c]
lea rsi, [rbx + 0x448]
mov ecx, 0x101
mov r9d, ebp
rep movsd dword [rdi], dword [rsi]
test r11d, r11d
jle 0x18002f8ad
mov rsi, rbp
mov rcx, qword [rbx + 0xc58]
movzx r8d, byte [rcx + rsi*2]
movzx eax, word [rbx + r8*4 + 0x84c]
mov word [rcx + rsi*2], ax
test r9b, 1
jne 0x18002f86c
mov rcx, qword [rbx + 0xc60]
mov rdx, rsi
sar rdx, 1
mov al, byte [rdx + rcx]
and al, 0xf0
or al, byte [rbx + r8*4 + 0x84e]
mov byte [rdx + rcx], al
jmp 0x18002f89a
mov ecx, dword [rbx + r8*4 + 0x84c]
mov rdx, qword [rbx + 0xc60]
mov eax, dword [rbx + r8*4 + 0x84c]
sar ecx, 0xc
mov rdi, rsi
sar eax, 0xc
sar rdi, 1
xor cl, byte [rdi + rdx]
and cl, 0xf
xor cl, al
mov byte [rdi + rdx], cl
inc dword [rbx + r8*4 + 0x84c]
inc r9d
inc rsi
cmp r9d, r11d
jl 0x18002f82e
movsxd r13, dword [rbx + 0x38]
mov rax, qword [rbx + 0xc60]
mov rcx, r13
sar rcx, 1
movzx r11d, byte [rcx + rax]
mov rax, qword [rbx + 0xc58]
mov cl, r13b
and cl, 1
shl cl, 2
shr r11d, cl
movzx ecx, word [rax + r13*2]
and r11d, 0xf
shl r11d, 0x10
or r11d, ecx
mov rax, qword [rbx + 0xc60]
mov rdx, qword [rbx + 0xc58]
movsxd rsi, r11d
mov r9, rsi
mov edi, r11d
sar r9, 1
and edi, 1
movzx r8d, byte [r9 + rax]
movzx eax, word [rdx + rsi*2]
mov cl, dil
shl cl, 2
mov word [rdx + rsi*2], r13w
shr r8d, cl
mov rcx, qword [rbx + 0xc60]
and r8d, 0xf
shl r8d, 0x10
or r8d, eax
test edi, edi
jne 0x18002f943
mov al, byte [r9 + rcx]
sar r13d, 0x10
and al, 0xf0
or r13b, al
mov byte [r9 + rcx], r13b
jmp 0x18002f95a
mov eax, r13d
sar r13d, 0xc
sar eax, 0xc
xor al, byte [r9 + rcx]
and al, 0xf
xor al, r13b
mov byte [r9 + rcx], al
mov r13d, r11d
mov r11d, r8d
cmp r13d, dword [rbx + 0x38]
jne 0x18002f8e6
mov r12d, dword [rbx + 0x38]
mov dword [rsp + 0x38], r8d
mov dword [rbx + 0x444], ebp
lea rdx, [rbx + 0x448]
mov dword [rbx + 0x3c], r12d
mov ecx, r12d
cmp byte [rbx + 0x14], bpl
je 0x18002f9fe
mov qword [rbx + 0x18], rbp
call fcn.18002b490
mov rcx, qword [rbx + 0xc60]
mov dword [rbx + 0x40], eax
mov esi, eax
mov rax, qword [rbx + 0xc58]
mov edx, r12d
mov edi, r12d
and r12b, 1
shr rdx, 1
movzx edx, byte [rdx + rcx]
mov cl, r12b
shl cl, 2
shr edx, cl
movzx ecx, word [rax + rdi*2]
mov dword [rbx + 0x444], 1
and edx, 0xf
shl edx, 0x10
or edx, ecx
mov dword [rbx + 0x3c], edx
mov eax, dword [0x180043330]
mov dword [rbx + 0x1c], 1
mov dword [rbx + 0x18], eax
or rax, 0xffffffffffffffff
add dword [rbx + 0x18], eax
cmp dword [rbx + 0x18], 1
mov eax, ebp
sete al
xor eax, esi
jmp 0x18002fb05
call fcn.18002b490
mov rcx, r12
mov rdi, r12
shr rcx, 1
mov dword [rbx + 0x40], eax
mov rax, qword [rbx + 0xc60]
movzx edx, byte [rcx + rax]
mov rax, qword [rbx + 0xc58]
and r12b, 1
mov cl, r12b
shl cl, 2
shr edx, cl
movzx ecx, word [rax + rdi*2]
mov dword [rbx + 0x444], 1
and edx, 0xf
shl edx, 0x10
or edx, ecx
mov dword [rbx + 0x3c], edx
jmp 0x18002fefc
mov r13d, ebp
test r11d, r11d
jle 0x18002fa85
mov rsi, rbp
mov rdi, qword [rbx + 0xc50]
mov eax, r13d
inc r13d
movzx edx, byte [rdi + rsi]
shl eax, 8
add rsi, 4
movsxd rcx, dword [rbx + rdx*4 + 0x448]
or dword [rdi + rcx*4], eax
inc dword [rbx + rdx*4 + 0x448]
cmp r13d, r11d
jl 0x18002fa56
mov rdx, qword [rbx + 0xc50]
movsxd rax, dword [rbx + 0x38]
mov ecx, dword [rdx + rax*4]
mov dword [rbx + 0x444], ebp
shr ecx, 8
mov dword [rbx + 0x3c], ecx
cmp byte [rbx + 0x14], bpl
je 0x18002faeb
mov qword [rbx + 0x18], rbp
mov ecx, dword [rdx + rcx*4]
mov dword [rbx + 0x444], 1
movzx eax, cl
mov dword [rbx + 0x3c], ecx
shr dword [rbx + 0x3c], 8
mov dword [rbx + 0x40], eax
mov eax, dword [0x180043330]
mov dword [rbx + 0x1c], 1
mov dword [rbx + 0x18], eax
or rax, 0xffffffffffffffff
add dword [rbx + 0x18], eax
cmp dword [rbx + 0x18], 1
mov eax, ebp
sete al
xor dword [rbx + 0x40], eax
jmp 0x18002fefc
mov eax, dword [rbx + 0x3c]
mov ecx, dword [rdx + rax*4]
mov dword [rbx + 0x444], 1
mov dword [rbx + 0x3c], ecx
shr dword [rbx + 0x3c], 8
movzx eax, cl
mov dword [rbx + 0x40], eax
jmp 0x18002fefc
sub ecx, 0x2a
je 0x18002fb5e
dec ecx
je 0x18002fbbe
dec ecx
je 0x18002fc1e
dec ecx
je 0x18002fc7e
dec ecx
je 0x18002fcde
dec ecx
je 0x18002fd44
dec ecx
je 0x18002fdb0
dec ecx
je 0x18002fe1c
dec ecx
je 0x18002fe88
mov ecx, 3
call qword [sym.imp.msvcrt.dll_exit]
int3
mov dword [rbx + 8], 0x2a
jmp 0x18002fba2
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fba2
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fb67
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x72
jne 0x18002e183
mov dword [rbx + 8], 0x2b
jmp 0x18002fc02
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fc02
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fbc7
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x45
jne 0x18002e183
mov dword [rbx + 8], 0x2c
jmp 0x18002fc62
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fc62
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fc27
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x38
jne 0x18002e183
mov dword [rbx + 8], 0x2d
jmp 0x18002fcc2
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fcc2
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fc87
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x50
jne 0x18002e183
mov dword [rbx + 8], 0x2e
jmp 0x18002fd22
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fd22
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fce7
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x90
jne 0x18002e183
mov dword [rbx + 0xc6c], ebp
mov dword [rbx + 8], 0x2f
jmp 0x18002fd88
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fd88
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fd4d
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0xc6c]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0xc6c], ecx
mov dword [rbx + 8], 0x30
jmp 0x18002fdf4
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fdf4
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fdb9
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0xc6c]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0xc6c], ecx
mov dword [rbx + 8], 0x31
jmp 0x18002fe60
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fe60
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fe25
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
add ecx, 0xfffffff8
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0xc6c]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0xc6c], ecx
mov dword [rbx + 8], 0x32
jmp 0x18002fec8
mov rdi, qword [rbx]
cmp dword [rdi + 8], ebp
je 0x18002fefc
mov rax, qword [rdi]
mov edx, dword [rbx + 0x20]
movzx ecx, byte [rax]
add dword [rbx + 0x24], 8
shl edx, 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 0x18002fec8
inc dword [rax + 0x10]
cmp dword [rbx + 0x24], 8
jl 0x18002fe91
mov ecx, dword [rbx + 0x24]
mov eax, dword [rbx + 0x20]
mov dword [rbx + 8], 1
add ecx, 0xfffffff8
mov ebp, 4
shr eax, cl
mov dword [rbx + 0x24], ecx
mov ecx, dword [rbx + 0xc6c]
shl ecx, 8
movzx edx, al
or ecx, edx
mov dword [rbx + 0xc6c], ecx
mov esi, dword [rsp + 0xf0]
mov r8, qword [rsp + 0x20]
mov eax, dword [rsp + 0x38]
mov dword [rbx + 0xfa24], r13d
mov dword [rbx + 0xfa34], esi
mov dword [rbx + 0xfa28], eax
mov eax, dword [rsp + 0x2c]
mov dword [rbx + 0xfa64], r14d
mov dword [rbx + 0xfa2c], eax
mov eax, dword [rsp + 0x40]
mov dword [rbx + 0xfa68], r15d
mov dword [rbx + 0xfa30], eax
mov eax, dword [rsp + 0x34]
mov qword [rbx + 0xfa78], r8
mov dword [rbx + 0xfa38], eax
mov eax, dword [rsp + 0x80]
mov dword [rbx + 0xfa3c], eax
mov eax, dword [rsp + 0x68]
mov dword [rbx + 0xfa40], eax
mov eax, dword [rsp + 0x60]
mov dword [rbx + 0xfa44], eax
mov eax, dword [rsp + 0x100]
mov dword [rbx + 0xfa48], eax
mov eax, dword [rsp + 0x78]
mov dword [rbx + 0xfa4c], eax
mov eax, dword [rsp + 0x108]
mov dword [rbx + 0xfa50], eax
mov eax, dword [rsp + 0xf8]
mov dword [rbx + 0xfa54], eax
mov eax, dword [rsp + 0x50]
mov dword [rbx + 0xfa58], eax
mov eax, dword [rsp + 0x28]
mov dword [rbx + 0xfa5c], eax
mov eax, dword [rsp + 0x8c]
mov dword [rbx + 0xfa60], eax
mov eax, dword [rsp + 0x58]
mov dword [rbx + 0xfa6c], eax
mov eax, dword [rsp + 0x54]
mov dword [rbx + 0xfa70], eax
mov eax, dword [rsp + 0x3c]
mov dword [rbx + 0xfa74], eax
mov rax, qword [rsp + 0x70]
mov qword [rbx + 0xfa80], rax
mov rax, qword [rsp + 0x48]
mov qword [rbx + 0xfa88], rax
mov eax, ebp
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret