Function at 0x18000a110
Capabilities:
Reference sql statements

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3c0]
sub rsp, 0x4c0
mov qword [rbp + 0x130], 0xfffffffffffffffe
mov qword [rsp + 0x518], rbx
mov rax, qword [0x1800ff5a8]
xor rax, rsp
mov qword [rbp + 0x3b0], rax
movzx edi, r9b
mov r15, r8
mov qword [rbp + 0x18], r8
mov r14d, edx
mov dword [rsp + 0x68], edx
mov r13, rcx
xor esi, esi
mov dword [rbp - 0x50], esi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rsi
lea rax, [0x1800e55b0]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x38], rax
lea rax, [0x1800e5208]
mov qword [rbp + 0xc8], rax
lea rax, [0x1800e52d8]
mov qword [rbp + 0xc8], rax
mov dword [rbp - 0x50], 1
mov rax, qword [rbp + 0x40]
movsxd rcx, dword [rax + 4]
lea rax, [0x1800e53f0]
mov qword [rbp + rcx + 0x40], rax
mov rax, qword [rbp + 0x40]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x3c], edx
mov rax, qword [rbp + 0x40]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x40]
add rcx, rax
xor r8d, r8d
lea rdx, [rbp + 0x48]
call fcn.180008ab0
nop
mov rax, qword [rbp + 0x40]
movsxd rcx, dword [rax + 4]
lea rax, [0x1800e54f0]
mov qword [rbp + rcx + 0x40], rax
mov rax, qword [rbp + 0x40]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x3c], edx
lea edx, [rsi + 2]
lea rcx, [rbp + 0x48]
call fcn.18000edd0
nop
mov byte [rsp + 0x30], sil
cmp qword [r13 + 0x88], rsi
jne 0x18000a243
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 0x10]
test al, al
je 0x18000a32f
mov edx, r14d
mov rcx, r13
call fcn.18000bd70
movzx ebx, al
movabs r12, 0x2aaaaaaaaaaaaaab
test al, al
je 0x18000a35b
lea r9, [r13 + 0xd0]
mov r8, qword [r13 + 0xc0]
mov edx, r14d
call fcn.18000c000
mov rsi, rax
lea rdx, str.SELECT__id____user____supported_events____userdomain____logintype____machinename____hashvalue__FROM__users_
lea rcx, [rbp + 0x40]
call fcn.180008e70
mov rcx, rax
lea rdx, str._WHERE__hashvalue_
call fcn.180008e70
mov rcx, rax
mov edx, r14d
call fcn.18000d7d0
mov rcx, rax
lea rdx, [0x1800e5788]
call fcn.180008e70
test dil, dil
je 0x18000a2fd
cmp byte [r13 + 0xb8], 0
jne 0x18000a2fd
lea rdx, str._AND
lea rcx, [rbp + 0x40]
call fcn.180008e70
mov rcx, rax
lea rdx, str.__last_change____
call fcn.180008e70
mov rcx, rax
mov rdx, rsi
call fcn.18000d630
mov rcx, rax
lea rdx, [0x1800e5788]
call fcn.180008e70
lea rax, [rbp + 0x180]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0x40]
call fcn.18000ce40
nop
lea rcx, [r13 + 8]
lea r8, [rsp + 0x48]
mov rdx, rax
call fcn.18001e940
test al, al
jne 0x18000a336
xor bl, bl
jmp 0x18000b4f9
mov rcx, qword [rsp + 0x50]
sub rcx, qword [rsp + 0x48]
mov rax, r12
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
setne byte [rsp + 0x30]
xor esi, esi
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], rsi
call fcn.180011080
mov qword [rbp - 0x48], rax
movzx eax, byte [r13 + 0xb8]
or r12d, 0xffffffff
test al, al
jne 0x18000a49a
test bl, bl
jne 0x18000a492
mov qword [rbp + 0x350], rsi
mov qword [rbp + 0x358], rsi
mov qword [rbp + 0x358], 0xf
mov qword [rbp + 0x350], rsi
mov byte [rbp + 0x340], bl
lea rcx, [rbp + 0x48]
call fcn.18000ea70
mov r9d, dword [rbp + 0xb8]
xor r8d, r8d
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0x48]
call fcn.1800103c0
nop
lea rcx, [rbp + 0x340]
call fcn.1800026e0
lea rdx, str.SELECT__id____user____supported_events____userdomain____logintype____t_t_t_t_t_machinename____hashvalue__FROM__users_
lea rcx, [rbp + 0x40]
call fcn.180008e70
lea rdx, str._WHERE___user_DEFAULT_OR__user_default_
lea rcx, [rbp + 0x40]
call fcn.180008e70
test dil, dil
je 0x18000a455
lea r9, [r13 + 0xe0]
mov r8, qword [r13 + 0xc8]
mov edx, r14d
call fcn.18000c000
mov rbx, rax
lea rdx, str._AND
lea rcx, [rbp + 0x40]
call fcn.180008e70
mov rcx, rax
lea rdx, str.__last_change____
call fcn.180008e70
mov rcx, rax
mov rdx, rbx
call fcn.18000d630
mov rcx, rax
lea rdx, [0x1800e5788]
call fcn.180008e70
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x40]
call fcn.18000ce40
nop
lea rcx, [r13 + 8]
lea r8, [rsp + 0x48]
mov rdx, rax
call fcn.18001e940
test al, al
jne 0x18000a993
xor bl, bl
jmp 0x18000b4d7
test al, al
je 0x18000a993
xor edi, edi
mov qword [rbp + 0x2b0], rdi
mov qword [rbp + 0x2b8], rdi
mov qword [rbp + 0x2b8], 0xf
mov qword [rbp + 0x2b0], rdi
mov byte [rbp + 0x2a0], dil
lea rcx, [rbp + 0x48]
call fcn.18000ea70
mov r9d, dword [rbp + 0xb8]
xor r8d, r8d
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x48]
call fcn.1800103c0
nop
mov rax, qword [rbp + 0x2b8]
cmp rax, 0x10
jb 0x18000a543
inc rax
mov rcx, qword [rbp + 0x2a0]
cmp rax, 0x1000
jb 0x18000a53e
test cl, 0x1f
je 0x18000a511
call fcn.18009e5a0
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x18000a520
call fcn.18009e5a0
int3
sub rcx, rax
cmp rcx, 8
jae 0x18000a52f
call fcn.18009e5a0
int3
cmp rcx, 0x27
jbe 0x18000a53b
call fcn.18009e5a0
int3
mov rcx, rax
call fcn.18009a2cc
mov qword [rbp + 0x2b8], 0xf
mov qword [rbp + 0x2b0], rdi
mov byte [rbp + 0x2a0], 0
lea rdx, str.SELECT__id____user____supported_events____userdomain____logintype____t_t_t_t_t_machinename____hashvalue__FROM__users_
lea rcx, [rbp + 0x40]
call fcn.180008e70
lea rdx, str._WHERE___user_DEFAULT_OR__user_default_
lea rcx, [rbp + 0x40]
call fcn.180008e70
mov rcx, qword [rsp + 0x50]
sub rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18000a95a
xorps xmm0, xmm0
movdqu xmmword [rbp], xmm0
mov qword [rbp + 0x10], rdi
lea rax, [rbp + 0x1c0]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp + 0x40]
call fcn.18000ce40
nop
lea r8, [rbp]
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001e940
test al, al
je 0x18000a94f
mov rax, qword [rbp + 8]
sub rax, qword [rbp]
sub rax, 0x18
cmp rax, 0x18
jae 0x18000a94f
mov ecx, 0x50
call fcn.180099eb4
mov qword [rsp + 0x38], rax
lea rcx, method.std::_Facet_base.virtual_8
mov qword [rax], rcx
lea rcx, [0x1800e4d80]
mov qword [rax], rcx
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], rdi
mov qword [rax + 0x28], rdi
mov qword [rax + 0x30], rdi
mov qword [rax + 0x38], rdi
mov qword [rax + 0x40], rdi
mov qword [rax + 0x48], rdi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x60], xmm0
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.1800036c0
nop
mov rdi, qword [rbp - 0x60]
test rdi, rdi
je 0x18000a912
xor eax, eax
mov qword [rbp + 0x2f0], rax
mov qword [rbp + 0x2f8], rax
mov qword [rbp + 0x2f8], 0xf
mov qword [rbp + 0x2f0], rax
mov byte [rbp + 0x2e0], al
lea r8, [rbp + 0x2e0]
xor edx, edx
mov rcx, qword [rbp]
call fcn.18001ee00
mov rbx, qword [rdi]
lea rcx, [rbp + 0x2e0]
call fcn.180009b30
mov edx, eax
mov rcx, rdi
call qword [rbx + 0x10]
xor eax, eax
mov qword [rbp + 0x330], rax
mov qword [rbp + 0x338], rax
mov qword [rbp + 0x338], 0xf
mov qword [rbp + 0x330], rax
mov byte [rbp + 0x320], al
lea rcx, [rbp + 0x48]
call fcn.18000ea70
mov r9d, dword [rbp + 0xb8]
xor r8d, r8d
lea rdx, [rbp + 0x320]
lea rcx, [rbp + 0x48]
call fcn.1800103c0
nop
lea rcx, [rbp + 0x320]
call fcn.1800026e0
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 8]
mov ebx, eax
lea rdx, str.SELECT__keyword____mode__FROM__keywords__WHERE__userid_
lea rcx, [rbp + 0x40]
call fcn.180008e70
mov rcx, rax
mov edx, ebx
call fcn.18000d7d0
mov rcx, rax
lea rdx, [0x1800e5788]
call fcn.180008e70
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
xor edi, edi
mov qword [rbp - 0x10], rdi
lea rax, [rbp + 0x1e0]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x40]
call fcn.18000ce40
nop
lea r8, [rbp - 0x20]
mov rdx, rax
lea rcx, [r13 + 8]
call fcn.18001e940
test al, al
jne 0x18000a79e
lea rcx, [rbp - 0x20]
call fcn.18000e970
nop
lea rcx, [rbp + 0x2e0]
call fcn.1800026e0
jmp 0x18000a912
mov qword [rbp + 0x310], rdi
mov qword [rbp + 0x318], rdi
mov qword [rbp + 0x318], 0xf
mov qword [rbp + 0x310], rdi
mov byte [rbp + 0x300], 0
mov rsi, rdi
mov rcx, qword [rbp - 0x18]
mov r8, qword [rbp - 0x20]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18000a8a6
movzx ebx, byte [rsp + 0x30]
movabs r14, 0x2aaaaaaaaaaaaaab
lea rcx, [rdi + r8]
lea r8, [rbp + 0x300]
xor edx, edx
call fcn.18001ee00
mov dword [rsp + 0x60], 0
mov rcx, qword [rbp - 0x20]
add rcx, rdi
lea r8, [rsp + 0x60]
mov edx, 1
call fcn.18001ee10
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x360]
call fcn.1800111e0
nop
mov byte [rsp + 0x20], bl
mov r9, rax
lea rdx, [rbp + 0x160]
lea rcx, [rbp - 0x48]
call fcn.180011a20
nop
lea rcx, [rbp + 0x360]
call fcn.1800026e0
inc rsi
add rdi, 0x18
mov rcx, qword [rbp - 0x18]
mov r8, qword [rbp - 0x20]
sub rcx, r8
mov rax, r14
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rsi, rdx
jb 0x18000a803
mov r14d, dword [rsp + 0x68]
xor edi, edi
lea rcx, [rbp + 0x300]
call fcn.1800026e0
nop
lea rcx, [rbp - 0x20]
call fcn.18000e970
nop
lea rcx, [rbp + 0x2e0]
call fcn.1800026e0
nop
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x18000a904
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18000a904
mov rbx, qword [rbp - 0x58]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18000a904
mov rcx, qword [rbp - 0x58]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rbp]
call fcn.18000e970
jmp 0x18000a995
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x18000a94f
or r12d, 0xffffffff
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18000a94f
mov rbx, qword [rbp - 0x58]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r12d
cmp r12d, 1
jne 0x18000a94f
mov rcx, qword [rbp - 0x58]
mov rax, qword [rcx]
call qword [rax + 8]
nop
lea rcx, [rbp]
call fcn.18000e970
jmp 0x18000a98c
lea rax, [rbp + 0x200]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x200]
lea rcx, [rbp + 0x40]
call fcn.18000ce40
nop
lea rcx, [r13 + 8]
lea r8, [rsp + 0x48]
mov rdx, rax
call fcn.18001e940
test al, al
jne 0x18000a995
xor bl, bl
jmp 0x18000b4d7
xor edi, edi
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], rdi
mov rbx, rdi
mov qword [rbp - 8], rbx
mov rcx, qword [rsp + 0x50]
sub rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18000b44c
movzx r14d, byte [rsp + 0x30]
nop dword [rax]
mov ecx, 0x50
call fcn.180099eb4
mov qword [rbp + 0x138], rax
lea rcx, method.std::_Facet_base.virtual_8
mov qword [rax], rcx
lea rcx, [0x1800e4d80]
mov qword [rax], rcx
mov qword [rax + 8], 0
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], rdi
mov qword [rax + 0x28], rdi
mov qword [rax + 0x30], rdi
mov qword [rax + 0x38], rdi
mov qword [rax + 0x40], rdi
mov qword [rax + 0x48], rdi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x80], xmm0
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.1800036c0
nop
mov r15, qword [rbp - 0x80]
test r15, r15
je 0x18000b40d
mov qword [rbp + 0x270], rdi
mov qword [rbp + 0x278], rdi
mov qword [rbp + 0x278], 0xf
mov qword [rbp + 0x270], rdi
mov byte [rbp + 0x260], 0
lea rax, [rbx + rbx*2]
lea rdi, [rax*8]
mov rcx, qword [rsp + 0x48]
add rcx, rdi
lea r8, [rbp + 0x260]
xor edx, edx
call fcn.18001ee00
lea rbx, [rbp + 0x260]
cmp qword [rbp + 0x278], 0x10
cmovae rbx, qword [rbp + 0x260]
call fcn.18009f0fc
mov dword [rax], 0
xor r8d, r8d
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.1800a0624
mov esi, eax
cmp rbx, qword [rsp + 0x38]
je 0x18000b400
call fcn.18009f0fc
cmp dword [rax], 0x22
je 0x18000b3f3
mov r8, qword [r15]
mov edx, esi
mov rcx, r15
call qword [r8 + 0x10]
xor esi, esi
mov qword [rbp + 0x250], rsi
mov qword [rbp + 0x258], rsi
mov qword [rbp + 0x258], 0xf
mov qword [rbp + 0x250], rsi
mov byte [rbp + 0x240], sil
lea ecx, [rsi + 0x78]
call fcn.180099eb4
mov qword [rbp + 0x140], rax
lea rcx, method.std::_Facet_base.virtual_8
mov qword [rax], rcx
lea rcx, [0x1800e4d28]
mov qword [rax], rcx
mov dword [rax + 8], esi
mov qword [rax + 0x28], 0xf
mov qword [rax + 0x20], rsi
mov byte [rax + 0x10], sil
mov qword [rax + 0x48], 0xf
mov qword [rax + 0x40], rsi
mov byte [rax + 0x30], sil
mov qword [rax + 0x68], 0xf
mov qword [rax + 0x60], rsi
mov byte [rax + 0x50], sil
mov dword [rax + 0x70], esi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov rdx, rax
lea rcx, [rbp - 0x70]
call fcn.1800036c0
nop
mov rcx, qword [rsp + 0x48]
add rcx, rdi
lea r8, [rbp + 0x240]
lea edx, [rsi + 1]
call fcn.18001ee00
lea rdx, [rbp + 0x240]
cmp qword [rbp + 0x258], 0x10
cmovae rdx, qword [rbp + 0x240]
mov rcx, qword [rbp - 0x70]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, qword [rsp + 0x48]
add rcx, rdi
lea r8, [rsp + 0x40]
lea edx, [rsi + 2]
call fcn.18001ee10
mov rax, qword [r15]
mov edx, dword [rsp + 0x40]
mov rcx, r15
call qword [rax + 0x20]
mov rcx, qword [rsp + 0x48]
add rcx, rdi
lea r8, [rbp + 0x240]
lea edx, [rsi + 3]
call fcn.18001ee00
lea rdx, [rbp + 0x240]
cmp qword [rbp + 0x258], 0x10
cmovae rdx, qword [rbp + 0x240]
mov rcx, qword [rbp - 0x70]
mov rax, qword [rcx]
call qword [rax + 0x30]
mov rcx, qword [rsp + 0x48]
add rcx, rdi
lea r8, [rsp + 0x40]
lea edx, [rsi + 4]
call fcn.18001ee10
mov rcx, qword [rbp - 0x70]
mov rax, qword [rcx]
mov edx, dword [rsp + 0x40]
call qword [rax + 0x50]
mov rcx, qword [rsp + 0x48]
add rcx, rdi
lea r8, [rbp + 0x240]
lea edx, [rsi + 5]
call fcn.18001ee00
lea rdx, [rbp + 0x240]
cmp qword [rbp + 0x258], 0x10
cmovae rdx, qword [rbp + 0x240]
mov rcx, qword [rbp - 0x70]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x48]
add rcx, rdi
lea r8, [rbp - 0x4c]
lea edx, [rsi + 6]
call fcn.18001ee20
mov rcx, qword [rbp - 0x70]
mov rax, qword [rcx]
mov edx, dword [rbp - 0x4c]
call qword [rax + 0x40]
mov rax, qword [r15]
lea rdx, [rbp - 0x70]
mov rcx, r15
call qword [rax + 0x50]
mov qword [rbp + 0x2d0], rsi
mov qword [rbp + 0x2d8], rsi
mov qword [rbp + 0x2d8], 0xf
mov qword [rbp + 0x2d0], rsi
mov byte [rbp + 0x2c0], sil
lea rcx, [rbp + 0x48]
call fcn.18000ea70
mov r9d, dword [rbp + 0xb8]
xor r8d, r8d
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp + 0x48]
call fcn.1800103c0
nop
mov rax, qword [rbp + 0x2d8]
cmp rax, 0x10
jb 0x18000ad42
inc rax
mov rcx, qword [rbp + 0x2c0]
cmp rax, 0x1000
jb 0x18000ad3d
test cl, 0x1f
jne 0x18000b26c
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18000b266
sub rcx, rax
cmp rcx, 8
jb 0x18000b260
cmp rcx, 0x27
ja 0x18000b25a
mov rcx, rax
call fcn.18009a2cc
mov qword [rbp + 0x2d8], 0xf
mov qword [rbp + 0x2d0], rsi
mov byte [rbp + 0x2c0], 0
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 8]
mov ebx, eax
lea rdx, str.SELECT__keyword____mode__FROM__keywords__WHERE__userid_
lea rcx, [rbp + 0x40]
call fcn.180008e70
mov rcx, rax
mov edx, ebx
call fcn.18000d7d0
mov rcx, rax
lea rdx, [0x1800e5788]
call fcn.180008e70
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], rsi
lea rax, [rbp + 0x220]
mov qword [rbp + 0x158], rax
lea rdx, [rbp + 0x220]
lea rcx, [rbp + 0x40]
call fcn.18000ce40
nop
lea rcx, [r13 + 8]
lea r8, [rbp - 0x38]
mov rdx, rax
call fcn.18001e940
test al, al
je 0x18000b2c8
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rsi
call fcn.180011080
mov qword [rsp + 0x70], rax
mov qword [rbp + 0x290], rsi
mov qword [rbp + 0x298], rsi
mov qword [rbp + 0x298], 0xf
mov qword [rbp + 0x290], rsi
mov byte [rbp + 0x280], 0
mov rdi, rsi
mov rcx, qword [rbp - 0x30]
mov r8, qword [rbp - 0x38]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18000aeee
mov rbx, rsi
movabs r15, 0x2aaaaaaaaaaaaaab
nop dword [rax]
lea rcx, [rbx + r8]
lea r8, [rbp + 0x280]
xor edx, edx
call fcn.18001ee00
mov dword [rsp + 0x64], esi
mov rcx, qword [rbp - 0x38]
add rcx, rbx
lea r8, [rsp + 0x64]
mov edx, 1
call fcn.18001ee10
lea r8, [rsp + 0x64]
lea rdx, [rbp + 0x280]
lea rcx, [rbp + 0x388]
call fcn.1800111e0
nop
mov byte [rsp + 0x20], r14b
mov r9, rax
lea rdx, [rbp + 0x170]
lea rcx, [rsp + 0x70]
call fcn.180011a20
nop
lea rcx, [rbp + 0x388]
call fcn.1800026e0
inc rdi
add rbx, 0x18
mov rcx, qword [rbp - 0x30]
mov r8, qword [rbp - 0x38]
sub rcx, r8
mov rax, r15
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdi, rdx
jb 0x18000ae50
mov r15, qword [rbp - 0x80]
mov rsi, qword [rbp - 0x48]
mov rdi, qword [rsi]
cmp rdi, rsi
je 0x18000af87
nop
lea rdx, [rdi + 0x20]
mov rbx, qword [rsp + 0x70]
lea rcx, [rsp + 0x70]
call fcn.180011ff0
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
mov r8, rbx
lea rdx, [rbp + 0x150]
lea rcx, [rsp + 0x70]
call fcn.180012090
cmp byte [rdi + 0x19], 0
jne 0x18000af7e
mov rax, qword [rdi + 0x10]
cmp byte [rax + 0x19], 0
jne 0x18000af5e
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x18000af7e
nop dword [rax]
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18000af50
jmp 0x18000af7e
mov rax, qword [rdi + 8]
cmp byte [rax + 0x19], 0
jne 0x18000af7b
cmp rdi, qword [rax + 0x10]
jne 0x18000af7b
mov rdi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x18000af68
mov rdi, rax
cmp rdi, rsi
jne 0x18000af00
mov rax, qword [rsp + 0x70]
mov rbx, qword [rax]
cmp rbx, rax
je 0x18000b029
mov ecx, dword [rbx + 0x40]
test ecx, ecx
je 0x18000afbd
cmp ecx, 1
jne 0x18000afd4
lea rdx, [rbx + 0x20]
cmp qword [rdx + 0x18], 0x10
jb 0x18000afb2
mov rdx, qword [rdx]
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x38]
jmp 0x18000afd4
lea rdx, [rbx + 0x20]
cmp qword [rdx + 0x18], 0x10
jb 0x18000afcb
mov rdx, qword [rdx]
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x28]
cmp byte [rbx + 0x19], 0
jne 0x18000b01e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x18000affe
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x18000b01e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18000aff0
jmp 0x18000b01e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x18000b01b
cmp rbx, qword [rax + 0x10]
jne 0x18000b01b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x18000b008
mov rbx, rax
cmp rbx, qword [rsp + 0x70]
jne 0x18000af98
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x20]
call fcn.18000cc10
nop
mov rax, qword [rbp + 0x298]
cmp rax, 0x10
jb 0x18000b08b
inc rax
mov rcx, qword [rbp + 0x280]
cmp rax, 0x1000
jb 0x18000b086
test cl, 0x1f
jne 0x18000b284
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18000b27e
sub rcx, rax
cmp rcx, 8
jb 0x18000b278
cmp rcx, 0x27
ja 0x18000b272
mov rcx, rax
call fcn.18009a2cc
mov qword [rbp + 0x298], 0xf
xor edi, edi
mov qword [rbp + 0x290], rdi
mov byte [rbp + 0x280], dil
mov r8, qword [rsp + 0x70]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp + 0x148]
lea rcx, [rsp + 0x70]
call fcn.18000f090
nop
mov rcx, qword [rsp + 0x70]
call fcn.18009a2cc
nop
lea rcx, [rbp - 0x38]
call fcn.18000e970
nop
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x18000b10d
mov eax, r12d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x18000b10d
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18000b10d
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov rax, qword [rbp + 0x258]
cmp rax, 0x10
jb 0x18000b161
inc rax
mov rcx, qword [rbp + 0x240]
cmp rax, 0x1000
jb 0x18000b15c
test cl, 0x1f
jne 0x18000b29c
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18000b296
sub rcx, rax
cmp rcx, 8
jb 0x18000b290
cmp rcx, 0x27
ja 0x18000b28a
mov rcx, rax
call fcn.18009a2cc
mov qword [rbp + 0x258], 0xf
mov qword [rbp + 0x250], rdi
mov byte [rbp + 0x240], 0
mov rax, qword [rbp + 0x278]
cmp rax, 0x10
jb 0x18000b1ce
inc rax
mov rcx, qword [rbp + 0x260]
cmp rax, 0x1000
jb 0x18000b1c9
test cl, 0x1f
jne 0x18000b2b4
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18000b2ae
sub rcx, rax
cmp rcx, 8
jb 0x18000b2a8
cmp rcx, 0x27
ja 0x18000b2a2
mov rcx, rax
call fcn.18009a2cc
mov qword [rbp + 0x278], 0xf
mov qword [rbp + 0x270], rdi
mov byte [rbp + 0x260], 0
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x18000b220
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18000b220
mov rbx, qword [rbp - 0x78]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18000b220
mov rcx, qword [rbp - 0x78]
mov rax, qword [rcx]
call qword [rax + 8]
mov rbx, qword [rbp - 8]
inc rbx
mov qword [rbp - 8], rbx
mov rcx, qword [rsp + 0x50]
sub rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rbx, rdx
jae 0x18000b2ba
jmp 0x18000a9e0
call fcn.18009e5a0
int3
call fcn.18009e5a0
int3
call fcn.18009e5a0
int3
call fcn.18009e5a0
nop
call fcn.18009e5a0
int3
call fcn.18009e5a0
int3
call fcn.18009e5a0
int3
call fcn.18009e5a0
nop
call fcn.18009e5a0
int3
call fcn.18009e5a0
int3
call fcn.18009e5a0
int3
call fcn.18009e5a0
nop
call fcn.18009e5a0
int3
call fcn.18009e5a0
int3
call fcn.18009e5a0
int3
call fcn.18009e5a0
nop
mov r14d, dword [rsp + 0x68]
mov r15, qword [rbp + 0x18]
jmp 0x18000b44c
lea rcx, [rbp - 0x38]
call fcn.18000e970
nop
mov rbx, qword [rbp - 0x68]
test rbx, rbx
je 0x18000b307
mov eax, r12d
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x18000b307
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, r12d
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18000b307
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov rax, qword [rbp + 0x258]
cmp rax, 0x10
jb 0x18000b363
inc rax
mov rcx, qword [rbp + 0x240]
cmp rax, 0x1000
jb 0x18000b35e
test cl, 0x1f
je 0x18000b331
call fcn.18009e5a0
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x18000b340
call fcn.18009e5a0
int3
sub rcx, rax
cmp rcx, 8
jae 0x18000b34f
call fcn.18009e5a0
int3
cmp rcx, 0x27
jbe 0x18000b35b
call fcn.18009e5a0
int3
mov rcx, rax
call fcn.18009a2cc
mov qword [rbp + 0x258], 0xf
mov qword [rbp + 0x250], rsi
mov byte [rbp + 0x240], 0
mov rax, qword [rbp + 0x278]
cmp rax, 0x10
jb 0x18000b3d8
inc rax
mov rcx, qword [rbp + 0x260]
cmp rax, 0x1000
jb 0x18000b3d3
test cl, 0x1f
je 0x18000b3a6
call fcn.18009e5a0
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x18000b3b5
call fcn.18009e5a0
int3
sub rcx, rax
cmp rcx, 8
jae 0x18000b3c4
call fcn.18009e5a0
int3
cmp rcx, 0x27
jbe 0x18000b3d0
call fcn.18009e5a0
int3
mov rcx, rax
call fcn.18009a2cc
mov qword [rbp + 0x278], 0xf
mov qword [rbp + 0x270], rsi
mov byte [rbp + 0x260], 0
jmp 0x18000b40d
lea rcx, str.stoul_argument_out_of_range
call fcn.180098288
int3
lea rcx, str.invalid_stoul_argument
call fcn.180098240
nop
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x18000b445
mov eax, r12d
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x18000b445
mov rbx, qword [rbp - 0x78]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], r12d
cmp r12d, 1
jne 0x18000b445
mov rcx, qword [rbp - 0x78]
mov rax, qword [rcx]
call qword [rax + 8]
xor bl, bl
jmp 0x18000b4cd
mov r9, qword [rbp + 0x28]
mov r8, qword [rbp + 0x20]
mov rdx, qword [r15 + 8]
mov rcx, r15
call fcn.180009580
mov rax, qword [r15 + 8]
sub rax, qword [r15]
sar rax, 4
test rax, rax
je 0x18000b4cb
xor ecx, ecx
cmp byte [rsp + 0x30], cl
je 0x18000b4a8
mov rbx, qword [r13 + 0xc0]
call fcn.1800a1cb4
lea r9, [r13 + 0xd0]
mov qword [rsp + 0x20], rax
mov r8, rbx
mov edx, r14d
call fcn.18000c100
mov edx, r14d
mov rcx, r13
call fcn.18000bf70
jmp 0x18000b4cb
mov rbx, qword [r13 + 0xc8]
call fcn.1800a1cb4
lea r9, [r13 + 0xe0]
mov qword [rsp + 0x20], rax
mov r8, rbx
mov edx, r14d
call fcn.18000c100
mov bl, 1
lea rcx, [rbp + 0x20]
call fcn.180002930
nop
mov r8, qword [rbp - 0x48]
mov r9, r8
mov r8, qword [r8]
lea rdx, [rbp + 0x38]
lea rcx, [rbp - 0x48]
call fcn.18000f090
nop
mov rcx, qword [rbp - 0x48]
call fcn.18009a2cc
nop
lea rcx, [rbp + 0xc8]
call fcn.18000ce80
lea rax, [rbp + 0xc8]
mov qword [rbp + 0x38], rax
lea rax, [0x1800e52d8]
mov qword [rbp + 0xc8], rax
lea rax, [0x1800e5208]
mov qword [rbp + 0xc8], rax
lea rcx, [rbp + 0xc8]
call fcn.1800988f4
nop
lea rcx, [rsp + 0x48]
call fcn.18000e970
movzx eax, bl
mov rcx, qword [rbp + 0x3b0]
xor rcx, rsp
call fcn.180099e90
mov rbx, qword [rsp + 0x518]
add rsp, 0x4c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret