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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xc0
mov rax, qword [0x14014be40]
xor rax, rsp
mov qword [rsp + 0xb8], rax
mov r15, qword [rcx]
mov rbx, rcx
mov ecx, dword [rcx + 8]
xor ebp, ebp
lea rax, [rbx + 0xfa24]
lea rdx, [rbx + 0xfa28]
lea rdi, [rbx + 0xfa2c]
lea rsi, [rbx + 0xfa30]
lea r8, [rbx + 0xfa34]
lea r9, [rbx + 0xfa38]
lea r10, [rbx + 0xfa3c]
lea r11, [rbx + 0xfa40]
lea r14, [rbx + 0xfa44]
cmp ecx, 0xa
jne 0x1400d228e
mov dword [rax], ebp
mov dword [rdx], ebp
mov dword [rdi], ebp
mov dword [rsi], ebp
mov dword [r8], ebp
mov dword [r9], ebp
mov dword [r10], ebp
mov dword [r11], ebp
mov dword [r14], 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
mov r12d, dword [rax]
mov eax, dword [rdx]
mov edx, dword [r14]
mov r9d, dword [r9]
mov r11d, dword [r11]
mov r14d, dword [rbx + 0xfa64]
mov r13d, dword [rbx + 0xfa68]
mov dword [rsp + 0x44], eax
mov eax, dword [rdi]
mov dword [rsp + 0xac], eax
mov eax, dword [rsi]
mov rsi, qword [rbx + 0xfa88]
mov dword [rsp + 0x54], eax
mov eax, dword [r8]
mov r8d, dword [rbx + 0xfa54]
mov dword [rsp + 0x58], eax
mov eax, dword [r10]
mov r10d, dword [rbx + 0xfa50]
mov dword [rsp + 0x90], eax
mov eax, dword [rbx + 0xfa48]
mov dword [rsp + 0x48], eax
mov eax, dword [rbx + 0xfa4c]
mov dword [rsp + 0x7c], eax
mov eax, dword [rbx + 0xfa58]
mov dword [rsp + 0x78], eax
mov eax, dword [rbx + 0xfa5c]
mov dword [rsp + 0x4c], eax
mov eax, dword [rbx + 0xfa60]
mov dword [rsp + 0xa8], eax
mov eax, dword [rbx + 0xfa6c]
mov dword [rsp + 0x80], eax
mov eax, dword [rbx + 0xfa70]
mov dword [rsp + 0x84], eax
mov eax, dword [rbx + 0xfa74]
mov dword [rsp + 0x68], eax
mov rax, qword [rbx + 0xfa80]
mov dword [rsp + 0x40], edx
mov rdx, qword [rbx + 0xfa78]
mov qword [rsp + 0x98], rax
mov dword [rsp + 0x5c], r9d
mov dword [rsp + 0x60], r11d
mov dword [rsp + 0x64], r10d
mov dword [rsp + 0x50], r8d
mov dword [rsp + 0xa4], r14d
mov dword [rsp + 0xa0], r13d
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x70], rsi
cmp ecx, 0x1e
jg 0x1400d2e01
je 0x1400d2d8f
cmp ecx, 0x14
jg 0x1400d28d7
je 0x1400d285e
cmp ecx, 0xf
jg 0x1400d26b9
je 0x1400d2653
sub ecx, 0xa
je 0x1400d23e9
sub ecx, 1
je 0x1400d2450
sub ecx, 1
je 0x1400d24ad
sub ecx, 1
je 0x1400d250e
cmp ecx, 1
jne 0x1400d3f52
mov dword [rbx + 8], 0xe
jmp 0x1400d262a
mov dword [rbx + 8], 0xa
jmp 0x1400d242f
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d242f
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d23f2
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x42
je 0x1400d2450
mov ebp, 0xfffffffb
jmp 0x1400d4312
mov dword [rbx + 8], 0xb
jmp 0x1400d2496
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2496
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2459
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x5a
jne 0x1400d2446
mov dword [rbx + 8], 0xc
jmp 0x1400d24f3
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d24f3
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d24b6
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x68
jne 0x1400d2446
mov dword [rbx + 8], 0xd
jmp 0x1400d2554
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2554
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2517
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 0x1400d2446
sub edx, 0x30
mov r8d, 1
mov dword [rbx + 0x28], edx
mov rcx, qword [r15 + 0x48]
mov rax, qword [r15 + 0x38]
cmp byte [rbx + 0x2c], bpl
je 0x1400d25dc
imul edx, edx, 0x30d40
call rax
imul edx, dword [rbx + 0x28], 0x186a0
mov r8d, 1
mov qword [rbx + 0xc58], rax
mov rcx, qword [r15 + 0x48]
sar edx, 1
call qword [r15 + 0x38]
mov qword [rbx + 0xc60], rax
cmp qword [rbx + 0xc58], rbp
je 0x1400d25d2
test rax, rax
jne 0x1400d23dd
mov ebp, 0xfffffffd
jmp 0x1400d4312
imul edx, edx, 0x61a80
call rax
mov qword [rbx + 0xc50], rax
jmp 0x1400d25c9
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d262a
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d25ed
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x17
je 0x1400d3f6b
cmp al, 0x31
je 0x1400d2653
mov ebp, 0xfffffffc
jmp 0x1400d4312
mov dword [rbx + 8], 0xf
jmp 0x1400d2699
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2699
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d265c
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x41
jne 0x1400d2649
mov dword [rbx + 8], 0x10
jmp 0x1400d2717
sub ecx, 0x10
je 0x1400d26b0
sub ecx, 1
je 0x1400d2732
sub ecx, 1
je 0x1400d2793
cmp ecx, 1
je 0x1400d27f4
jmp 0x1400d3f52
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2717
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d26da
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x1400d2649
mov dword [rbx + 8], 0x11
jmp 0x1400d2778
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2778
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d273b
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x26
jne 0x1400d2649
mov dword [rbx + 8], 0x12
jmp 0x1400d27d9
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d27d9
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d279c
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x53
jne 0x1400d2649
mov dword [rbx + 8], 0x13
jmp 0x1400d283a
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d283a
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d27fd
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x59
jne 0x1400d2649
inc dword [rbx + 0x30]
mov dword [rbx + 0xc68], ebp
mov dword [rbx + 8], 0x14
jmp 0x1400d28a4
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d28a4
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2867
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], 0x15
jmp 0x1400d2966
sub ecx, 0x15
je 0x1400d28cb
sub ecx, 1
je 0x1400d298d
sub ecx, 1
je 0x1400d29fa
sub ecx, 1
je 0x1400d2a67
sub ecx, 1
je 0x1400d2ac8
sub ecx, 1
je 0x1400d2b2f
sub ecx, 1
je 0x1400d2b96
sub ecx, 1
je 0x1400d2c1e
cmp ecx, 1
je 0x1400d2cc6
jmp 0x1400d3f52
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2966
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2929
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 0x1400d29d3
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d29d3
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2996
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 0x1400d2a40
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2a40
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2a03
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 0x1400d2aad
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2aad
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d2a70
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 0x1400d2b0e
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2b0e
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2ad1
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 0x1400d2b75
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2b75
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2b38
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 0x1400d2bdc
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2bdc
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d2b9f
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
jl 0x1400d2649
imul eax, dword [rbx + 0x28], 0x186a0
add eax, 0xa
cmp ecx, eax
jg 0x1400d2649
mov r12d, ebp
cmp r12d, 0x10
jge 0x1400d2c89
mov dword [rbx + 8], 0x1c
jmp 0x1400d2c64
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2c64
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d2c27
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 1]
movsxd rax, r12d
shr edx, cl
and dl, 1
mov dword [rbx + 0x24], ecx
inc r12d
mov byte [rax + rbx + 0xd7c], dl
jmp 0x1400d2c18
lea rcx, [rbx + 0xc7c]
xor edx, edx
mov r8d, 0x100
call sub.VCRUNTIME140.dll_memset
mov r12d, ebp
cmp r12d, 0x10
jge 0x1400d2d45
movsxd rax, r12d
cmp byte [rax + rbx + 0xd7c], bpl
je 0x1400d2d3d
mov edx, ebp
mov dword [rsp + 0x44], edx
cmp edx, 0x10
jge 0x1400d2d3d
mov dword [rbx + 8], 0x1d
jmp 0x1400d2d0c
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2d0c
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d2ccf
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
mov edx, dword [rsp + 0x44]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x1400d2d39
mov eax, r12d
shl eax, 4
add eax, edx
cdqe
mov byte [rax + rbx + 0xc7c], 1
inc edx
jmp 0x1400d2cbd
inc r12d
jmp 0x1400d2ca0
mov dword [rbx + 0xc78], ebp
lea rdx, [rbx + 0xc7c]
mov ecx, ebp
cmp byte [rdx], bpl
je 0x1400d2d6d
movsxd rax, dword [rbx + 0xc78]
mov byte [rax + rbx + 0xd8c], cl
inc dword [rbx + 0xc78]
inc ecx
inc rdx
cmp ecx, 0x100
jl 0x1400d2d54
mov eax, dword [rbx + 0xc78]
test eax, eax
je 0x1400d2649
add eax, 2
mov dword [rsp + 0x54], eax
mov dword [rbx + 8], 0x1e
jmp 0x1400d2dd5
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2dd5
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 3
jl 0x1400d2d98
mov r8d, dword [rbx + 0x20]
lea ecx, [rdi - 3]
shr r8d, cl
and r8d, 7
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x58], r8d
lea eax, [r8 - 2]
cmp eax, 4
jbe 0x1400d2e52
jmp 0x1400d2649
cmp ecx, 0x29
jg 0x1400d3f05
je 0x1400d34b9
cmp ecx, 0x24
jg 0x1400d33df
je 0x1400d3361
sub ecx, 0x1f
je 0x1400d2e4d
sub ecx, 1
je 0x1400d2ed8
sub ecx, 1
je 0x1400d3000
sub ecx, 1
je 0x1400d3083
cmp ecx, 1
je 0x1400d30e0
jmp 0x1400d3f52
mov r8d, dword [rsp + 0x58]
mov dword [rbx + 8], 0x1f
jmp 0x1400d2e98
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2e98
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 0xf
jl 0x1400d2e5b
mov r9d, dword [rbx + 0x20]
lea ecx, [rdi - 0xf]
shr r9d, cl
and r9d, 0x7fff
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x5c], r9d
cmp r9d, 1
jb 0x1400d2649
mov r12d, ebp
mov edx, 0x4652
cmp r12d, r9d
jge 0x1400d2f6e
mov dword [rsp + 0x44], ebp
mov r8d, dword [rsp + 0x58]
mov dword [rbx + 8], 0x20
jmp 0x1400d2f23
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d2f23
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d2ee6
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x1400d2f4e
mov edx, dword [rsp + 0x44]
inc edx
mov dword [rsp + 0x44], edx
cmp edx, r8d
jl 0x1400d2edd
jmp 0x1400d2649
mov edx, 0x4652
cmp r12d, edx
jge 0x1400d2f66
mov ecx, dword [rsp + 0x44]
movsxd rax, r12d
mov byte [rax + rbx + 0x651e], cl
inc r12d
jmp 0x1400d2ecb
cmp r9d, edx
mov cl, bpl
cmovg r9d, edx
mov dword [rsp + 0x5c], r9d
test r8d, r8d
jle 0x1400d2f96
movzx eax, cl
mov byte [rsp + rax + 0xac], cl
inc cl
movzx eax, cl
cmp eax, r8d
jl 0x1400d2f82
mov r12d, ebp
test r9d, r9d
jle 0x1400d2fea
lea rdi, [rbx + 0x1ecc]
mov r8d, r9d
mov r12d, r9d
movzx edx, byte [rdi + 0x4652]
lea rcx, [rsp + 0xac]
add rcx, rdx
mov sil, byte [rcx]
test dl, dl
je 0x1400d2fd1
mov al, byte [rcx - 1]
mov byte [rcx], al
dec rcx
add dl, 0xff
jne 0x1400d2fc4
mov byte [rdi], sil
inc rdi
mov byte [rsp + 0xac], sil
sub r8, 1
jne 0x1400d2fab
mov r8d, dword [rsp + 0x58]
mov eax, dword [rsp + 0x54]
mov esi, ebp
mov dword [rsp + 0xac], esi
cmp esi, r8d
jge 0x1400d3186
mov dword [rbx + 8], 0x21
jmp 0x1400d3046
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d3046
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 5
jl 0x1400d3009
mov edx, dword [rbx + 0x20]
lea ecx, [rdi - 5]
mov esi, dword [rsp + 0xac]
mov r12d, ebp
shr edx, cl
and edx, 0x1f
mov dword [rbx + 0x24], ecx
mov dword [rsp + 0x4c], edx
mov eax, dword [rsp + 0x54]
cmp r12d, eax
jge 0x1400d317a
lea eax, [rdx - 1]
cmp eax, 0x13
ja 0x1400d2649
mov dword [rbx + 8], 0x22
jmp 0x1400d30c9
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d30c9
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d308c
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
je 0x1400d3150
mov dword [rbx + 8], 0x23
jmp 0x1400d3126
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d3126
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d30e9
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 1]
mov edx, dword [rsp + 0x4c]
shr eax, cl
mov dword [rbx + 0x24], ecx
test al, 1
jne 0x1400d3145
inc edx
jmp 0x1400d3147
dec edx
mov dword [rsp + 0x4c], edx
jmp 0x1400d3077
mov ecx, dword [rsp + 0x4c]
movsxd rsi, dword [rsp + 0xac]
movsxd rdx, r12d
imul rax, rsi, 0x102
add rax, rbx
inc r12d
mov byte [rdx + rax + 0xab70], cl
mov edx, ecx
jmp 0x1400d306a
mov r8d, dword [rsp + 0x58]
inc esi
jmp 0x1400d2ff0
mov dword [rsp + 0xac], ebp
movsxd r15, r8d
test r8d, r8d
jle 0x1400d325f
lea r12, [rbx + 0xfa0c]
mov r13d, ebp
lea r14, [rbx + 0xab70]
jmp 0x1400d31b0
mov eax, dword [rsp + 0x54]
mov edi, 0x20
mov esi, ebp
test eax, eax
jle 0x1400d31dd
mov rdx, r14
mov r8d, eax
mov ecx, edi
movzx edi, byte [rdx]
cmp edi, esi
mov eax, edi
cmovle eax, esi
cmp edi, ecx
mov esi, eax
cmovge edi, ecx
inc rdx
sub r8, 1
jne 0x1400d31c1
movsxd rax, r13d
lea r8, [rbx + 0xe1dc]
imul rcx, rax, 0x408
imul r9, rax, 0x102
mov eax, dword [rsp + 0x54]
lea rdx, [rbx + 0xc9ac]
add r8, rcx
mov dword [rsp + 0x30], eax
add rdx, rcx
mov dword [rsp + 0x28], esi
add rcx, 0xb17c
mov dword [rsp + 0x20], edi
add rcx, rbx
add r9, 0xab70
add r9, rbx
call fcn.1400d444c
mov dword [r12], edi
inc r13d
add r12, 4
add r14, 0x102
sub r15, 1
jne 0x1400d31ac
mov r14d, dword [rsp + 0xa4]
mov dword [rsp + 0xac], 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 r15d, ebp
mov dword [rsp + 0x7c], eax
call sub.VCRUNTIME140.dll_memset
mov ecx, 0xf
lea r10, [rbx + 0x1e8b]
mov r8d, 0x1000
lea r9, [rbx + 0x1ec8]
mov r12d, 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 0x1400d32c3
mov dword [r9], r8d
sub r9, 4
sub ecx, 1
jns 0x1400d32ac
mov r9d, dword [rsp + 0x5c]
mov r10d, ebp
mov dword [rsp + 0x64], ebp
mov r11d, ebp
mov dword [rsp + 0x60], ebp
test r9d, r9d
jg 0x1400d32fe
mov ebp, 0xfffffffc
jmp 0x1400d4317
movzx eax, byte [rbx + 0x1ecc]
mov r15d, 0x31
imul rcx, rax, 0x408
mov edx, dword [rbx + rax*4 + 0xfa0c]
mov r14d, edx
mov dword [rsp + 0x84], eax
lea rax, [rbx + 0xb17c]
add rax, rcx
mov dword [rsp + 0x68], edx
mov qword [rsp + 0x88], rax
lea rax, [rbx + 0xe1dc]
add rax, rcx
mov dword [rsp + 0x40], r15d
mov qword [rsp + 0x70], rax
lea rax, [rbx + 0xc9ac]
add rax, rcx
mov qword [rsp + 0x98], rax
jmp 0x1400d3366
mov r15d, dword [rsp + 0x40]
mov dword [rbx + 8], 0x24
jmp 0x1400d33ac
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4317
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 0x1400d33ac
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r14d
jl 0x1400d336f
mov r13d, dword [rbx + 0x20]
sub edi, r14d
mov r8, qword [rsp + 0x88]
mov ecx, edi
shr r13d, cl
mov eax, 1
mov ecx, r14d
mov dword [rbx + 0x24], edi
shl eax, cl
dec eax
and r13d, eax
jmp 0x1400d3475
sub ecx, 0x25
je 0x1400d3404
sub ecx, 1
je 0x1400d3646
sub ecx, 1
je 0x1400d36d5
cmp ecx, 1
je 0x1400d3a92
jmp 0x1400d3f52
mov r15d, dword [rsp + 0x40]
mov r8, rdx
mov dword [rbx + 8], 0x25
jmp 0x1400d3452
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4317
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 0x1400d3452
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d3415
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 + 0x80], edx
or r13d, edx
cmp r14d, 0x14
jg 0x1400d32f4
movsxd rcx, r14d
cmp r13d, dword [r8 + rcx*4]
jle 0x1400d3490
inc r14d
jmp 0x1400d340c
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x1400d32f4
mov r15, qword [rsp + 0x70]
cdqe
mov eax, dword [r15 + rax*4]
jmp 0x1400d356a
mov r8, rdx
mov edi, dword [rbx + 0x24]
mov dword [rbx + 8], 0x29
cmp edi, 1
jge 0x1400d3515
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d3508
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d34cb
mov rsi, qword [rsp + 0x70]
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 + 0x80], edx
or r13d, edx
cmp r14d, 0x14
jg 0x1400d2649
movsxd rcx, r14d
cmp r13d, dword [r8 + rcx*4]
jg 0x1400d3b10
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x1400d2649
mov r15, qword [rsp + 0x70]
cdqe
mov eax, dword [rsi + rax*4]
mov dword [rsp + 0x48], eax
cmp eax, dword [rsp + 0x90]
je 0x1400d3b25
cmp eax, 1
ja 0x1400d3824
or r8d, 0xffffffff
mov dword [rsp + 0x50], r8d
lea esi, [r8 + 2]
mov dword [rsp + 0x78], esi
jmp 0x1400d359b
mov esi, dword [rsp + 0x78]
cmp esi, 0x200000
jge 0x1400d2649
test eax, eax
jne 0x1400d35b0
add r8d, esi
jmp 0x1400d35b9
cmp eax, 1
jne 0x1400d35be
lea r8d, [r8 + rsi*2]
mov dword [rsp + 0x50], r8d
mov edx, dword [rsp + 0x40]
add esi, esi
mov dword [rsp + 0x78], esi
test edx, edx
jne 0x1400d3639
inc r11d
mov dword [rsp + 0x60], r11d
cmp r11d, r9d
jge 0x1400d3b18
movsxd rax, r11d
lea r15, [rbx + 0xe1dc]
mov edx, 0x32
movzx eax, byte [rax + rbx + 0x1ecc]
mov dword [rsp + 0x84], eax
mov ecx, dword [rbx + rax*4 + 0xfa0c]
mov dword [rsp + 0x68], ecx
imul rcx, rax, 0x408
lea rax, [rbx + 0xb17c]
add rax, rcx
add r15, rcx
mov qword [rsp + 0x88], rax
lea rax, [rbx + 0xc9ac]
add rax, rcx
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x98], rax
mov r14d, dword [rsp + 0x68]
dec edx
mov dword [rsp + 0x40], edx
jmp 0x1400d3649
mov r15, rsi
mov dword [rbx + 8], 0x26
jmp 0x1400d368f
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d368f
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r14d
jl 0x1400d3652
mov r13d, dword [rbx + 0x20]
sub edi, r14d
mov ecx, edi
mov dword [rbx + 0x24], edi
shr r13d, cl
mov eax, 1
mov ecx, r14d
shl eax, cl
dec eax
and r13d, eax
cmp r14d, 0x14
jg 0x1400d2649
mov rax, qword [rsp + 0x88]
movsxd rcx, r14d
cmp r13d, dword [rax + rcx*4]
jle 0x1400d3746
inc r14d
jmp 0x1400d36d8
mov r15, rsi
mov dword [rbx + 8], 0x27
jmp 0x1400d371e
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d371e
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 1
jl 0x1400d36e1
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 + 0x80], edx
or r13d, edx
jmp 0x1400d36b5
mov rdx, qword [rsp + 0x98]
mov eax, r13d
sub eax, dword [rdx + rcx*4]
cmp eax, 0x101
ja 0x1400d2649
cdqe
mov eax, dword [r15 + rax*4]
mov dword [rsp + 0x48], eax
test eax, eax
je 0x1400d3597
cmp eax, 1
je 0x1400d3597
movsxd rax, dword [rbx + 0x1e8c]
inc r8d
movsxd rsi, dword [rsp + 0x7c]
mov dword [rsp + 0x50], r8d
movsxd rdx, r10d
movzx ecx, byte [rax + rbx + 0xe8c]
mov eax, dword [rsp + 0x48]
movzx edi, byte [rcx + rbx + 0xd8c]
add dword [rbx + rdi*4 + 0x44], r8d
cmp byte [rbx + 0x2c], bpl
je 0x1400d37e7
test r8d, r8d
jle 0x1400d356e
cmp rdx, rsi
jge 0x1400d2649
mov rax, qword [rbx + 0xc58]
inc r10d
dec r8d
mov dword [rsp + 0x64], r10d
mov dword [rsp + 0x50], r8d
mov word [rax + rdx*2], di
inc rdx
test r8d, r8d
jg 0x1400d37b9
jmp 0x1400d381b
test r8d, r8d
jle 0x1400d356e
cmp rdx, rsi
jge 0x1400d2649
mov rax, qword [rbx + 0xc50]
inc r10d
dec r8d
mov dword [rsp + 0x64], r10d
mov dword [rsp + 0x50], r8d
mov dword [rax + rdx*4], edi
inc rdx
test r8d, r8d
jg 0x1400d37f0
mov eax, dword [rsp + 0x48]
jmp 0x1400d356e
cmp r10d, dword [rsp + 0x7c]
jge 0x1400d2649
lea edx, [rax - 1]
cmp edx, 0x10
jae 0x1400d38d6
movsxd rsi, dword [rbx + 0x1e8c]
lea edi, [rsi + rdx]
mov r11b, byte [rdi + rbx + 0xe8c]
cmp edx, 3
jbe 0x1400d38a7
lea r8d, [rdx - 4]
shr r8d, 2
inc r8d
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 r8, 1
jne 0x1400d385d
test edx, edx
je 0x1400d38c9
lea ecx, [rsi + 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 0x1400d38b0
mov byte [rsi + rbx + 0xe8c], r11b
jmp 0x1400d39c3
mov eax, edx
and edx, 0xf
shr eax, 4
mov edi, eax
mov eax, dword [rbx + rax*4 + 0x1e8c]
add edx, eax
movsxd rcx, edx
mov r11b, byte [rcx + rbx + 0xe8c]
jmp 0x1400d3910
mov al, byte [rcx + rbx + 0xe8b]
dec edx
mov byte [rcx + rbx + 0xe8c], al
dec rcx
mov eax, dword [rbx + rdi*4 + 0x1e8c]
cmp edx, eax
jg 0x1400d38f6
lea ecx, [rax + 1]
mov dword [rbx + rdi*4 + 0x1e8c], ecx
test edi, edi
je 0x1400d3950
lea rdx, [rbx + 0x1e8c]
lea rdx, [rdx + rdi*4]
movsxd rcx, dword [rdx]
dec edi
lea eax, [rcx - 1]
mov dword [rdx], eax
lea rdx, [rdx - 4]
movsxd rax, dword [rdx]
mov al, byte [rax + rbx + 0xe9b]
mov byte [rcx + rbx + 0xe8b], al
test edi, edi
jg 0x1400d392d
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 0x1400d39c3
mov r9d, 0xf
lea r10, [rbx + 0x1e8b]
mov r8d, 0x1000
lea rdx, [rbx + 0x1ec8]
sub r8d, 0x10
mov rsi, r10
sub r10, 0x10
mov edi, 0xf
mov eax, dword [rdx]
add eax, edi
cdqe
mov cl, byte [rax + rbx + 0xe8c]
mov byte [rsi], cl
dec rsi
sub edi, 1
jns 0x1400d399a
mov dword [rdx], r8d
sub rdx, 4
sub r9, 1
jns 0x1400d398a
mov r10d, dword [rsp + 0x64]
movzx ecx, r11b
movsxd rdx, r10d
movzx eax, byte [rcx + rbx + 0xd8c]
inc dword [rbx + rax*4 + 0x44]
movzx eax, byte [rcx + rbx + 0xd8c]
cmp byte [rbx + 0x2c], bpl
je 0x1400d39f4
movzx ecx, ax
mov rax, qword [rbx + 0xc58]
mov word [rax + rdx*2], cx
jmp 0x1400d3a00
mov ecx, eax
mov rax, qword [rbx + 0xc50]
mov dword [rax + rdx*4], ecx
mov edx, dword [rsp + 0x40]
inc r10d
mov r11d, dword [rsp + 0x60]
mov r9d, dword [rsp + 0x5c]
mov dword [rsp + 0x64], r10d
test edx, edx
jne 0x1400d3a87
inc r11d
mov dword [rsp + 0x60], r11d
cmp r11d, r9d
jge 0x1400d3b18
movsxd rax, r11d
mov edx, 0x32
movzx eax, byte [rax + rbx + 0x1ecc]
mov dword [rsp + 0x84], eax
mov ecx, dword [rbx + rax*4 + 0xfa0c]
mov dword [rsp + 0x68], 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 r14d, dword [rsp + 0x68]
dec edx
mov dword [rsp + 0x40], edx
mov dword [rbx + 8], 0x28
jmp 0x1400d3ad8
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d3ad8
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, r14d
jl 0x1400d3a9b
mov r13d, dword [rbx + 0x20]
sub edi, r14d
mov rsi, qword [rsp + 0x70]
mov ecx, edi
mov r8, qword [rsp + 0x88]
mov eax, 1
shr r13d, cl
mov ecx, r14d
shl eax, cl
dec eax
mov dword [rbx + 0x24], edi
and r13d, eax
jmp 0x1400d3530
inc r14d
jmp 0x1400d34bc
mov ebp, 0xfffffffc
mov r15d, edx
jmp 0x1400d4317
cmp dword [rbx + 0x38], ebp
jl 0x1400d2649
cmp dword [rbx + 0x38], r10d
jge 0x1400d2649
mov r12d, ebp
mov r15d, 1
movsxd rax, r12d
cmp dword [rbx + rax*4 + 0x44], ebp
jl 0x1400d2649
cmp dword [rbx + rax*4 + 0x44], r10d
jg 0x1400d2649
add r12d, r15d
cmp r12d, 0xff
jle 0x1400d3b41
mov r8d, 0x100
mov dword [rbx + 0x448], ebp
lea rdx, [rbx + 0x44c]
mov ecx, r8d
mov rdi, rdx
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, r15
jne 0x1400d3b87
mov r12d, ebp
movsxd rax, r12d
mov ecx, dword [rbx + rax*4 + 0x448]
test ecx, ecx
js 0x1400d2649
cmp ecx, r10d
jg 0x1400d2649
add r12d, r15d
cmp r12d, r8d
jle 0x1400d3b98
mov r12d, r15d
movsxd rcx, r12d
mov eax, dword [rbx + rcx*4 + 0x448]
cmp dword [rbx + rcx*4 + 0x444], eax
jg 0x1400d2649
add r12d, r15d
cmp r12d, r8d
jle 0x1400d3bbe
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 0x1400d3e37
lea rdi, [rbx + 0x84c]
mov ecx, 0x101
lea rsi, [rbx + 0x448]
rep movsd dword [rdi], dword [rsi]
mov esi, ebp
test r10d, r10d
jle 0x1400d3c7e
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 r8b, byte [rdx]
test r15b, sil
jne 0x1400d3c5d
sar ecx, 0x10
and r8b, 0xf0
or cl, r8b
jmp 0x1400d3c69
sar ecx, 0xc
mov al, cl
xor al, r8b
and al, 0xf
xor cl, al
mov byte [rdx], cl
add esi, r15d
add dword [rbx + r9*4 + 0x84c], r15d
add rdi, r15
cmp esi, r10d
jl 0x1400d3c1b
movsxd r12, dword [rbx + 0x38]
mov rax, qword [rbx + 0xc60]
mov rdx, r12
sar rdx, 1
mov ecx, r12d
and ecx, r15d
shl ecx, 2
movzx r10d, byte [rdx + rax]
mov rax, qword [rbx + 0xc58]
shr r10d, cl
and r10d, 0xf
shl r10d, 0x10
movzx ecx, word [rax + r12*2]
or r10d, ecx
mov rax, qword [rbx + 0xc60]
mov esi, r10d
mov rdx, qword [rbx + 0xc58]
and esi, r15d
mov edi, r10d
mov r8d, r10d
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], r12w
mov rdx, qword [rbx + 0xc60]
shl r9d, 0x10
or r9d, eax
mov cl, byte [rdx + r8]
test esi, esi
jne 0x1400d3d12
sar r12d, 0x10
and cl, 0xf0
or r12b, cl
jmp 0x1400d3d20
sar r12d, 0xc
mov al, r12b
xor al, cl
and al, 0xf
xor r12b, al
mov byte [rdx + r8], r12b
mov r12d, r10d
mov ecx, dword [rbx + 0x38]
mov r10d, r9d
cmp r12d, ecx
jne 0x1400d3cb7
imul eax, dword [rbx + 0x28], 0x186a0
mov dword [rsp + 0x44], r9d
mov dword [rbx + 0x3c], ecx
mov dword [rbx + 0x444], ebp
cmp byte [rbx + 0x14], bpl
je 0x1400d3de0
mov qword [rbx + 0x18], rbp
cmp ecx, eax
jae 0x1400d3edf
lea rdx, [rbx + 0x448]
call fcn.1400d1598
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, r15b
shl cl, 2
shr edx, cl
and edx, 0xf
movzx ecx, word [rax + rdi*2]
add dword [rbx + 0x444], r15d
shl edx, 0x10
or edx, ecx
mov dword [rbx + 0x3c], edx
mov edx, dword [rbx + 0x18]
test edx, edx
jne 0x1400d3dce
movsxd rcx, dword [rbx + 0x1c]
lea rdx, [0x14014b1f0]
mov edx, dword [rdx + rcx*4]
lea eax, [rcx + 1]
mov dword [rbx + 0x1c], eax
cmp eax, 0x200
jne 0x1400d3dce
mov dword [rbx + 0x1c], ebp
mov ecx, ebp
lea eax, [rdx - 1]
cmp eax, r15d
sete cl
xor ecx, esi
jmp 0x1400d3ed0
cmp ecx, eax
jae 0x1400d3edf
lea rdx, [rbx + 0x448]
call fcn.1400d1598
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, r15b
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], r15d
mov dword [rbx + 0x3c], edx
jmp 0x1400d4312
mov r12d, ebp
test r10d, r10d
jle 0x1400d3e72
mov rsi, rbp
mov rdx, qword [rbx + 0xc50]
mov eax, r12d
shl eax, 8
add r12d, r15d
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], r15d
cmp r12d, r10d
jl 0x1400d3e42
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 0x1400d3edb
mov qword [rbx + 0x18], rbp
cmp ecx, eax
jae 0x1400d3edf
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], r15d
mov eax, dword [0x14014b1f0]
dec eax
mov dword [rbx + 0x1c], r15d
cmp eax, r15d
sete cl
xor ecx, edx
mov dword [rbx + 0x18], eax
mov dword [rbx + 0x40], ecx
jmp 0x1400d4312
cmp ecx, eax
jb 0x1400d3ee7
mov eax, r15d
jmp 0x1400d4418
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], r15d
jmp 0x1400d4312
sub ecx, 0x2a
je 0x1400d3f6b
sub ecx, 1
je 0x1400d3fcc
sub ecx, 1
je 0x1400d402d
sub ecx, 1
je 0x1400d408e
sub ecx, 1
je 0x1400d40ef
sub ecx, 1
je 0x1400d4156
sub ecx, 1
je 0x1400d41c3
sub ecx, 1
je 0x1400d4230
cmp ecx, 1
je 0x1400d429d
mov ecx, 0xfa1
call fcn.14000a9b8
mov ecx, 0xfa2
call fcn.14000a9b8
jmp 0x1400d4312
mov dword [rbx + 8], 0x2a
jmp 0x1400d3fb1
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d3fb1
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d3f74
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x72
jne 0x1400d2649
mov dword [rbx + 8], 0x2b
jmp 0x1400d4012
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d4012
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d3fd5
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x45
jne 0x1400d2649
mov dword [rbx + 8], 0x2c
jmp 0x1400d4073
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d4073
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d4036
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x38
jne 0x1400d2649
mov dword [rbx + 8], 0x2d
jmp 0x1400d40d4
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d40d4
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d4097
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x50
jne 0x1400d2649
mov dword [rbx + 8], 0x2e
jmp 0x1400d4135
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d4135
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d40f8
mov eax, dword [rbx + 0x20]
lea ecx, [rdi - 8]
shr eax, cl
mov dword [rbx + 0x24], ecx
cmp al, 0x90
jne 0x1400d2649
mov dword [rbx + 0xc6c], ebp
mov dword [rbx + 8], 0x2f
jmp 0x1400d419c
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d419c
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d415f
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 0x1400d4209
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d4209
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d41cc
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 0x1400d4276
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d4276
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d4239
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 0x1400d42df
mov rsi, qword [rbx]
cmp dword [rsi + 8], ebp
je 0x1400d4312
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 0x1400d42df
inc dword [rax + 0x10]
mov edi, dword [rbx + 0x24]
cmp edi, 8
jl 0x1400d42a6
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 r15d, dword [rsp + 0x40]
mov eax, dword [rsp + 0x44]
mov ecx, dword [rsp + 0x64]
mov dword [rbx + 0xfa28], eax
mov eax, dword [rsp + 0xac]
mov dword [rbx + 0xfa2c], eax
mov eax, dword [rsp + 0x54]
mov dword [rbx + 0xfa30], eax
mov eax, dword [rsp + 0x58]
mov dword [rbx + 0xfa34], eax
mov eax, dword [rsp + 0x5c]
mov dword [rbx + 0xfa38], eax
mov eax, dword [rsp + 0x90]
mov dword [rbx + 0xfa3c], eax
mov eax, dword [rsp + 0x60]
mov dword [rbx + 0xfa40], eax
mov eax, dword [rsp + 0x48]
mov dword [rbx + 0xfa48], eax
mov eax, dword [rsp + 0x7c]
mov dword [rbx + 0xfa50], ecx
mov ecx, dword [rsp + 0x50]
mov dword [rbx + 0xfa4c], eax
mov eax, dword [rsp + 0x68]
mov dword [rbx + 0xfa54], ecx
mov ecx, dword [rsp + 0x78]
mov dword [rbx + 0xfa74], eax
mov rax, qword [rsp + 0x88]
mov dword [rbx + 0xfa58], ecx
mov ecx, dword [rsp + 0x4c]
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 + 0x80]
mov dword [rbx + 0xfa6c], ecx
mov ecx, dword [rsp + 0x84]
mov qword [rbx + 0xfa88], rax
mov eax, ebp
mov dword [rbx + 0xfa24], r12d
mov dword [rbx + 0xfa44], r15d
mov dword [rbx + 0xfa64], r14d
mov dword [rbx + 0xfa68], r13d
mov dword [rbx + 0xfa70], ecx
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.1400d4940
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret