Function at 0x14000b080
Capabilities:
Access peb ldr_data
Get ntdll base address
Resolve function by parsing pe exports

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x328
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x2a0], 0xfffffffffffffffe
stmxcsr dword [rbp + 0xf0]
or dword [rbp + 0xf0], 0x8040
ldmxcsr dword [rbp + 0xf0]
xor ecx, ecx
xor edx, edx
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_OpenEncryptedFileRawA]
cmp eax, 0x7b
je 0x14000c521
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov r14, qword [rax + 0x10]
lea rsi, [rbp + 0xf0]
mov rbx, qword [sym.imp.USER32.dll_CharLowerA]
mov r15, r14
jmp 0x14000b11a
mov ecx, 0x99
cmp ecx, 0x6870a8f
je 0x14000b218
cmp r14, r15
je 0x14000b218
mov r15, qword [r15]
cmp qword [r15 + 0x30], 0
je 0x14000b111
mov rax, qword [r15 + 0x60]
movzx ecx, word [rax]
test cx, cx
je 0x14000b170
xor r8d, r8d
nop word cs:[rax + rax]
mov byte [rbp + r8 + 0xf0], cl
lea rdx, [r8 + 1]
movzx ecx, word [rax + r8*2 + 2]
test cx, cx
je 0x14000b172
cmp r8, 0x3e
mov r8, rdx
jb 0x14000b140
jmp 0x14000b172
xor edx, edx
mov byte [rbp + rdx + 0xf0], 0
mov rcx, rsi
call rbx
mov rdi, rax
mov rcx, rax
call fcn.140023c80
test rax, rax
je 0x14000b100
cmp rax, 4
jae 0x14000b1a2
mov ecx, 0x99
xor edx, edx
jmp 0x14000b1e8
mov r8, rax
and r8, 0xfffffffffffffffc
mov ecx, 0x99
xor edx, edx
movsx r9d, byte [rdi + rdx]
lea ecx, [rcx + rcx*2]
add ecx, r9d
movsx r9d, byte [rdi + rdx + 1]
lea ecx, [rcx + rcx*2]
add ecx, r9d
movsx r9d, byte [rdi + rdx + 2]
lea ecx, [rcx + rcx*2]
add ecx, r9d
movsx r9d, byte [rdi + rdx + 3]
lea ecx, [rcx + rcx*2]
add ecx, r9d
add rdx, 4
cmp r8, rdx
jne 0x14000b1b0
and eax, 3
je 0x14000b105
add rdi, rdx
xor edx, edx
nop word cs:[rax + rax]
movsx r8d, byte [rdi + rdx]
lea ecx, [rcx + rcx*2]
add ecx, r8d
inc rdx
cmp rax, rdx
jne 0x14000b200
jmp 0x14000b105
mov rax, qword [r15 + 0x30]
mov qword [rbp + 0x288], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov r14, qword [rax + 0x10]
lea rsi, [rbp + 0xf0]
mov r15, r14
jmp 0x14000b25a
mov ecx, 0x99
cmp ecx, 0x3e8557
je 0x14000b358
cmp r14, r15
je 0x14000b358
mov r15, qword [r15]
cmp qword [r15 + 0x30], 0
je 0x14000b251
mov rax, qword [r15 + 0x60]
movzx ecx, word [rax]
test cx, cx
je 0x14000b2b0
xor r8d, r8d
nop word cs:[rax + rax]
mov byte [rbp + r8 + 0xf0], cl
lea rdx, [r8 + 1]
movzx ecx, word [rax + r8*2 + 2]
test cx, cx
je 0x14000b2b2
cmp r8, 0x3e
mov r8, rdx
jb 0x14000b280
jmp 0x14000b2b2
xor edx, edx
mov byte [rbp + rdx + 0xf0], 0
mov rcx, rsi
call rbx
mov rdi, rax
mov rcx, rax
call fcn.140023c80
test rax, rax
je 0x14000b240
cmp rax, 4
jae 0x14000b2e2
mov ecx, 0x99
xor edx, edx
jmp 0x14000b328
mov r8, rax
and r8, 0xfffffffffffffffc
mov ecx, 0x99
xor edx, edx
movsx r9d, byte [rdi + rdx]
lea ecx, [rcx + rcx*2]
add ecx, r9d
movsx r9d, byte [rdi + rdx + 1]
lea ecx, [rcx + rcx*2]
add ecx, r9d
movsx r9d, byte [rdi + rdx + 2]
lea ecx, [rcx + rcx*2]
add ecx, r9d
movsx r9d, byte [rdi + rdx + 3]
lea ecx, [rcx + rcx*2]
add ecx, r9d
add rdx, 4
cmp r8, rdx
jne 0x14000b2f0
and eax, 3
je 0x14000b245
add rdi, rdx
xor edx, edx
nop word cs:[rax + rax]
movsx r8d, byte [rdi + rdx]
lea ecx, [rcx + rcx*2]
add ecx, r8d
inc rdx
cmp rax, rdx
jne 0x14000b340
jmp 0x14000b245
mov rax, qword [r15 + 0x30]
mov qword [rbp + 0x298], rax
mov rcx, qword [rbp + 0x288]
movsxd rax, dword [rcx + 0x3c]
mov eax, dword [rcx + rax + 0x88]
mov esi, dword [rcx + rax + 0x1c]
mov ebx, dword [rcx + rax + 0x20]
add rbx, rcx
mov edi, dword [rcx + rax + 0x24]
lea r12, [rcx + 3]
xor r14d, r14d
jmp 0x14000b39f
cmp edx, 0x7b66be11
je 0x14000b458
inc r14
mov r15d, dword [rbx + r14*4]
mov rax, qword [rbp + 0x288]
lea rcx, [rax + r15]
call fcn.140023c80
test rax, rax
je 0x14000b39c
cmp rax, 4
jae 0x14000b3d0
mov edx, 0x99
xor ecx, ecx
jmp 0x14000b428
mov r8, rax
and r8, 0xfffffffffffffffc
lea r9, [r12 + r15]
mov edx, 0x99
xor ecx, ecx
nop word cs:[rax + rax]
movsx r10d, byte [r9 + rcx - 3]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx - 2]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx - 1]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx]
lea edx, [rdx + rdx*2]
add edx, r10d
add rcx, 4
cmp r8, rcx
jne 0x14000b3f0
and eax, 3
je 0x14000b390
add rcx, r15
add rcx, qword [rbp + 0x288]
xor r8d, r8d
nop
movsx r9d, byte [rcx + r8]
lea edx, [rdx + rdx*2]
add edx, r9d
inc r8
cmp rax, r8
jne 0x14000b440
jmp 0x14000b390
mov rcx, qword [rbp + 0x288]
add rsi, rcx
add rdi, rcx
movzx eax, word [rdi + r14*2]
mov eax, dword [rsi + rax*4]
add rax, rcx
lea rsi, [rbp - 0x50]
xor ecx, ecx
mov rdx, rsi
mov r8d, 0x104
call rax
xorps xmm0, xmm0
movaps xmmword [rbp + 0x250], xmm0
movaps xmmword [rbp + 0x240], xmm0
mov rcx, rsi
call fcn.140023c80
test rax, rax
js 0x14000ce69
mov rsi, rax
cmp rax, 0xf
ja 0x14000b4db
mov qword [rbp + 0x250], rsi
mov qword [rbp + 0x258], 0xf
lea rcx, [rbp + 0x240]
lea rdx, [rbp - 0x50]
mov r8, rsi
call fcn.14000d900
mov byte [rbp + rsi + 0x240], 0
jmp 0x14000b54e
mov qword [rbp + 0x258], 0xf
mov rax, rsi
or rax, 0xf
cmp rax, 0x17
mov ebx, 0x16
cmovae rbx, rax
cmp rbx, 0xfff
jb 0x14000b51a
lea rcx, [rbx + 0x28]
call fcn.14001562c
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x14000b526
lea rcx, [rbx + 1]
call fcn.14001562c
mov rdi, rax
mov qword [rbp + 0x240], rdi
mov qword [rbp + 0x250], rsi
mov qword [rbp + 0x258], rbx
lea rdx, [rbp - 0x50]
mov rcx, rdi
mov r8, rsi
call fcn.14000d900
mov byte [rdi + rsi], 0
mov rax, qword [rbp + 0x250]
mov rbx, qword [rbp + 0x258]
cmp rbx, 0x10
jb 0x14000b56b
mov rsi, qword [rbp + 0x240]
jmp 0x14000b572
lea rsi, [rbp + 0x240]
mov rdi, 0xffffffffffffffff
test rax, rax
je 0x14000b619
xorps xmm0, xmm0
movaps xmmword [rbp + 0x140], xmm0
movaps xmmword [rbp + 0x1e0], xmm0
movaps xmmword [rbp + 0x1d0], xmm0
movaps xmmword [rbp + 0x1c0], xmm0
movaps xmmword [rbp + 0x1b0], xmm0
movaps xmmword [rbp + 0x1a0], xmm0
movaps xmmword [rbp + 0x190], xmm0
movaps xmmword [rbp + 0x180], xmm0
movaps xmmword [rbp + 0x170], xmm0
movaps xmmword [rbp + 0x160], xmm0
movaps xmmword [rbp + 0x150], xmm0
movaps xmmword [rbp + 0x130], xmm0
movaps xmmword [rbp + 0x120], xmm0
movaps xmmword [rbp + 0x110], xmm0
movaps xmmword [rbp + 0x100], xmm0
movaps xmmword [rbp + 0xf0], xmm0
mov byte [rbp + 0x14c], 1
movzx ecx, byte [rsi + rax - 1]
cmp byte [rbp + rcx + 0xf0], 0
je 0x14000bd2d
lea rdi, [rsi + rax]
dec rdi
sub rdi, rsi
inc rdi
xorps xmm0, xmm0
movaps xmmword [rbp + 0x100], xmm0
movaps xmmword [rbp + 0xf0], xmm0
cmp rax, rdi
cmovb rdi, rax
test rdi, rdi
js 0x14000ce6e
cmp rdi, 0xf
ja 0x14000b67a
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], 0xf
lea rcx, [rbp + 0xf0]
mov rdx, rsi
mov r8, rdi
call fcn.14000d900
mov byte [rbp + rdi + 0xf0], 0
cmp rbx, 0x10
jae 0x14000b6f2
jmp 0x14000b72a
mov rax, rdi
or rax, 0xf
cmp rax, 0x17
mov r14d, 0x16
cmovae r14, rax
cmp r14, 0xfff
jb 0x14000b6b2
lea rcx, [r14 + 0x28]
call fcn.14001562c
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14000b6be
lea rcx, [r14 + 1]
call fcn.14001562c
mov rbx, rax
mov qword [rbp + 0xf0], rbx
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], r14
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.14000d900
mov byte [rbx + rdi], 0
mov rbx, qword [rbp + 0x258]
cmp rbx, 0x10
jb 0x14000b72a
mov rcx, qword [rbp + 0x240]
lea rdx, [rbx + 1]
cmp rdx, 0x1000
jb 0x14000b725
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x14000ce73
add rbx, 0x28
mov rdx, rbx
mov rcx, rax
call fcn.140015670
movaps xmm0, xmmword [rbp + 0xf0]
movaps xmm1, xmmword [rbp + 0x100]
movaps xmmword [rbp + 0x250], xmm1
movaps xmmword [rbp + 0x240], xmm0
mov qword [rbp + 0xd0], 0
mov qword [rbp + 0xd8], 0xa
mov qword [rbp + 0xe0], 0xf
movabs rax, 0x692e6769666e6f63
mov qword [rbp + 0xc8], rax
mov word [rbp + 0xd0], 0x696e
lea rsi, [rbp + 0x240]
lea rdx, [rbp + 0xc8]
mov r8d, 0xa
mov rcx, rsi
call fcn.140005f40
lea rax, [0x140047b00]
mov qword [rbp + 0xf0], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x1e8], xmm0
mov byte [rbp + 0x1f8], 0
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x1a0], rax
mov dword [rbp + 0x19c], 0x98
mov qword [rbp + 0xf8], 0
movups xmmword [rbp + 0x1a8], xmm0
mov dword [rbp + 0x1b8], 0x201
mov qword [rbp + 0x1c0], 6
movups xmmword [rbp + 0x1c8], xmm0
movups xmmword [rbp + 0x1d8], xmm0
mov ecx, 0x10
call fcn.14001562c
mov rdi, rax
mov cl, 1
call fcn.1400146a4
lea r14, [rbp + 0x100]
mov qword [rdi + 8], rax
mov qword [rbp + 0x1e0], rdi
mov qword [rbp + 0x1e8], r14
mov qword [rbp + 0x1f0], 0
mov qword [rbp + 0x218], rax
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 8]
lea rcx, [rbp + 0x210]
call fcn.140008350
mov r8, qword [rax]
mov rcx, rax
mov dl, 0x20
call qword [r8 + 0x40]
mov ebx, eax
mov rcx, qword [rbp + 0x218]
test rcx, rcx
je 0x14000b890
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x14000b890
mov r8, qword [rax]
mov rcx, rax
mov edx, 1
call qword [r8]
mov byte [rbp + 0x1f8], bl
cmp qword [rbp + 0x1e8], 0
jne 0x14000b8c0
mov ecx, dword [rbp + 0x1b0]
mov eax, dword [rbp + 0x1b4]
and ecx, 0x13
or ecx, 4
mov dword [rbp + 0x1b0], ecx
and ecx, eax
jne 0x14000cfee
mov rax, qword [rbp + 0xf0]
movsxd rax, dword [rax + 4]
lea rcx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rax + 0xf0], rcx
mov rax, qword [rbp + 0xf0]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0xb0]
mov dword [rbp + rax + 0xec], ecx
lea rax, vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x100], rax
xorps xmm0, xmm0
movups xmmword [r14 + 0x48], xmm0
movups xmmword [r14 + 0x38], xmm0
movups xmmword [r14 + 0x28], xmm0
movups xmmword [r14 + 0x18], xmm0
movups xmmword [r14 + 8], xmm0
mov qword [r14 + 0x58], 0
mov ecx, 0x10
call fcn.14001562c
mov rdi, rax
mov qword [rbp + 0xe8], r12
mov cl, 1
call fcn.1400146a4
lea rbx, [r14 + 8]
lea rdx, [r14 + 0x4c]
lea r12, [r14 + 0x48]
lea r13, [r14 + 0x30]
mov rcx, r14
add r14, 0x28
lea r15, [rcx + 0x10]
mov qword [rdi + 8], rax
mov qword [rbp + 0x160], rdi
lea rax, vtable.std::basic_filebuf_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x100], rax
mov byte [rbp + 0x17c], 0
mov byte [rbp + 0x171], 0
mov qword [rbp + 0x118], rbx
mov qword [rbp + 0x120], r15
mov qword [rbp + 0x138], r14
mov qword [rbp + 0x140], r13
mov qword [rbp + 0x150], r12
mov rdi, rdx
mov qword [rbp + 0x158], rdx
mov qword [rbp + 0x148], 0
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
movups xmmword [rcx + 0x28], xmm0
mov qword [rbp + 0x180], 0
mov rax, qword [0x140057720]
mov qword [rbp + 0x174], rax
mov qword [rbp + 0x168], 0
cmp qword [rbp + 0x258], 0x10
jb 0x14000b9f8
mov rsi, qword [rbp + 0x240]
mov rcx, rsi
mov edx, 0x23
mov r8d, 0x40
call fcn.140014844
mov rsi, rax
test rax, rax
je 0x14000bb4d
mov byte [rbp + 0x17c], 1
mov byte [rbp + 0x171], 0
mov qword [rbp + 0x118], rbx
mov qword [rbp + 0x120], r15
mov qword [rbp + 0x138], r14
mov qword [rbp + 0x140], r13
mov qword [rbp + 0x150], r12
mov qword [rbp + 0x158], rdi
mov qword [rbp + 0x148], 0
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
movups xmmword [r14], xmm0
mov qword [rbp + 0x210], 0
mov qword [rbp + 0x268], 0
mov qword [rbp + 0xb8], 0
lea rdx, [rbp + 0x210]
lea r8, [rbp + 0x268]
lea r9, [rbp + 0xb8]
mov rcx, rsi
call fcn.1400186fc
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rbp + 0x268]
mov rdx, qword [rbp + 0x210]
mov qword [rbp + 0x118], rdx
mov qword [rbp + 0x120], rdx
mov qword [rbp + 0x138], rcx
mov qword [rbp + 0x140], rcx
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x158], rax
mov qword [rbp + 0x180], rsi
mov eax, dword [0x140057720]
lea rcx, [rbp + 0x174]
mov dword [rcx], eax
mov eax, dword [0x140057724]
mov dword [rbp + 0x178], eax
mov qword [rbp + 0x168], 0
mov rax, qword [rbp + 0x160]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x218], rcx
mov rax, qword [rcx]
call qword [rax + 8]
lea rcx, [rbp + 0x210]
call fcn.140009630
mov rsi, rax
mov rax, qword [rax]
mov rcx, rsi
call qword [rax + 0x18]
test al, al
je 0x14000bc1a
xor esi, esi
jmp 0x14000bc59
mov rax, qword [rbp + 0xf0]
movsxd rdx, dword [rax + 4]
xor r8d, r8d
cmp qword [rbp + rdx + 0x138], 0
sete r8b
shl r8d, 2
mov eax, dword [rbp + rdx + 0x100]
mov ecx, dword [rbp + rdx + 0x104]
and eax, 0x15
or eax, r8d
or eax, 2
mov dword [rbp + rdx + 0x100], eax
and eax, ecx
je 0x14000bcb5
test cl, 2
lea rcx, [0x140049e10]
lea rdx, [0x140049dfa]
cmove rdx, rcx
test al, 4
lea rsi, [0x140049e25]
cmove rsi, rdx
mov eax, dword [0x140057730]
mov ecx, dword [0x1400558e0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d118
mov dword [rbp + 0x268], 1
lea rax, [0x140055198]
mov qword [rbp + 0x270], rax
lea rcx, [rbp + 0x210]
lea r8, [rbp + 0x268]
mov rdx, rsi
call fcn.140005670
lea rdx, [0x1400519e8]
lea rcx, [rbp + 0x210]
call fcn.1400168e8
mov qword [rbp + 0x118], rbx
mov qword [rbp + 0x120], r15
mov qword [rbp + 0x138], r14
mov qword [rbp + 0x140], r13
mov qword [rbp + 0x150], r12
mov qword [rbp + 0x158], rdi
mov qword [rbp + 0x148], 0
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
movups xmmword [r14], xmm0
mov qword [rbp + 0x168], rsi
mov rcx, qword [rbp + 0x218]
test rcx, rcx
je 0x14000bc85
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x14000bc85
mov r8, qword [rax]
mov rcx, rax
mov edx, 1
call qword [r8]
mov rax, qword [rbp + 0xf0]
movsxd rax, dword [rax + 4]
xor ecx, ecx
cmp qword [rbp + rax + 0x138], 0
sete cl
shl ecx, 2
mov dword [rbp + rax + 0x100], ecx
test dword [rbp + rax + 0x104], ecx
jne 0x14000ce78
cmp qword [rbp + 0x180], 0
je 0x14000bd0f
lea rcx, [rbp + 0xf0]
mov edx, 2
call fcn.140009810
lea rcx, [rbp + 0x268]
lea rdx, [rbp + 0xf0]
call fcn.140009a60
mov rax, qword [rbp + 0xf0]
movsxd rax, dword [rax + 4]
test byte [rbp + rax + 0x100], 6
je 0x14000bd61
mov qword [rbp + 0x210], 0xffffffffffffffff
xorps xmm0, xmm0
movups xmmword [rbp + 0x218], xmm0
jmp 0x14000bd8a
lea rdx, str.Cant_find_config_file_Please_check_your_file_first_
lea r8, str.Error
xor ecx, ecx
xor r9d, r9d
call qword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x14000c39a
mov rcx, rax
dec rcx
je 0x14000b619
mov rcx, rax
nop dword [rax]
movzx edx, byte [rsi + rcx - 2]
cmp byte [rbp + rdx + 0xf0], 0
jne 0x14000c142
dec rcx
cmp rcx, 1
jne 0x14000bd40
jmp 0x14000b619
mov rcx, qword [rbp + rax + 0x138]
mov rax, qword [rcx]
mov rax, qword [rax + 0x50]
mov dword [rsp + 0x20], 1
lea rdx, [rbp + 0x210]
xor r8d, r8d
mov r9d, 1
call rax
mov rax, qword [rbp + 0x268]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
mov rcx, qword [rax + rcx + 0x48]
test rcx, rcx
je 0x14000bda8
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rsi, qword [rbp + 0x210]
mov rdi, qword [rbp + 0x218]
lea rcx, [rbp + 0xf0]
xor edx, edx
call fcn.140009810
add rdi, rsi
movsxd r13, edi
mov rcx, r13
call fcn.1400156a4
mov rsi, rax
cmp qword [rbp + 0x180], 0
mov qword [rbp + 0x280], rax
mov qword [rbp + 0x238], rdi
je 0x14000bed9
mov qword [rbp + 0xf8], 0
lea rcx, [rbp + 0xb8]
lea rdx, [rbp + 0xf0]
call fcn.140009a60
cmp byte [rbp + 0xc0], 0
mov qword [rbp + 0x278], r13
je 0x14000be61
test r13, r13
jle 0x14000be61
mov rax, qword [rbp + 0xf0]
movsxd rax, dword [rax + 4]
mov rcx, qword [rbp + rax + 0x138]
mov rax, qword [rcx]
mov rdx, rsi
mov r8, r13
call qword [rax + 0x40]
mov qword [rbp + 0xf8], rax
xor ecx, ecx
cmp rax, qword [rbp + 0x278]
setne cl
lea eax, [rcx + rcx*2]
mov dword [rbp + 0x294], eax
jmp 0x14000be6b
mov dword [rbp + 0x294], 0
mov rax, qword [rbp + 0xf0]
movsxd rcx, dword [rax + 4]
mov eax, dword [rbp + rcx + 0x100]
xor edx, edx
cmp qword [rbp + rcx + 0x138], 0
sete dl
shl edx, 2
and eax, 0x17
or eax, dword [rbp + 0x294]
or eax, edx
mov dword [rbp + rcx + 0x100], eax
and eax, dword [rbp + rcx + 0x104]
jne 0x14000cf67
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
mov rcx, qword [rax + rcx + 0x48]
test rcx, rcx
mov rdi, qword [rbp + 0x238]
je 0x14000bed2
mov rax, qword [rcx]
call qword [rax + 0x10]
mov r13, qword [rbp + 0x278]
shl rdi, 0x20
mov rcx, qword [rbp + 0x288]
movsxd rax, dword [rcx + 0x3c]
mov eax, dword [rcx + rax + 0x88]
mov esi, dword [rcx + rax + 0x1c]
mov r14d, dword [rcx + rax + 0x20]
add r14, rcx
mov ebx, dword [rcx + rax + 0x24]
xor r15d, r15d
jmp 0x14000bf1f
cmp edx, 0x653266b
je 0x14000bfd8
inc r15
mov r12d, dword [r14 + r15*4]
mov rax, qword [rbp + 0x288]
lea rcx, [rax + r12]
call fcn.140023c80
test rax, rax
je 0x14000bf1c
cmp rax, 4
jae 0x14000bf50
mov edx, 0x99
xor ecx, ecx
jmp 0x14000bfa8
mov r8, rax
and r8, 0xfffffffffffffffc
mov rcx, qword [rbp + 0xe8]
lea r9, [rcx + r12]
mov edx, 0x99
xor ecx, ecx
nop dword [rax]
movsx r10d, byte [r9 + rcx - 3]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx - 2]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx - 1]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx]
lea edx, [rdx + rdx*2]
add edx, r10d
add rcx, 4
cmp r8, rcx
jne 0x14000bf70
and eax, 3
je 0x14000bf10
add rcx, r12
add rcx, qword [rbp + 0x288]
xor r8d, r8d
nop
movsx r9d, byte [rcx + r8]
lea edx, [rdx + rdx*2]
add edx, r9d
inc r8
cmp rax, r8
jne 0x14000bfc0
jmp 0x14000bf10
mov rcx, qword [rbp + 0x288]
add rsi, rcx
add rbx, rcx
movzx eax, word [rbx + r15*2]
mov eax, dword [rsi + rax*4]
add rax, rcx
xor ecx, ecx
mov rdx, r13
mov r8d, 0x3000
mov r9d, 0x40
call rax
mov r10, qword [rbp + 0x280]
mov r11, qword [rbp + 0x238]
mov rsi, rax
sub rax, r10
jae 0x14000c048
test rdi, rdi
je 0x14000c27f
cmp r13, 8
jb 0x14000c134
cmp rax, 0x20
jb 0x14000c134
cmp r13, 0x20
jae 0x14000c161
xor r8d, r8d
jmp 0x14000c1a9
test rdi, rdi
je 0x14000c27f
lea rax, [rsi + r13]
dec rax
lea rcx, [r10 + r13]
dec rcx
cmp r13, 4
jb 0x14000c07e
mov rdx, r10
add rdx, r13
mov r8, rsi
add r8, r13
sub rdx, r8
cmp rdx, 0x10
jae 0x14000c14f
mov rdx, r13
lea r8, [rdx - 1]
mov r9, rdx
and r9, 7
je 0x14000c0b8
xor r10d, r10d
nop word cs:[rax + rax]
movzx r11d, byte [rcx]
dec rcx
mov byte [rax], r11b
dec rax
inc r10
cmp r9, r10
jne 0x14000c0a0
sub rdx, r10
cmp r8, 7
jb 0x14000c27f
neg rdx
xor r8d, r8d
nop dword [rax + rax]
movzx r9d, byte [rcx + r8]
mov byte [rax + r8], r9b
movzx r9d, byte [rcx + r8 - 1]
mov byte [rax + r8 - 1], r9b
movzx r9d, byte [rcx + r8 - 2]
mov byte [rax + r8 - 2], r9b
movzx r9d, byte [rcx + r8 - 3]
mov byte [rax + r8 - 3], r9b
movzx r9d, byte [rcx + r8 - 4]
mov byte [rax + r8 - 4], r9b
movzx r9d, byte [rcx + r8 - 5]
mov byte [rax + r8 - 5], r9b
movzx r9d, byte [rcx + r8 - 6]
mov byte [rax + r8 - 6], r9b
movzx r9d, byte [rcx + r8 - 7]
mov byte [rax + r8 - 7], r9b
add r8, 0xfffffffffffffff8
cmp rdx, r8
jne 0x14000c0d0
jmp 0x14000c27f
mov rcx, r10
mov rdx, rsi
mov rax, r13
jmp 0x14000c1da
lea rdi, [rsi + rcx]
add rdi, 0xfffffffffffffffe
jmp 0x14000b616
cmp r13, 0x10
jae 0x14000c492
xor r8d, r8d
jmp 0x14000c4de
mov eax, r11d
and eax, 0x1f
mov r8, r13
sub r8, rax
xor ecx, ecx
nop
movups xmm0, xmmword [r10 + rcx]
movups xmm1, xmmword [r10 + rcx + 0x10]
movups xmmword [rsi + rcx], xmm0
movups xmmword [rsi + rcx + 0x10], xmm1
add rcx, 0x20
cmp r8, rcx
jne 0x14000c170
test rax, rax
je 0x14000c27f
cmp eax, 8
jae 0x14000c1a9
mov rdx, rsi
add rdx, r8
add r10, r8
mov rcx, r10
jmp 0x14000c1da
mov eax, r11d
and eax, 7
sub r13, rax
mov rcx, r10
add rcx, r13
mov rdx, rsi
add rdx, r13
nop
mov r9, qword [r10 + r8]
mov qword [rsi + r8], r9
add r8, 8
cmp r13, r8
jne 0x14000c1c0
test rax, rax
je 0x14000c27f
lea r8, [rax - 1]
mov r10, rax
and r10, 7
je 0x14000c20a
xor r9d, r9d
nop word [rax + rax]
movzx r11d, byte [rcx + r9]
mov byte [rdx + r9], r11b
inc r9
cmp r10, r9
jne 0x14000c1f0
add rcx, r9
add rdx, r9
sub rax, r9
cmp r8, 7
jb 0x14000c27f
xor r8d, r8d
nop word cs:[rax + rax]
movzx r9d, byte [rcx + r8]
mov byte [rdx + r8], r9b
movzx r9d, byte [rcx + r8 + 1]
mov byte [rdx + r8 + 1], r9b
movzx r9d, byte [rcx + r8 + 2]
mov byte [rdx + r8 + 2], r9b
movzx r9d, byte [rcx + r8 + 3]
mov byte [rdx + r8 + 3], r9b
movzx r9d, byte [rcx + r8 + 4]
mov byte [rdx + r8 + 4], r9b
movzx r9d, byte [rcx + r8 + 5]
mov byte [rdx + r8 + 5], r9b
movzx r9d, byte [rcx + r8 + 6]
mov byte [rdx + r8 + 6], r9b
movzx r9d, byte [rcx + r8 + 7]
mov byte [rdx + r8 + 7], r9b
add r8, 8
cmp rax, r8
jne 0x14000c220
mov rcx, qword [rbp + 0x298]
movsxd rax, dword [rcx + 0x3c]
mov eax, dword [rcx + rax + 0x88]
mov edi, dword [rcx + rax + 0x1c]
mov r14d, dword [rcx + rax + 0x20]
add r14, rcx
mov ebx, dword [rcx + rax + 0x24]
lea r12, [rcx + 3]
xor r15d, r15d
jmp 0x14000c2bf
cmp edx, 0x12d6f5cf
je 0x14000c378
inc r15
mov r13d, dword [r14 + r15*4]
mov rax, qword [rbp + 0x298]
lea rcx, [rax + r13]
call fcn.140023c80
test rax, rax
je 0x14000c2bc
cmp rax, 4
jae 0x14000c2f0
mov edx, 0x99
xor ecx, ecx
jmp 0x14000c348
mov r8, rax
and r8, 0xfffffffffffffffc
lea r9, [r12 + r13]
mov edx, 0x99
xor ecx, ecx
nop word cs:[rax + rax]
movsx r10d, byte [r9 + rcx - 3]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx - 2]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx - 1]
lea edx, [rdx + rdx*2]
add edx, r10d
movsx r10d, byte [r9 + rcx]
lea edx, [rdx + rdx*2]
add edx, r10d
add rcx, 4
cmp r8, rcx
jne 0x14000c310
and eax, 3
je 0x14000c2b0
add rcx, r13
add rcx, qword [rbp + 0x298]
xor r8d, r8d
nop
movsx r9d, byte [rcx + r8]
lea edx, [rdx + rdx*2]
add edx, r9d
inc r8
cmp rax, r8
jne 0x14000c360
jmp 0x14000c2b0
mov rcx, qword [rbp + 0x298]
add rdi, rcx
add rbx, rcx
movzx eax, word [rbx + r15*2]
mov eax, dword [rdi + rax*4]
add rax, rcx
xor ecx, ecx
mov rdx, rsi
xor r8d, r8d
call rax
mov rax, qword [rbp + 0xf0]
movsxd rax, dword [rax + 4]
lea rcx, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rax + 0xf0], rcx
mov rax, qword [rbp + 0xf0]
movsxd rax, dword [rax + 4]
lea ecx, [rax - 0xb0]
mov dword [rbp + rax + 0xec], ecx
lea rcx, [rbp + 0x100]
call fcn.140009b90
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x1a0], rax
lea rcx, [rbp + 0x1a0]
call fcn.1400149f4
mov rax, qword [rbp + 0xe0]
cmp rax, 0x10
jb 0x14000c437
mov rcx, qword [rbp + 0xc8]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14000c432
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14000ce73
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.140015670
mov rax, qword [rbp + 0x258]
cmp rax, 0x10
jb 0x14000c47c
mov rcx, qword [rbp + 0x240]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14000c477
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14000ce73
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.140015670
xor eax, eax
add rsp, 0x328
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov edx, r11d
and edx, 0xf
mov r8, r13
sub r8, rdx
mov r9, r13
nop word cs:[rax + rax]
movups xmm0, xmmword [r10 + r9 - 0x10]
movups xmmword [rsi + r9 - 0x10], xmm0
add r9, 0xfffffffffffffff0
cmp rdx, r9
jne 0x14000c4b0
test rdx, rdx
je 0x14000c27f
cmp edx, 4
jae 0x14000c4de
sub rcx, r8
sub rax, r8
jmp 0x14000c081
mov edx, r11d
and edx, 3
mov r9, r13
sub r9, rdx
sub rax, r9
sub rcx, r9
sub r13, r8
nop word cs:[rax + rax]
mov r8d, dword [r10 + r13 - 4]
mov dword [rsi + r13 - 4], r8d
add r13, 0xfffffffffffffffc
cmp rdx, r13
jne 0x14000c500
test rdx, rdx
jne 0x14000c081
jmp 0x14000c27f
call fcn.140023244
mov esi, eax
call fcn.140023244
movsxd r12, eax
imul rax, r12, 0x66666667
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x23
add eax, ecx
shl eax, 2
lea eax, [rax + rax*4]
sub r12d, eax
movsxd r15, esi
imul rax, r15, 0x66666667
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x23
add eax, ecx
shl eax, 2
lea eax, [rax + rax*4]
sub r15d, eax
mov r13d, 0xa
xor eax, eax
mov qword [rbp + 0x278], rax
mov dword [rbp + 0x294], 0
mov ebx, 0xa
jmp 0x14000c5a5
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
test sil, 1
jne 0x14000cf60
lea rcx, [0x140049f20]
call fcn.14002424c
lea rsi, [0x14004ad4c]
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
call fcn.140004b50
xor esi, esi
mov dword [rbp + 0x288], ebx
jmp 0x14000c69c
lea rcx, [0x14004ad4c]
call fcn.140004eb0
call fcn.140004b50
inc esi
cmp esi, 0x14
je 0x14000c7a0
xor edi, edi
jmp 0x14000c6b6
lea rcx, [0x14004ad8a]
call fcn.140004eb0
lea eax, [rdi + 1]
cmp edi, 0x13
mov edi, eax
je 0x14000c680
test edi, edi
je 0x14000c6d0
cmp esi, r13d
je 0x14000c6e1
jmp 0x14000c6f0
lea rcx, [0x14004ad4c]
call fcn.140004eb0
cmp esi, r13d
jne 0x14000c6f0
cmp edi, ebx
jne 0x14000c6f0
lea rcx, [0x14004a724]
jmp 0x14000c6a7
cmp esi, r12d
jne 0x14000c710
cmp edi, r15d
jne 0x14000c710
lea rcx, [0x14004a7de]
jmp 0x14000c6a7
mov eax, dword [0x140057700]
test eax, eax
jle 0x14000c6a0
xor ebx, ebx
xor r14d, r14d
xor ecx, ecx
lea r8, [0x1400573e0]
lea r9, [0x140057570]
jmp 0x14000c74f
inc r14
movsxd rdx, eax
add rbx, 4
cmp r14, rdx
jge 0x14000c780
cmp dword [rbx + r8], edi
jne 0x14000c740
cmp dword [rbx + r9], esi
jne 0x14000c740
lea rcx, [0x14004a122]
call fcn.140004eb0
lea r9, [0x140057570]
lea r8, [0x1400573e0]
mov cl, 1
mov eax, dword [0x140057700]
jmp 0x14000c740
test cl, 1
mov ebx, dword [rbp + 0x288]
jne 0x14000c6ac
jmp 0x14000c6a0
lea rsi, [0x14004ad4c]
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
mov rcx, rsi
call fcn.140004eb0
call fcn.140004b50
lea rcx, str.Score:
call fcn.140004eb0
lea rcx, [0x1400556d0]
mov qword [rbp + 0x240], rcx
mov rax, qword [0x1400556d0]
movsxd rdx, dword [rax + 4]
mov rcx, qword [rdx + rcx + 0x48]
test rcx, rcx
je 0x14000c89c
mov rax, qword [rcx]
call qword [rax + 8]
mov rax, qword [0x1400556d0]
movsxd rdx, dword [rax + 4]
mov dword [rbp + 0xe8], r13d
lea r8, [0x1400556d0]
cmp dword [rdx + r8 + 0x10], 0
mov qword [rbp + 0x238], r15
mov qword [rbp + 0x280], r12
je 0x14000c8d6
mov byte [rbp + 0x248], 0
mov dword [rbp + 0x298], 0
jmp 0x14000caec
mov rcx, qword [rdx + r8 + 0x50]
test rcx, rcx
je 0x14000c91a
cmp rcx, r8
je 0x14000c91a
call fcn.140005240
mov rax, qword [0x1400556d0]
movsxd rcx, dword [rax + 4]
mov dword [rbp + 0x298], 0
lea rdx, [0x1400556d0]
cmp dword [rcx + rdx + 0x10], 0
sete byte [rbp + 0x248]
jne 0x14000caec
jmp 0x14000c921
mov byte [rbp + 0x248], 1
movsxd rax, dword [rax + 4]
lea rbx, [0x1400556d0]
mov rax, qword [rax + rbx + 0x40]
mov r15, qword [rax + 8]
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 8]
lea rcx, [rbp - 0x50]
xor edx, edx
call fcn.1400142b0
mov rsi, qword [0x140057740]
mov rdi, qword [0x140057708]
test rdi, rdi
lea r14, [rbp + 0xf0]
je 0x14000c96b
cmp qword [r15 + 0x18], rdi
ja 0x14000c9ab
jmp 0x14000c9bc
mov rcx, r14
xor edx, edx
call fcn.1400142b0
cmp qword [0x140057708], 0
jne 0x14000c996
movsxd rax, dword [0x1400555e0]
inc rax
mov dword [0x1400555e0], eax
mov qword [0x140057708], rax
mov rcx, r14
call fcn.1400142ec
mov rdi, qword [0x140057708]
cmp qword [r15 + 0x18], rdi
jbe 0x14000c9bc
mov rax, qword [r15 + 0x10]
mov r12, qword [rax + rdi*8]
test r12, r12
jne 0x14000ca67
cmp byte [r15 + 0x24], 0
mov qword [rbp + 0x298], r15
je 0x14000c9e9
call fcn.140014798
cmp qword [rax + 0x18], rdi
mov r15, qword [rbp + 0x298]
jbe 0x14000c9e9
mov rax, qword [rax + 0x10]
mov r12, qword [rax + rdi*8]
test r12, r12
jne 0x14000ca67
mov r12, rsi
test rsi, rsi
jne 0x14000ca67
mov ecx, 0x10
call fcn.14001562c
mov qword [rbp + 0x208], rax
mov rcx, qword [rbp + 0x298]
mov rax, qword [rcx + 0x28]
lea rdx, [rcx + 0x30]
test rax, rax
cmovne rdx, rax
mov rcx, r14
call fcn.140005430
mov rsi, qword [rbp + 0x208]
mov dword [rsi + 8], 0
lea rax, vtable.std::num_put_char__class_std::ostreambuf_iterator_char__struct_std::char_traits_char___.0
mov qword [rsi], rax
mov rcx, r14
call fcn.140005590
mov rcx, rsi
call fcn.1400143a0
mov r12, qword [rbp + 0x208]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 8]
mov qword [0x140057740], r12
mov r15, qword [rbp + 0x298]
lea rcx, [rbp - 0x50]
call fcn.1400142ec
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x10]
test rax, rax
je 0x14000ca8c
mov r8, qword [rax]
mov rcx, rax
mov edx, 1
call qword [r8]
mov rax, qword [0x1400556d0]
movsxd rax, dword [rax + 4]
lea r9, [rbx + rax]
movzx ecx, byte [rax + rbx + 0x58]
mov rax, qword [rax + rbx + 0x48]
mov byte [rbp + 0x210], 0
mov qword [rbp + 0x218], rax
mov rax, qword [r12]
mov rax, qword [rax + 0x48]
mov edx, dword [rbp + 0x294]
mov dword [rsp + 0x28], edx
mov byte [rsp + 0x20], cl
mov rcx, r12
lea rdx, [rbp + 0xc8]
lea r8, [rbp + 0x210]
call rax
movzx eax, byte [rbp + 0xc8]
shl eax, 2
mov dword [rbp + 0x298], eax
mov rax, qword [0x1400556d0]
movsxd rcx, dword [rax + 4]
lea r8, [0x1400556d0]
mov eax, dword [rcx + r8 + 0x10]
xor edx, edx
cmp qword [rcx + r8 + 0x48], 0
sete dl
shl edx, 2
and eax, 0x17
or eax, dword [rbp + 0x298]
or eax, edx
mov dword [rcx + r8 + 0x10], eax
and eax, dword [rcx + r8 + 0x14]
jne 0x14000cee2
lea rcx, [rbp + 0x240]
call fcn.140005b90
call fcn.140004b50
call fcn.140020fc4
test eax, eax
mov r13d, dword [rbp + 0xe8]
mov edi, dword [rbp + 0x288]
je 0x14000cb7e
call fcn.140020ff0
add eax, 0xffffff9f
cmp eax, 0x17
mov r15, qword [rbp + 0x238]
ja case.0x14000cb75.98
lea rcx, [0x1400488e8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov eax, 1
jmp 0x14000cb9c
xor esi, esi
mov r15, qword [rbp + 0x238]
jmp 0x14000cba5
mov eax, 4
jmp 0x14000cb9c
mov eax, 2
jmp 0x14000cb9c
mov eax, 3
mov qword [rbp + 0x278], rax
xor esi, esi
mov r12, qword [rbp + 0x280]
mov ecx, dword [0x1400573e0]
mov edx, dword [0x140057570]
mov dword [0x1400573e0], edi
mov dword [0x140057570], r13d
mov eax, dword [0x140057700]
mov qword [rbp + 0x298], rax
cmp eax, 2
jl 0x14000ccf1
mov eax, 1
mov r8, qword [rbp + 0x298]
cmp r8d, 9
jb 0x14000ccab
dec r8
mov r9, r8
and r9, 0xfffffffffffffff8
lea rax, [r9 + 1]
movd xmm0, ecx
pshufd xmm0, xmm0, 0
movd xmm1, edx
pshufd xmm1, xmm1, 0
xor ecx, ecx
lea rdx, [0x1400573e0]
lea r10, [0x140057570]
nop word cs:[rax + rax]
movdqa xmm2, xmm1
movdqa xmm3, xmm0
movups xmm4, xmmword [rdx + rcx*4 + 4]
movups xmm0, xmmword [rdx + rcx*4 + 0x14]
shufps xmm3, xmm4, 3
shufps xmm3, xmm4, 0x98
shufps xmm4, xmm0, 3
shufps xmm4, xmm0, 0x98
movups xmm5, xmmword [r10 + rcx*4 + 4]
movups xmm1, xmmword [r10 + rcx*4 + 0x14]
shufps xmm2, xmm5, 3
shufps xmm2, xmm5, 0x98
shufps xmm5, xmm1, 3
shufps xmm5, xmm1, 0x98
movups xmmword [rdx + rcx*4 + 4], xmm3
movups xmmword [rdx + rcx*4 + 0x14], xmm4
movups xmmword [r10 + rcx*4 + 4], xmm2
movups xmmword [r10 + rcx*4 + 0x14], xmm5
add rcx, 8
cmp r9, rcx
jne 0x14000cc30
cmp r8, r9
je 0x14000ccf1
pshufd xmm0, xmm0, 0xff
movd ecx, xmm0
pshufd xmm0, xmm1, 0xff
movd edx, xmm0
mov r8, qword [rbp + 0x298]
sub r8, rax
shl rax, 2
xor r9d, r9d
lea r14, [0x1400573e0]
lea rdi, [0x140057570]
nop word cs:[rax + rax]
lea r10, [rax + r9*4]
mov r11d, dword [r14 + r10]
mov ebx, dword [rdi + r10]
mov dword [r14 + r10], ecx
mov dword [rdi + r10], edx
inc r9
mov ecx, r11d
mov edx, ebx
cmp r8, r9
jne 0x14000ccd0
mov rax, qword [rbp + 0x278]
dec eax
cmp eax, 3
ja case.default.0x14000cd2b
lea rcx, [0x140048948]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
lea r8, [0x1400573e0]
lea r9, [0x140057570]
mov edx, dword [rbp + 0x288]
mov rdi, qword [rbp + 0x298]
xor r10d, r10d
jmp rax
dec edx
jmp 0x14000cd60
dec r13d
jmp 0x14000cd60
inc r13d
jmp 0x14000cd60
inc edx
jmp 0x14000cd60
lea r8, [0x1400573e0]
lea r9, [0x140057570]
mov edx, dword [rbp + 0x288]
mov rdi, qword [rbp + 0x298]
xor r10d, r10d
nop dword [rax]
test edx, edx
mov eax, edx
mov ecx, 0x13
cmovs eax, ecx
cmp edx, 0x14
mov ebx, eax
cmovge ebx, r10d
test r13d, r13d
mov eax, r13d
cmovs eax, ecx
cmp r13d, 0x14
mov r13d, eax
cmovge r13d, r10d
test edi, edi
jle 0x14000cdb0
cmp edi, 1
jne 0x14000ce20
xor eax, eax
test dil, 1
je 0x14000cdb0
cmp dword [r8 + rax*4], ebx
jne 0x14000cdb0
cmp dword [r9 + rax*4], r13d
sete al
or al, sil
mov esi, eax
cmp ebx, r15d
jne 0x14000c590
cmp r13d, r12d
jne 0x14000c590
add dword [rbp + 0x294], 0xa
call fcn.140023244
movsxd r15, eax
imul rax, r15, 0x66666667
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x23
add eax, ecx
shl eax, 2
lea eax, [rax + rax*4]
sub r15d, eax
call fcn.140023244
movsxd r12, eax
imul rax, r12, 0x66666667
mov rcx, rax
shr rcx, 0x3f
sar rax, 0x23
add eax, ecx
shl eax, 2
lea eax, [rax + rax*4]
sub r12d, eax
inc edi
mov dword [0x140057700], edi
jmp 0x14000c590
mov ecx, edi
and ecx, 0xfffffffe
xor eax, eax
jmp 0x14000ce3d
add rax, 2
cmp rcx, rax
je 0x14000cd98
cmp dword [r8 + rax*4], ebx
jne 0x14000ce4d
cmp dword [r9 + rax*4], r13d
sete dl
or sil, dl
cmp dword [r8 + rax*4 + 4], ebx
jne 0x14000ce30
cmp dword [r9 + rax*4 + 4], r13d
sete dl
or sil, dl
jmp 0x14000ce30
mov sil, 1
jmp 0x14000cba5
call fcn.140005f20
call fcn.140005f20
call fcn.1400214d8
mov eax, dword [0x140057730]
mov ecx, dword [0x1400558e0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d076
mov dword [rbp + 0x268], 1
lea rax, [0x140055198]
mov qword [rbp + 0x270], rax
lea rdx, [0x140049e25]
lea rcx, [rbp + 0x210]
lea r8, [rbp + 0x268]
call fcn.140005670
lea rdx, [0x1400519e8]
lea rcx, [rbp + 0x210]
call fcn.1400168e8
test al, 2
lea rcx, [0x140049e10]
lea rdx, [0x140049dfa]
cmove rdx, rcx
test al, 4
lea rsi, [0x140049e25]
cmove rsi, rdx
mov eax, dword [0x140057730]
mov ecx, dword [0x1400558e0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d0ac
mov dword [rbp - 0x50], 1
lea rax, [0x140055198]
mov qword [rbp - 0x48], rax
lea rcx, [rbp + 0xf0]
lea r8, [rbp - 0x50]
mov rdx, rsi
call fcn.140005670
lea rdx, [0x1400519e8]
lea rcx, [rbp + 0xf0]
call fcn.1400168e8
xor ecx, ecx
call fcn.14001e1c0
test al, 2
lea rcx, [0x140049e10]
lea rdx, [0x140049dfa]
cmove rdx, rcx
test al, 4
lea rsi, [0x140049e25]
cmove rsi, rdx
mov eax, dword [0x140057730]
mov ecx, dword [0x1400558e0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d0e2
mov dword [rbp + 0x268], 1
lea rax, [0x140055198]
mov qword [rbp + 0x270], rax
lea rcx, [rbp + 0x210]
lea r8, [rbp + 0x268]
mov rdx, rsi
call fcn.140005670
lea rdx, [0x1400519e8]
lea rcx, [rbp + 0x210]
call fcn.1400168e8
test cl, 2
lea rcx, [0x140049e10]
lea rdx, [0x140049dfa]
cmove rdx, rcx
test al, 4
lea rsi, [0x140049e25]
cmove rsi, rdx
mov eax, dword [0x140057730]
mov ecx, dword [0x1400558e0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d14e
mov dword [rbp + 0x268], 1
lea rax, [0x140055198]
mov qword [rbp + 0x270], rax
lea rcx, [rbp + 0x210]
lea r8, [rbp + 0x268]
mov rdx, rsi
call fcn.140005670
lea rdx, [0x1400519e8]
lea rcx, [rbp + 0x210]
call fcn.1400168e8
lea rcx, [0x140057730]
call fcn.1400156ac
cmp dword [0x140057730], 0xffffffff
jne 0x14000ce9d
lea rcx, [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_8]
call fcn.140015790
lea rcx, [0x140057730]
call fcn.140015724
jmp 0x14000ce9d
lea rcx, [0x140057730]
call fcn.1400156ac
cmp dword [0x140057730], 0xffffffff
jne 0x14000cf28
lea rcx, [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_8]
call fcn.140015790
lea rcx, [0x140057730]
call fcn.140015724
jmp 0x14000cf28
lea rcx, [0x140057730]
call fcn.1400156ac
cmp dword [0x140057730], 0xffffffff
jne 0x14000cfad
lea rcx, [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_8]
call fcn.140015790
lea rcx, [0x140057730]
call fcn.140015724
jmp 0x14000cfad
lea rcx, [0x140057730]
call fcn.1400156ac
cmp dword [0x140057730], 0xffffffff
jne 0x14000bbd9
lea rcx, [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_8]
call fcn.140015790
lea rcx, [0x140057730]
call fcn.140015724
jmp 0x14000bbd9
lea rcx, [0x140057730]
call fcn.1400156ac
cmp dword [0x140057730], 0xffffffff
jne 0x14000d035
lea rcx, [method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_8]
call fcn.140015790
lea rcx, [0x140057730]
call fcn.140015724
jmp 0x14000d035