Function at 0x180018850
Capabilities:
Parse credit card information

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
mov rax, qword [0x180051010]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov rax, qword [r8]
mov r14, rcx
movsxd rdi, dword [rbp + 0xa0]
mov r15, rdx
mov r13d, dword [rbp + 0xb0]
mov r12, r9
mov qword [rbp - 0x60], r8
movzx ecx, byte [rax]
lea rdx, [rax + 1]
mov dword [rbp - 0x78], edi
mov r9, rdx
mov qword [rbp - 0x68], rdx
mov qword [r8], rdx
cmp cl, 0x52
jne case.default.0x180018b82
movsx eax, byte [rdx]
inc rdx
add eax, 0xffffffbf
mov qword [r8], rdx
cmp eax, 0x36
ja case.default.0x180018b82
lea r10, [0x180000000]
cdqe
movzx eax, byte [r10 + rax + 0x1b10c]
mov ecx, dword [r10 + rax*4 + 0x1b0e4]
add rcx, r10
jmp rcx
xor ebx, ebx
mov dword [rbp - 0x78], 0x3f
lea rdx, str.Tfp64
mov dword [rbp - 0x7c], 0x20
mov rcx, r9
mov esi, ebx
lea r8d, [rbx + 5]
call sym.VBoxGINA.dll_nocrt_strncmp
mov r8d, eax
test eax, eax
je 0x18001897c
mov ecx, dword [rbp - 0x78]
cmp ecx, esi
je case.default.0x180018b82
mov edx, dword [rbp - 0x7c]
test r8d, r8d
lea eax, [rdx - 1]
cmovns eax, ecx
mov ecx, eax
mov dword [rbp - 0x78], eax
lea eax, [rdx + 1]
cmovns esi, eax
cmp ecx, esi
jl case.default.0x180018b82
mov eax, ecx
sub eax, esi
cdq
sub eax, edx
sar eax, 1
add eax, esi
movsxd rcx, eax
mov dword [rbp - 0x7c], eax
lea rax, [0x180000000]
lea rdx, [rcx + rcx*2]
mov rcx, qword [rbp - 0x68]
movzx r8d, byte [rax + rdx*8 + 0x2c0d0]
lea rdx, [rdx*8 + 0x2c0d1]
add rdx, rax
call sym.VBoxGINA.dll_nocrt_strncmp
mov r8d, eax
test eax, eax
jne 0x180018912
movsxd rax, dword [rbp - 0x7c]
lea r8, [0x180000000]
mov esi, 0x10
lea rcx, [rax + rax*2]
lea rdx, [rcx*8]
mov rcx, qword [rbp - 0x60]
movzx eax, byte [rdx + r8 + 0x2c0d0]
dec rax
mov qword [rbp - 0x68], rdx
add qword [rcx], rax
lea rcx, [rbp - 0x40]
movzx eax, word [rdx + r8 + 0x2c0e4]
mov r8d, esi
xor edx, edx
or r13d, eax
call sym.VBoxGINA.dll_nocrt_memset
mov rdx, qword [rbp - 0x68]
lea r9, [0x180000000]
movzx ecx, byte [rdx + r9 + 0x2c0db]
test sil, r13b
je 0x180018a76
sub ecx, 1
je 0x180018a58
sub ecx, 1
je 0x180018a3a
sub ecx, 2
je 0x180018a1c
cmp ecx, 4
jne case.0x180018a8f.3
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
bts r13d, 0xe
mov r12, qword [rax - 8]
mov qword [rbp - 0x40], r12
jmp 0x180018b23
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
bts r13d, 0xd
movsxd r12, dword [rax - 8]
mov qword [rbp - 0x40], r12
jmp 0x180018b23
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
bts r13d, 0xc
movsxd r12, dword [rax - 8]
mov qword [rbp - 0x40], r12
jmp 0x180018b23
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
bts r13d, 0xb
movsxd r12, dword [rax - 8]
mov qword [rbp - 0x40], r12
jmp 0x180018b23
dec ecx
cmp ecx, 9
ja case.0x180018a8f.3
movsxd rax, ecx
mov ecx, dword [r9 + rax*4 + 0x1b144]
add rcx, r9
jmp rcx
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
bts r13d, 0xb
movzx eax, byte [rax - 8]
mov byte [rbp - 0x40], al
jmp case.0x180018a8f.3
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
bts r13d, 0xc
movzx eax, word [rax - 8]
mov word [rbp - 0x40], ax
jmp case.0x180018a8f.3
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
bts r13d, 0xd
mov eax, dword [rax - 8]
mov dword [rbp - 0x40], eax
jmp case.0x180018a8f.3
mov rcx, qword [r12]
add rcx, 8
mov qword [r12], rcx
mov rcx, qword [rcx - 8]
mov eax, dword [rcx]
mov dword [rbp - 0x40], eax
movzx eax, word [rcx + 4]
mov word [rbp - 0x3c], ax
jmp case.0x180018a8f.3
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
mov rax, qword [rax - 8]
movsd xmm0, qword [rax]
movsd qword [rbp - 0x40], xmm0
movzx eax, word [rax + 8]
mov word [rbp - 0x38], ax
mov r12, qword [rbp - 0x40]
bt r13d, 0xa
jae 0x180018b65
mov eax, dword [rbp + 0xa8]
lea rcx, [rbp - 0x30]
mov dword [rsp + 0x28], r13d
mov r9d, edi
mov r8, r12
mov dword [rsp + 0x20], eax
mov edx, 0x50
call fcn.180020120
mov r8, rax
lea rdx, [rbp - 0x30]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
jmp 0x180019472
movsxd r8, dword [rdx + r9 + 0x2c0e0]
cmp r8d, 0xc
ja case.default.0x180018b82
mov ecx, dword [r9 + r8*4 + 0x1b16c]
add rcx, r9
jmp rcx
movzx r8d, byte [rdx + r9 + 0x2c0dc]
lea rcx, [rbp - 0x30]
mov eax, dword [rbp + 0xa8]
mov r9d, edi
mov rdx, r12
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], eax
call fcn.18000b0d0
movsxd r8, eax
jmp 0x180018b50
test edi, edi
jns case.0x180018b82.0
movzx eax, byte [rdx + r9 + 0x2c0db]
mov ecx, r13d
shr ecx, 2
and ecx, 2
or r13d, 4
lea edi, [rcx + rax*2]
jmp case.0x180018b82.0
cmp r12, 1
jne 0x180018bfc
mov r8d, r13d
lea rdx, str.true
and r8d, 8
mov rcx, r15
or r8, 0x20
mov rax, r14
shr r8, 3
call qword [case.0x18001f8e5.0]
jmp 0x180019472
test r12, r12
jne 0x180018c1e
lea r8d, [r12 + 5]
mov rcx, r15
lea rdx, str.false
mov rax, r14
call qword [case.0x18001f8e5.0]
jmp 0x180019472
mov qword [rsp + 0x28], r12
lea rax, str.__lld_
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, r15
mov rcx, r14
call fcn.18001ff10
jmp 0x180019472
movzx edx, word [rbp - 0x3e]
lea rcx, [rbp - 0x30]
and r13d, 0xffff146f
mov r9d, 4
bts r13d, 0xc
mov r8d, esi
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], 0xffffffff
call fcn.18000b0d0
movzx edx, word [rbp - 0x40]
lea rcx, [rbp - 0x2b]
mov r9d, 4
mov dword [rsp + 0x28], r13d
mov r8d, esi
mov byte [rbp - 0x2c], 0x3a
mov dword [rsp + 0x20], 0xffffffff
call fcn.18000b0d0
mov r8d, 9
jmp 0x180018b50
movzx edx, word [rbp - 0x3c]
lea rcx, [rbp - 0x30]
and r13d, 0xffff046f
mov r9d, 4
mov eax, r13d
mov r8d, esi
bts eax, 0xc
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0xffffffff
call fcn.18000b0d0
mov edx, dword [rbp - 0x40]
lea rcx, [rbp - 0x2b]
bts r13d, 0xd
mov byte [rbp - 0x2c], 0x3a
mov dword [rsp + 0x28], r13d
mov r9d, 8
mov r8d, esi
mov dword [rsp + 0x20], 0xffffffff
call fcn.18000b0d0
mov r8d, 0xd
jmp 0x180018b50
movzx edx, word [rbp - 0x38]
lea rcx, [rbp - 0x30]
and r13d, 0xffff046f
mov r9d, 4
mov eax, r13d
mov r8d, esi
bts eax, 0xc
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0xffffffff
call fcn.18000b0d0
mov rdx, qword [rbp - 0x40]
lea rcx, [rbp - 0x2b]
bts r13d, 0xe
mov byte [rbp - 0x2c], 0x3a
mov dword [rsp + 0x28], r13d
mov r9d, esi
mov r8d, esi
mov dword [rsp + 0x20], 0xffffffff
call fcn.18000b0d0
mov r8d, 0x15
jmp 0x180018b50
movzx eax, byte [rbp - 0x3d]
movzx ecx, byte [rbp - 0x3e]
movzx edx, byte [rbp - 0x3f]
movzx r8d, byte [rbp - 0x40]
mov dword [rsp + 0x40], eax
xor r9d, r9d
mov dword [rsp + 0x38], ecx
lea rax, str._u._u._u._u
mov dword [rsp + 0x30], edx
mov rcx, r14
mov dword [rsp + 0x28], r8d
mov rdx, r15
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.18001ff10
jmp 0x180019472
cmp r12, 0x1000
jb 0x180018ddf
movabs rax, 0xffff800000000000
test rax, r12
jne 0x180018ddf
mov r8, r12
mov rdx, r15
mov rcx, r14
call fcn.180018370
jmp 0x180019472
lea rax, str._BadIPv6
mov dword [rsp + 0x40], 8
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r12
mov r9d, edi
mov dword [rsp + 0x20], r13d
mov r8, r15
mov rdx, r14
xor ecx, ecx
call fcn.18000c150
jmp 0x180019472
cmp r12, 0x1000
jb 0x180018e93
movabs rax, 0xffff800000000000
test rax, r12
jne 0x180018e93
movzx eax, byte [r12 + 5]
movzx ecx, byte [r12 + 4]
movzx edx, byte [r12 + 3]
movzx r8d, byte [r12 + 2]
movzx r9d, byte [r12 + 1]
movzx r10d, byte [r12]
mov dword [rsp + 0x50], eax
lea rax, str._02x:_02x:_02x:_02x:_02x:_02x
mov dword [rsp + 0x48], ecx
mov rcx, r14
mov dword [rsp + 0x40], edx
mov rdx, r15
mov dword [rsp + 0x38], r8d
xor r8d, r8d
mov dword [rsp + 0x30], r9d
xor r9d, r9d
mov dword [rsp + 0x28], r10d
mov qword [rsp + 0x20], rax
call fcn.18001ff10
jmp 0x180019472
mov dword [rsp + 0x40], 7
lea rax, str._BadMac
jmp 0x180018dee
cmp r12, 0x1000
jb 0x180018f99
movabs rax, 0xffff800000000000
test rax, r12
jne 0x180018f99
mov edx, dword [r12 + 0x10]
mov ecx, edx
sub ecx, 1
je 0x180018f37
sub ecx, 1
je 0x180018ef1
cmp ecx, 2
je 0x180018e33
mov dword [rsp + 0x28], edx
lea rax, str.unsupported_netaddr_type_u
jmp 0x180018c2a
mov eax, dword [r12 + 0x14]
mov edx, 0xffffffff
cmp eax, edx
mov rcx, r14
mov rdx, r15
jne 0x180018f12
mov r8, r12
call fcn.180018370
jmp 0x180019472
mov dword [rsp + 0x30], eax
xor r9d, r9d
lea rax, str.__RTnaipv6_:_u
mov qword [rsp + 0x28], r12
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.18001ff10
jmp 0x180019472
mov r9d, dword [r12 + 0x14]
mov edx, 0xffffffff
movzx eax, byte [r12 + 3]
cmp r9d, edx
movzx edx, byte [r12 + 1]
movzx ecx, byte [r12 + 2]
movzx r8d, byte [r12]
je 0x180018d81
mov dword [rsp + 0x48], r9d
xor r9d, r9d
mov dword [rsp + 0x40], eax
lea rax, str._u._u._u._u:_u
mov dword [rsp + 0x38], ecx
mov rcx, r14
mov dword [rsp + 0x30], edx
mov rdx, r15
mov dword [rsp + 0x28], r8d
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.18001ff10
jmp 0x180019472
mov dword [rsp + 0x40], 0xb
lea rax, str._BadNetAddr
jmp 0x180018dee
cmp r12, 0x1000
jb 0x18001905f
movabs rax, 0xffff800000000000
test rax, r12
jne 0x18001905f
movzx eax, byte [r12 + 0xf]
movzx ecx, byte [r12 + 0xe]
movzx edx, byte [r12 + 0xd]
movzx r8d, byte [r12 + 0xc]
movzx r9d, byte [r12 + 0xb]
movzx r10d, byte [r12 + 0xa]
movzx r11d, byte [r12 + 9]
movzx ebx, byte [r12 + 8]
movzx edi, word [r12 + 6]
movzx esi, word [r12 + 4]
mov dword [rsp + 0x78], eax
mov eax, dword [r12]
mov dword [rsp + 0x70], ecx
mov rcx, r14
mov dword [rsp + 0x68], edx
mov rdx, r15
mov dword [rsp + 0x60], r8d
xor r8d, r8d
mov dword [rsp + 0x58], r9d
xor r9d, r9d
mov dword [rsp + 0x50], r10d
mov dword [rsp + 0x48], r11d
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x38], edi
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
lea rax, str._08x__04x__04x__02x_02x__02x_02x_02x_02x_02x_02x
mov qword [rsp + 0x20], rax
call fcn.18001ff10
jmp 0x180019472
lea rax, str._BadUuid
jmp 0x180018de6
cmp r12, 0x1000
jb case.default.0x180018b82
movabs rax, 0xffff800000000000
test rax, r12
jne case.default.0x180018b82
test r12, r12
je case.default.0x180018b82
mov eax, dword [r12]
and eax, 0xffff0004
cmp eax, 0xbabe0004
jne case.default.0x180018b82
cmp r8d, 0xb
jne 0x1800190d3
mov ecx, dword [r12 + 4]
lea r9, [rbp - 0x30]
mov esi, 0x50
mov r8, r15
mov rdx, r14
mov qword [rsp + 0x20], rsi
call fcn.18001fa90
mov r12, qword [rbp - 0x40]
mov rbx, rax
cmp qword [r12 + 8], 0
jbe 0x180019127
mov rcx, r15
mov rax, r14
test r13b, 8
je 0x1800190f6
mov r8d, 3
lea rdx, [0x180027bb0]
jmp 0x180019103
mov r8d, 2
lea rdx, [0x18002c964]
call qword [case.0x18001f8e5.0]
mov rdx, qword [rbp - 0x40]
mov rbx, rax
mov r8, qword [rdx + 8]
mov rdx, qword [rdx + 0x10]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rbx, rax
mov rax, rbx
jmp 0x180019472
movzx ecx, byte [rdx]
lea rax, [rdx + 1]
mov qword [r8], rax
cmp cl, 0x6e
je 0x180019295
cmp cl, 0x73
jne case.default.0x180018b82
cmp byte [rbp + 0xb8], 0x6c
jne case.default.0x180018b82
mov rax, qword [r12]
xor ebx, ebx
add rax, 8
mov qword [r12], rax
mov rcx, qword [rax - 8]
mov qword [rbp - 0x68], rcx
cmp rcx, 0x1000
jb 0x1800191a8
movabs rax, 0xffff800000000000
test rax, rcx
jne 0x1800191a8
movsxd rdx, dword [rbp + 0xa8]
mov esi, ebx
test rdx, rdx
jle 0x1800191b8
mov eax, ebx
cmp word [rcx + rax*2], bx
je 0x1800191b8
inc esi
inc rax
cmp rax, rdx
jl 0x180019196
jmp 0x1800191b8
lea rax, [0x180052140]
mov esi, 6
mov qword [rbp - 0x68], rax
mov r12, rbx
test r13b, 2
jne 0x180019200
dec edi
cmp edi, esi
jl 0x180019200
mov eax, edi
lea rbx, [0x180026810]
sub eax, esi
inc eax
mov r13d, eax
sub edi, eax
nop dword [rax]
mov r8d, 1
mov rdx, rbx
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add r12, rax
sub r13, 1
jne 0x1800191e0
xor ebx, ebx
sub edi, esi
test esi, esi
jle 0x180019263
nop word [rax + rax]
lea rdx, [rbp - 0x7c]
mov dword [rbp - 0x7c], ebx
lea rcx, [rbp - 0x68]
dec esi
call fcn.180004d70
mov edx, dword [rbp - 0x7c]
cmp edx, 0x80
jae 0x180019236
mov byte [rbp - 0x30], dl
lea rax, [rbp - 0x2f]
jmp 0x18001923f
lea rcx, [rbp - 0x30]
call fcn.18000f860
mov byte [rax], 0
lea rcx, [rbp - 0x30]
sub rax, rcx
lea rdx, [rbp - 0x30]
mov r8, rax
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add r12, rax
test esi, esi
jg 0x180019210
sub edi, 1
js 0x18001928d
lea rbx, [0x180026810]
nop
mov r8d, 1
mov rdx, rbx
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add r12, rax
sub edi, 1
jns 0x180019270
mov rax, r12
jmp 0x180019472
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
mov rcx, qword [rax - 8]
mov r8, rcx
cmp rcx, 0x1000
jb 0x18001931e
movabs rax, 0xffff800000000000
test rax, rcx
jne 0x18001931e
movzx eax, byte [rcx]
test al, al
je 0x180019307
movabs rdx, 0x200000000801
sub al, 0x2f
cmp al, 0x2d
ja 0x1800192fb
bt rdx, rax
jae 0x1800192fb
nop dword [rax]
movzx eax, byte [r8 + 1]
inc r8
test al, al
je 0x180019307
cmp al, 0x5c
je 0x1800192e0
cmp al, 0x2f
je 0x1800192e0
cmp al, 0x3a
je 0x1800192e0
mov rcx, r8
movzx eax, byte [r8 + 1]
inc r8
test al, al
jne 0x1800192d1
sub r8, rcx
mov rdx, rcx
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
jmp 0x180019472
mov dword [rsp + 0x40], 0xc
lea rax, str._BadBaseName
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
jmp 0x180018e01
movzx ecx, byte [rdx]
lea rax, [rdx + 1]
mov qword [r8], rax
cmp cl, 0x6e
jne case.default.0x180018b82
mov rax, qword [r12]
xor ebx, ebx
add rax, 8
mov qword [r12], rax
mov rdx, qword [rax - 8]
mov r8, rdx
cmp rdx, 0x1000
jb 0x18001940c
movabs rax, 0xffff800000000000
test rax, rdx
jne 0x18001940c
movzx eax, byte [rdx]
test al, al
je 0x1800193fb
movabs r9, 0x10100000200
nop
cmp al, 0x28
je 0x1800193fb
cmp al, 0x20
je 0x1800193bf
cmp al, 9
je 0x1800193bf
inc r8
cmp al, 0x3c
jne 0x1800193b7
inc ebx
jmp 0x1800193f3
cmp al, 0x3e
jne 0x1800193f3
dec ebx
jmp 0x1800193f3
movzx ecx, byte [r8 + 1]
inc r8
test cl, cl
je 0x1800193f3
nop dword [rax + rax]
cmp cl, 0x28
ja 0x1800193e9
bt r9, rcx
jae 0x1800193e9
movzx ecx, byte [r8 + 1]
inc r8
test cl, cl
jne 0x1800193d0
jmp 0x1800193f3
test cl, cl
je 0x1800193f3
test ebx, ebx
cmove rdx, r8
movzx eax, byte [r8]
test al, al
jne 0x1800193a0
sub r8, rdx
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
jmp 0x180019472
mov dword [rsp + 0x40], 8
lea rax, str._BadFnNm
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdx
jmp 0x180018e01
movzx r11d, byte [rdx]
lea rax, [rdx + 1]
mov byte [rbp - 0x80], r11b
mov qword [r8], rax
cmp r11b, 0x58
je 0x180019844
cmp r11b, 0x63
je 0x180019510
cmp r11b, 0x72
je case.0x1800188e4.73
cmp r11b, 0x75
je 0x180019510
cmp r11b, 0x78
je 0x180019844
xor eax, eax
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.180001160
add rsp, 0x138
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
mov ecx, dword [rax - 8]
mov rax, qword [r8]
movzx edx, byte [rax]
inc rax
mov qword [r8], rax
cmp dl, 0x61
je 0x1800194f2
cmp dl, 0x63
je 0x1800194d7
cmp dl, 0x66
jne case.default.0x180018b82
mov esi, 0x50
lea r9, [rbp - 0x30]
mov r8, r15
mov qword [rsp + 0x20], rsi
mov rdx, r14
call fcn.18001fd50
jmp 0x180019472
mov esi, 0x50
lea r9, [rbp - 0x30]
mov r8, r15
mov qword [rsp + 0x20], rsi
mov rdx, r14
call fcn.18001fbb0
jmp 0x180019472
mov esi, 0x50
lea r9, [rbp - 0x30]
mov r8, r15
mov qword [rsp + 0x20], rsi
mov rdx, r14
call fcn.18001fd60
jmp 0x180019472
movzx ecx, byte [rax]
xor ebx, ebx
inc rax
mov qword [rbp - 0x60], rbx
mov qword [r8], rax
mov byte [rbp - 0x74], cl
lea eax, [rcx - 0x42]
cmp al, 0x27
ja case.default.0x180018b82
movabs rdx, 0x8100000001
bt rdx, rax
jae case.default.0x180018b82
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
mov r8, qword [rax - 8]
bt r13d, 8
jb 0x18001955e
lea r12d, [rbx + 1]
jmp 0x180019579
mov eax, dword [rbp + 0xa8]
cmp eax, 3
jle 0x180019571
mov r12d, 3
jmp 0x180019579
test eax, eax
cmovs eax, ebx
mov r12d, eax
lea eax, [rcx - 0x42]
test al, 0xdf
je 0x1800196f1
mov r9d, ebx
lea rax, [0x18002c7d0]
nop
mov r10, qword [rax - 8]
cmp r8, r10
jb 0x1800195ab
test r12d, r12d
jg 0x180019685
cmp r8, qword [rax]
jae 0x180019685
inc r9d
add rax, 0x18
cmp r9d, 6
jb 0x180019590
mov r9d, 0xa
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], ebx
lea rcx, [rbp - 0x30]
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x46]
call fcn.180020010
mov qword [rbp - 0x70], rax
mov rcx, rax
test r13b, 0x40
je 0x1800195f0
mov byte [rbp + rcx - 0x30], 0x20
inc rcx
mov qword [rbp - 0x70], rcx
cmp byte [rbp - 0x80], 0x63
jne 0x180019602
mov byte [rbp + rcx - 0x30], 0x42
inc rcx
mov qword [rbp - 0x70], rcx
cmp rcx, 0x50
jae 0x18001b0de
mov eax, r13d
mov byte [rbp + rcx - 0x30], bl
and al, 0x82
cmp al, 0x80
jne 0x18001966a
cmp rdi, rcx
jle 0x18001966a
test r13b, 4
lea rcx, [0x18002ca10]
lea rax, [0x180026810]
cmovne rax, rcx
mov qword [rbp - 0x68], rax
nop dword [rax + rax]
mov rdx, rax
mov r8d, 1
mov rax, r14
mov rcx, r15
call qword [case.0x18001f8e5.0]
mov rcx, qword [rbp - 0x70]
dec edi
add rbx, rax
movsxd rax, edi
cmp rax, rcx
mov rax, qword [rbp - 0x68]
jg 0x180019640
mov r8, rcx
lea rdx, [rbp - 0x30]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rax, rbx
jmp 0x180019472
xor edx, edx
mov rax, r8
div r10
mov rsi, rax
test r12d, r12d
je 0x1800196d3
xor edx, edx
mov rax, r8
div r10
cmp r12d, 1
jne 0x1800196aa
lea ecx, [r12 + 9]
jmp 0x1800196bd
cmp r12d, 2
mov ecx, 0x3e8
mov r11d, 0x64
cmove ecx, r11d
imul rcx, rdx
mov rax, r10
xor edx, edx
shr rax, 1
add rax, rcx
div r10
mov qword [rbp - 0x60], rax
lea r8, [0x180000000]
mov ecx, r9d
lea rdx, [rcx + rcx*2]
mov rax, qword [r8 + rdx*8 + 0x2c7c0]
mov r8, rsi
jmp 0x180019788
mov ecx, ebx
lea rax, [0x18002c6f8]
nop word [rax + rax]
cmp r8, qword [rax - 8]
jb 0x180019710
test r12d, r12d
jg 0x180019720
cmp r8, qword [rax]
jae 0x180019720
inc ecx
add rax, 0x20
cmp ecx, 6
jb 0x180019700
jmp 0x1800195b8
mov edx, ecx
test r12d, r12d
je 0x180019770
mov eax, edx
shl rax, 5
movzx ecx, byte [rax + r10 + 0x2c6e8]
mov eax, 1
shl rax, cl
dec rax
and rax, r8
cmp r12d, 1
jne 0x180019751
lea r9d, [r12 + 9]
jmp 0x180019765
cmp r12d, 2
mov r9d, 0x3e8
mov r11d, 0x64
cmove r9d, r11d
imul r9, rax
shr r9, cl
mov qword [rbp - 0x60], r9
shl rdx, 5
movzx ecx, byte [rdx + r10 + 0x2c6e8]
mov rax, qword [rdx + r10 + 0x2c6e0]
shr r8, cl
mov esi, 0x50
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], ebx
lea rcx, [rbp - 0x30]
mov edx, esi
mov qword [rbp - 0x40], rax
mov dword [rsp + 0x20], ebx
lea r9d, [rsi - 0x46]
call fcn.180020010
mov rdx, qword [rbp - 0x40]
mov rcx, rax
mov qword [rbp - 0x70], rax
test rdx, rdx
je 0x1800195de
test r12d, r12d
je 0x180019809
mov r8, qword [rbp - 0x60]
inc rcx
sub rsi, rcx
mov byte [rbp + rax - 0x30], 0x2e
lea rax, [rbp - 0x30]
mov qword [rbp - 0x70], rcx
mov dword [rsp + 0x30], 0x84
mov rdx, rsi
add rcx, rax
mov dword [rsp + 0x28], ebx
mov r9d, 0xa
mov dword [rsp + 0x20], r12d
call fcn.180020010
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x40]
add rcx, rax
test r13b, 0x40
je 0x180019817
mov byte [rbp + rcx - 0x30], 0x20
inc rcx
movzx eax, byte [rdx]
mov byte [rbp + rcx - 0x30], al
inc rcx
movzx eax, byte [rdx + 1]
mov qword [rbp - 0x70], rcx
test al, al
je 0x1800195f0
cmp byte [rbp - 0x74], 0x42
je 0x1800195f0
mov byte [rbp + rcx - 0x30], al
jmp 0x1800195e9
mov rdx, qword [r12]
mov r10d, 0x10
mov eax, dword [rbp + 0xa8]
add rdx, 8
test eax, eax
mov qword [r12], rdx
mov ecx, r10d
cmovns ecx, eax
mov r9, qword [rdx - 8]
mov qword [rbp - 0x58], r9
cmp r11b, 0x78
jne 0x1800198ec
mov r12, r9
mov qword [rbp - 0x68], r9
mov esi, r10d
mov qword [rbp - 0x60], rsi
test r9, r9
je 0x180019e89
mov rax, qword [r8]
movzx edx, byte [rax]
inc rax
mov qword [r8], rax
cmp dl, 0x44
je 0x180019bff
cmp dl, 0x64
je 0x180019a22
cmp dl, 0x73
jne case.default.0x180018b82
lea ebx, [rcx - 1]
test ecx, ecx
jle case.default.0x180018b82
movzx eax, byte [r9]
lea rdi, [r9 + 1]
xor r9d, r9d
xor r8d, r8d
mov rdx, r15
mov rcx, r14
cmp r11b, 0x78
jne 0x180019923
mov dword [rsp + 0x28], eax
lea r12, str._02x
mov qword [rsp + 0x20], r12
call fcn.18001ff10
jmp 0x180019948
add rdx, 8
mov qword [r12], rdx
mov r12, qword [rdx - 8]
mov edx, 0xffffffff
mov qword [rbp - 0x68], r12
cmp r12, rdx
ja 0x180019879
movsxd rax, ecx
add rax, r12
cmp rax, rdx
ja 0x180019879
mov esi, 8
jmp 0x18001987c
mov dword [rsp + 0x38], eax
lea rax, str._0llx:__02x
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rax
call fcn.18001ff10
lea r12, str._02x
mov rsi, rax
test r13d, 0x208
jne 0x18001999c
test ebx, ebx
jle 0x180019bf7
lea rcx, str.__02x
movzx eax, byte [rdi]
xor r9d, r9d
mov dword [rsp + 0x28], eax
xor r8d, r8d
mov qword [rsp + 0x20], rcx
mov rdx, r15
mov rcx, r14
call fcn.18001ff10
add rsi, rax
lea rdi, [rdi + 1]
dec ebx
lea rcx, str.__02x
test ebx, ebx
jg 0x180019963
mov rax, rsi
jmp 0x180019472
and r13d, 8
test ebx, ebx
jle 0x180019bf7
test r13d, r13d
je 0x1800199e2
nop dword [rax]
movzx eax, byte [rdi]
xor r9d, r9d
mov dword [rsp + 0x28], eax
xor r8d, r8d
mov rdx, r15
mov qword [rsp + 0x20], r12
mov rcx, r14
call fcn.18001ff10
add rsi, rax
lea rdi, [rdi + 1]
dec ebx
test ebx, ebx
jg 0x1800199b0
mov rax, rsi
jmp 0x180019472
lea r12, str.:_02x
nop dword [rax]
movzx eax, byte [rdi]
xor r9d, r9d
mov dword [rsp + 0x28], eax
xor r8d, r8d
mov rdx, r15
mov qword [rsp + 0x20], r12
mov rcx, r14
call fcn.18001ff10
add rsi, rax
lea rdi, [rdi + 1]
dec ebx
test ebx, ebx
jg 0x1800199f0
mov rax, rsi
jmp 0x180019472
xor ebx, ebx
mov r13d, ecx
test edi, edi
mov dword [rbp - 0x7c], ebx
mov edx, ebx
mov esi, ebx
cmovg r10d, edi
mov qword [rbp - 0x50], r10
test ecx, ecx
jle 0x180019bf7
movsxd rax, r10d
lea r12d, [rbx + 3]
mov qword [rbp - 0x70], rax
lea r8, [0x180027910]
lea r9, str._s_0llx__04x:
nop dword [rax]
mov dword [rsp + 0x40], edx
lea rax, [0x180025d47]
movsxd rcx, edx
add rcx, qword [rbp - 0x68]
mov qword [rsp + 0x38], rcx
test edx, edx
mov rcx, qword [rbp - 0x60]
mov rdx, r15
cmovne rax, r8
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov qword [rsp + 0x20], r9
mov rcx, r14
xor r9d, r9d
call fcn.18001ff10
mov rdx, qword [rbp - 0x50]
add rsi, rax
mov edi, ebx
test edx, edx
jle 0x180019b4f
mov rcx, qword [rbp - 0x58]
mov qword [rbp - 0x40], rcx
nop dword [rax]
mov eax, dword [rbp - 0x7c]
add eax, edi
cmp eax, r13d
jge 0x180019b19
movzx edx, byte [rcx]
test dil, 7
jne 0x180019ade
lea rax, [0x18002c998]
test edi, edi
jne 0x180019ae5
lea rax, str.__02x
mov dword [rsp + 0x28], edx
xor r9d, r9d
mov rdx, r15
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rcx, r14
call fcn.18001ff10
mov rcx, qword [rbp - 0x40]
add rsi, rax
mov rdx, qword [rbp - 0x50]
inc rcx
inc edi
mov qword [rbp - 0x40], rcx
cmp edi, edx
jl 0x180019ac0
jmp 0x180019b4f
cmp edi, edx
jge 0x180019b4f
mov eax, edx
sub eax, edi
mov edi, eax
nop dword [rax]
nop word [rax + rax]
mov r8, r12
lea rdx, [0x18002c9a8]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rsi, rax
sub rdi, 1
jne 0x180019b30
mov r8d, 1
lea rdx, [0x180026810]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
mov rcx, qword [rbp - 0x70]
mov rdi, rbx
add rsi, rax
test rcx, rcx
jle 0x180019bd0
mov eax, dword [rbp - 0x7c]
lea rbx, [0x18002c9ac]
mov r12, qword [rbp - 0x58]
mov dword [rbp - 0x78], eax
cmp eax, r13d
jge 0x180019bca
movzx eax, byte [rdi + r12]
lea rdx, [rbp - 0x80]
mov byte [rbp - 0x80], al
mov r8d, 1
sub al, 0x20
mov rcx, r15
cmp al, 0x5e
mov rax, r14
cmova rdx, rbx
call qword [case.0x18001f8e5.0]
mov rcx, qword [rbp - 0x70]
inc rdi
add rsi, rax
mov eax, dword [rbp - 0x78]
inc eax
mov dword [rbp - 0x78], eax
cmp rdi, rcx
jl 0x180019b88
xor ebx, ebx
lea r12d, [rbx + 3]
mov edx, dword [rbp - 0x7c]
lea r8, [0x180027910]
mov rax, qword [rbp - 0x50]
lea r9, str._s_0llx__04x:
add qword [rbp - 0x58], rcx
add edx, eax
mov dword [rbp - 0x7c], edx
cmp edx, r13d
jl 0x180019a60
mov rax, rsi
jmp 0x180019472
xor ebx, ebx
mov edx, ecx
test edi, edi
mov dword [rbp - 0x78], ebx
mov eax, ebx
mov dword [rbp - 0x7c], ebx
cmovg r10d, edi
mov esi, ebx
sub edx, r10d
mov qword [rbp - 0x50], r10
mov dword [rbp - 0x70], edx
mov r13d, ecx
test ecx, ecx
jle 0x180019bf7
movsxd rcx, r10d
lea r12d, [rbx + 3]
mov qword [rbp - 0x40], rcx
lea r8, str.
lea r10, str._n_.s____ditto_x__u_
mov edi, ebx
nop
cmp edi, edx
jge 0x180019ca9
test edi, edi
jle 0x180019ca9
mov rdx, r9
mov r8, rcx
sub rdx, rcx
mov rcx, r9
call sym.VBoxGINA.dll_nocrt_memcmp
test eax, eax
mov eax, dword [rbp - 0x78]
jne 0x180019c9b
test eax, eax
jne 0x180019c8d
mov rax, qword [rbp - 0x50]
add eax, edi
cmp eax, dword [rbp - 0x70]
jge 0x180019cda
mov rax, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x40]
mov r8, rdx
lea rcx, [rax + rdx]
mov rdx, rax
call sym.VBoxGINA.dll_nocrt_memcmp
test eax, eax
jne 0x180019cda
mov eax, dword [rbp - 0x78]
mov rcx, qword [rbp - 0x40]
inc eax
mov dword [rbp - 0x78], eax
jmp 0x180019e56
lea r8, str.
lea r10, str._n_.s____ditto_x__u_
test eax, eax
jle 0x180019cda
mov dword [rsp + 0x38], eax
xor r9d, r9d
mov rax, qword [rbp - 0x60]
mov rdx, r15
mov qword [rsp + 0x30], r8
mov rcx, r14
mov dword [rsp + 0x28], eax
xor r8d, r8d
mov qword [rsp + 0x20], r10
call fcn.18001ff10
add rsi, rax
mov dword [rbp - 0x78], ebx
mov dword [rsp + 0x40], edi
lea rdx, [0x180027910]
movsxd rcx, edi
lea rax, [0x180025d47]
add rcx, qword [rbp - 0x68]
mov qword [rsp + 0x38], rcx
test edi, edi
mov rcx, qword [rbp - 0x60]
cmovne rax, rdx
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
xor r9d, r9d
lea rax, str._s_0llx__04x:
xor r8d, r8d
mov rdx, r15
mov qword [rsp + 0x20], rax
mov rcx, r14
call fcn.18001ff10
add rsi, rax
mov qword [rbp - 0x48], rbx
cmp qword [rbp - 0x40], 0
mov edi, ebx
mov rcx, rbx
jle 0x180019d9d
mov r12, qword [rbp - 0x58]
mov ebx, dword [rbp - 0x7c]
lea eax, [rdi + rbx]
cmp eax, r13d
jge 0x180019d97
movzx edx, byte [rcx + r12]
test dil, 7
jne 0x180019d60
lea rax, [0x18002c998]
test edi, edi
jne 0x180019d67
lea rax, str.__02x
mov dword [rsp + 0x28], edx
xor r9d, r9d
mov rdx, r15
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rcx, r14
call fcn.18001ff10
mov rcx, qword [rbp - 0x48]
add rsi, rax
inc rcx
inc edi
mov qword [rbp - 0x48], rcx
cmp rcx, qword [rbp - 0x40]
jl 0x180019d42
xor ebx, ebx
lea r12d, [rbx + 3]
mov rax, qword [rbp - 0x50]
cmp edi, eax
jge 0x180019dcf
sub eax, edi
mov edi, eax
nop dword [rax]
mov r8, r12
lea rdx, [0x18002c9a8]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rsi, rax
sub rdi, 1
jne 0x180019db0
mov r8d, 1
lea rdx, [0x180026810]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
mov rcx, qword [rbp - 0x40]
mov rdi, rbx
add rsi, rax
test rcx, rcx
jle 0x180019e50
mov eax, dword [rbp - 0x7c]
lea rbx, [0x18002c9ac]
mov r12, qword [rbp - 0x58]
mov dword [rbp - 0x48], eax
cmp eax, r13d
jge 0x180019e4a
movzx eax, byte [rdi + r12]
lea rdx, [rbp - 0x80]
mov byte [rbp - 0x80], al
mov r8d, 1
sub al, 0x20
mov rcx, r15
cmp al, 0x5e
mov rax, r14
cmova rdx, rbx
call qword [case.0x18001f8e5.0]
mov rcx, qword [rbp - 0x40]
inc rdi
add rsi, rax
mov eax, dword [rbp - 0x48]
inc eax
mov dword [rbp - 0x48], eax
cmp rdi, rcx
jl 0x180019e08
xor ebx, ebx
lea r12d, [rbx + 3]
mov eax, dword [rbp - 0x78]
mov edi, dword [rbp - 0x7c]
mov r9, qword [rbp - 0x58]
lea r8, str.
add edi, dword [rbp - 0x50]
lea r10, str._n_.s____ditto_x__u_
mov edx, dword [rbp - 0x70]
add r9, rcx
mov qword [rbp - 0x58], r9
mov dword [rbp - 0x7c], edi
cmp edi, r13d
jl 0x180019c40
mov rax, rsi
jmp 0x180019472
mov r8d, 6
lea rdx, str._null_
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
jmp 0x180019472
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
mov ecx, dword [rax - 8]
mov rax, qword [r8]
movzx edx, byte [rax]
inc rax
mov qword [r8], rax
cmp dl, 0x61
je 0x180019f34
cmp dl, 0x63
je 0x180019f16
cmp dl, 0x66
je 0x180019ef8
cmp dl, 0x73
jne case.default.0x180018b82
mov esi, 0x50
lea r9, [rbp - 0x30]
mov r8, r15
mov qword [rsp + 0x20], rsi
mov rdx, r14
call fcn.18001fa90
jmp 0x180019472
mov esi, 0x50
lea r9, [rbp - 0x30]
mov r8, r15
mov qword [rsp + 0x20], rsi
mov rdx, r14
call fcn.18001fa90
jmp 0x180019472
mov esi, 0x50
lea r9, [rbp - 0x30]
mov r8, r15
mov qword [rsp + 0x20], rsi
mov rdx, r14
call fcn.18001f800
jmp 0x180019472
mov esi, 0x50
lea r9, [rbp - 0x30]
mov r8, r15
mov qword [rsp + 0x20], rsi
mov rdx, r14
call fcn.18001f8f0
jmp 0x180019472
xor ebx, ebx
lea rdx, [0x18002c869]
mov rcx, r9
mov dword [rbp - 0x70], ebx
mov esi, ebx
mov dword [rbp - 0x7c], ebx
lea r8d, [rbx + 9]
call sym.VBoxGINA.dll_nocrt_strncmp
mov r8d, eax
test eax, eax
je 0x180019fea
nop word [rax + rax]
mov edx, dword [rbp - 0x70]
cmp edx, esi
je case.default.0x180018b82
mov eax, dword [rbp - 0x7c]
test r8d, r8d
lea ecx, [rax - 1]
cmovns ecx, edx
inc eax
test r8d, r8d
mov dword [rbp - 0x70], ecx
cmovns esi, eax
cmp ecx, esi
jl case.default.0x180018b82
mov eax, ecx
sub eax, esi
cdq
sub eax, edx
sar eax, 1
add eax, esi
movsxd rcx, eax
mov dword [rbp - 0x7c], eax
lea rax, [0x180000000]
lea rdx, [rcx + rcx*2]
mov rcx, qword [rbp - 0x68]
movzx r8d, byte [rax + rdx*8 + 0x2c868]
lea rdx, [rdx*8 + 0x2c869]
add rdx, rax
call sym.VBoxGINA.dll_nocrt_strncmp
mov r8d, eax
test eax, eax
jne 0x180019f80
movsxd rax, dword [rbp - 0x7c]
lea r8, [0x180000000]
lea rcx, [rax + rax*2]
lea rdx, [rcx*8]
mov rcx, qword [rbp - 0x60]
movzx eax, byte [rdx + r8 + 0x2c868]
dec rax
add qword [rcx], rax
cmp byte [rdx + r8 + 0x2c877], 8
jne 0x18001a02f
mov rbx, qword [r12]
add rbx, 8
mov qword [r12], rbx
mov rbx, qword [rbx - 8]
test byte [rdx + r8 + 0x2c878], 1
je 0x18001a07c
cmp rbx, 0x1000
jb 0x18001a052
movabs rax, 0xffff800000000000
test rax, rbx
je 0x18001a07c
lea rax, str._BadRD
mov r8d, 6
mov dword [rsp + 0x40], r8d
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rbx
jmp 0x180018e01
cmp dword [rdx + r8 + 0x2c87c], 0
jne case.default.0x180018b82
mov rax, qword [rbx]
mov qword [rsp + 0x28], rax
lea rax, str._lld_ns
jmp 0x180018c2a
movzx r9d, byte [rdx]
mov byte [rbp - 0x74], r9b
lea eax, [r9 - 0x61]
test al, 0xfb
je 0x18001a625
cmp r9b, 0x6a
jne 0x18001a3e7
movzx ecx, byte [rdx + 1]
lea rax, [rdx + 2]
mov qword [r8], rax
cmp cl, 0x73
jne case.default.0x180018b82
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
mov rcx, qword [rax - 8]
mov qword [rbp - 0x70], rcx
cmp rcx, 0x1000
jb 0x18001a0fd
movabs rax, 0xffff800000000000
test rax, rcx
je 0x18001a108
lea rcx, [0x18002ca2c]
mov qword [rbp - 0x70], rcx
mov edx, dword [rbp + 0xa8]
call fcn.1800200f0
mov r12, rax
mov qword [rbp - 0x60], rax
mov rax, r14
lea rdx, [0x18002ca34]
mov r8d, 1
mov rcx, r15
call qword [case.0x18001f8e5.0]
mov rsi, rax
lea rax, [0x180026810]
test r13b, 2
jne 0x18001a17c
dec edi
movsxd rcx, edi
mov dword [rbp - 0x78], edi
cmp rcx, r12
jl 0x18001a17c
mov rdx, rax
mov r8d, 1
mov rax, r14
mov rcx, r15
call qword [case.0x18001f8e5.0]
add rsi, rax
dec edi
movsxd rax, edi
cmp rax, r12
lea rax, [0x180026810]
jge 0x18001a150
mov dword [rbp - 0x78], edi
xor ebx, ebx
mov ecx, ebx
test r12, r12
jle 0x18001a38e
mov r13, qword [rbp - 0x70]
lea r12d, [rbx + 6]
mov rdi, qword [rbp - 0x60]
mov r9d, 0xfffd
nop dword [rax + rax]
movzx eax, byte [rbx + r13]
lea rdx, [rbx + r13]
mov qword [rbp - 0x68], rdx
mov byte [rbp - 0x80], al
cmp al, 0x1f
jbe 0x18001a1c4
cmp al, 0x22
je 0x18001a1c4
cmp al, 0x5c
je 0x18001a1c4
inc rbx
jmp 0x18001a360
cmp rcx, rbx
jge 0x18001a1f0
lea rdx, [rcx + r13]
mov r8, rbx
sub r8, rcx
mov rax, r14
mov rcx, r15
call qword [case.0x18001f8e5.0]
mov rdx, qword [rbp - 0x68]
mov r9d, 0xfffd
add rsi, rax
movzx eax, byte [rbp - 0x80]
movsx eax, al
add eax, 0xfffffff8
cmp eax, 0x54
ja case.0x18001a21c.15
lea r8, [0x180000000]
cdqe
movzx eax, byte [r8 + rax + 0x1b1c0]
mov ecx, dword [r8 + rax*4 + 0x1b1a0]
add rcx, r8
jmp rcx
mov r8d, 2
lea rdx, [0x18002ca70]
jmp 0x18001a345
mov r8d, 2
lea rdx, [0x18002ca74]
jmp 0x18001a345
mov r8d, 2
lea rdx, [0x18002ca78]
jmp 0x18001a345
mov r8d, 2
lea rdx, [0x18002ca7c]
jmp 0x18001a345
mov r8d, 2
lea rdx, [0x18002ca80]
jmp 0x18001a345
mov r8d, 2
lea rdx, [0x18002ca84]
jmp 0x18001a345
mov r8d, 2
lea rdx, [0x18002ca88]
jmp 0x18001a345
mov dword [rbp - 0x7c], r9d
mov qword [rbp - 0x68], rdx
movzx eax, byte [rdx]
test al, al
js 0x18001a2b5
lea rbx, [rdx + 1]
mov qword [rbp - 0x68], rbx
jmp 0x18001a2cd
lea rdx, [rbp - 0x7c]
lea rcx, [rbp - 0x68]
call fcn.18000f260
test eax, eax
mov eax, dword [rbp - 0x7c]
js 0x18001a2d3
mov rbx, qword [rbp - 0x68]
sub rbx, r13
dec rbx
cmp eax, 0xfffe
mov word [rbp - 0x30], 0x755c
lea rdx, [0x180000000]
mov byte [rbp - 0x2a], 0
mov ecx, 0xfffd
mov r8, r12
cmovae eax, ecx
mov ecx, eax
mov dword [rbp - 0x7c], eax
shr rax, 0xc
and eax, 0xf
movzx eax, byte [rax + rdx + 0x52110]
mov byte [rbp - 0x2e], al
mov eax, ecx
shr rax, 8
and eax, 0xf
movzx eax, byte [rax + rdx + 0x52110]
mov byte [rbp - 0x2d], al
mov eax, ecx
shr rax, 4
and eax, 0xf
and ecx, 0xf
movzx eax, byte [rax + rdx + 0x52110]
mov byte [rbp - 0x2c], al
movzx eax, byte [rcx + rdx + 0x52110]
lea rdx, [rbp - 0x30]
mov byte [rbp - 0x2b], al
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rsi, rax
mov r9d, 0xfffd
inc rbx
mov rcx, rbx
cmp rbx, rdi
jl 0x18001a1a0
mov edi, dword [rbp - 0x78]
cmp rcx, rbx
jge 0x18001a38a
sub rbx, rcx
lea rdx, [rcx + r13]
mov r8, rbx
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rsi, rax
mov r12, qword [rbp - 0x60]
dec edi
movsxd rax, edi
cmp rax, r12
jl 0x18001a3c6
nop dword [rax + rax]
mov r8d, 1
lea rdx, [0x180026810]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
dec edi
add rsi, rax
movsxd rax, edi
cmp rax, r12
jge 0x18001a3a0
mov r8d, 1
lea rdx, [0x18002ca34]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rax, rsi
jmp 0x180019472
cmp r9b, 0x70
jne case.default.0x180018b82
movzx r9d, byte [rdx + 1]
mov rax, qword [r12]
add rax, 8
mov byte [rbp - 0x80], r9b
mov qword [r12], rax
mov rcx, qword [rax - 8]
add qword [r8], 2
mov qword [rbp - 0x70], rcx
cmp r9b, 0x70
jne 0x18001a41e
mov byte [rbp - 0x7c], 0x2f
jmp 0x18001a458
cmp r9b, 0x71
mov edx, 0x7e
mov r8d, 0x2b
cmove edx, r8d
mov dword [rbp - 0x7c], edx
cmp r9b, 0x61
je 0x18001a458
mov byte [rbp - 0x7c], dl
mov qword [rbp - 0x70], rcx
cmp r9b, 0x71
je 0x18001a458
mov byte [rbp - 0x7c], dl
mov qword [rbp - 0x70], rcx
cmp r9b, 0x66
jne case.default.0x180018b82
cmp rcx, 0x1000
jb 0x18001a470
movabs rax, 0xffff800000000000
test rax, rcx
je 0x18001a47b
lea rcx, [0x18002ca2c]
mov qword [rbp - 0x70], rcx
mov edx, dword [rbp + 0xa8]
call fcn.1800200f0
test r13b, 2
mov r12d, 3
mov r13, rax
jne 0x18001a4d3
dec edi
movsxd rcx, edi
mov dword [rbp - 0x78], edi
cmp rcx, rax
jl 0x18001a4d3
nop dword [rax]
nop word [rax + rax]
mov r8, r12
lea rdx, [0x18002ca8c]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
dec edi
movsxd rax, edi
cmp rax, r13
jge 0x18001a4b0
mov dword [rbp - 0x78], edi
xor ebx, ebx
mov edx, ebx
test r13, r13
jle 0x18001a5f1
mov rdi, qword [rbp - 0x70]
nop dword [rax]
nop dword [rax + rax]
movzx esi, byte [rdi + rbx]
movsx ecx, sil
lea eax, [rcx - 0x61]
cmp eax, 0x1a
jb 0x18001a5c7
lea eax, [rcx - 0x41]
cmp eax, 0x1a
jb 0x18001a5c7
lea eax, [rcx - 0x30]
cmp eax, 0xa
jb 0x18001a5c7
lea eax, [rsi - 0x2d]
cmp al, 1
jbe 0x18001a5c7
cmp sil, 0x5f
je 0x18001a5c7
cmp sil, 0x7e
je 0x18001a5c7
cmp sil, byte [rbp - 0x7c]
je 0x18001a5c7
cmp rdx, rbx
jge 0x18001a55f
mov r8, rbx
mov rcx, r15
sub r8, rdx
mov rax, r14
add rdx, rdi
call qword [case.0x18001f8e5.0]
cmp sil, 0x20
jne 0x18001a57a
cmp byte [rbp - 0x80], 0x66
jne 0x18001a57a
mov r8d, 1
lea rdx, [0x18002ca90]
jmp 0x18001a5b3
lea rdx, [0x180000000]
mov byte [rbp - 0x30], 0x25
mov rcx, rsi
mov byte [rbp - 0x2d], 0
mov rax, rsi
mov r8, r12
shr rax, 4
and ecx, 0xf
movzx eax, byte [rax + rdx + 0x52128]
mov byte [rbp - 0x2f], al
movzx eax, byte [rcx + rdx + 0x52128]
lea rdx, [rbp - 0x30]
mov byte [rbp - 0x2e], al
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
inc rbx
mov rdx, rbx
jmp 0x18001a5ca
inc rbx
cmp rbx, r13
jl 0x18001a4f0
mov edi, dword [rbp - 0x78]
cmp rdx, rbx
jge 0x18001a5f1
sub rbx, rdx
mov rcx, r15
add rdx, qword [rbp - 0x70]
mov r8, rbx
mov rax, r14
call qword [case.0x18001f8e5.0]
dec edi
movsxd rax, edi
cmp rax, r13
jl case.default.0x180018b82
nop
mov r8, r12
lea rdx, [0x18002ca8c]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
dec edi
movsxd rax, edi
cmp rax, r13
jge 0x18001a600
jmp case.default.0x180018b82
movzx ecx, byte [rdx + 1]
lea rax, [rdx + 2]
mov qword [r8], rax
cmp cl, 0x73
jne case.default.0x180018b82
cmp r9b, 0x61
lea rcx, str.____n_r
lea rax, [0x18002c880]
cmove rax, rcx
xor ebx, ebx
mov qword [rbp - 0x50], rax
cmp r9b, 0x61
mov eax, ebx
mov esi, ebx
sete al
add rax, 5
mov qword [rbp - 0x40], rax
mov rax, qword [r12]
add rax, 8
mov qword [r12], rax
mov rcx, qword [rax - 8]
mov qword [rbp - 0x70], rcx
cmp rcx, 0x1000
jb 0x18001a694
movabs rax, 0xffff800000000000
test rax, rcx
je 0x18001a69f
lea rcx, [0x18002ca2c]
mov qword [rbp - 0x70], rcx
mov edx, dword [rbp + 0xa8]
call fcn.1800200f0
cmp byte [rbp - 0x74], 0x61
mov r12, rax
mov qword [rbp - 0x60], rax
jne 0x18001a6d3
mov r8d, 1
lea rdx, [0x18002ca34]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
mov rsi, rax
test r13b, 2
jne 0x18001a717
dec edi
movsxd rcx, edi
mov dword [rbp - 0x78], edi
cmp rcx, r12
jl 0x18001a717
lea rbx, [0x180026810]
nop dword [rax]
mov r8d, 1
mov rdx, rbx
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
dec edi
add rsi, rax
movsxd rax, edi
cmp rax, r12
jge 0x18001a6f0
mov dword [rbp - 0x78], edi
xor ebx, ebx
test r12, r12
jle 0x18001a851
mov r13, qword [rbp - 0x70]
mov eax, 1
sub rax, r13
mov r12d, 6
mov qword [rbp - 0x58], rax
mov rdi, rbx
nop dword [rax]
movsx edx, byte [rbx + r13]
lea rax, [rbx + r13]
mov r8, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x50]
call sym.VBoxGINA.dll_nocrt_memchr
test rax, rax
je 0x18001a817
cmp rdi, rbx
jge 0x18001a77d
mov r8, rbx
lea rdx, [rdi + r13]
sub r8, rdi
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rsi, rax
movsx eax, byte [rbx + r13]
lea rdi, [rbx + r13]
add eax, 0xfffffff6
cmp eax, 0x34
ja case.0x18001a7ad.17
lea rdx, [0x180000000]
cdqe
movzx eax, byte [rdx + rax + 0x1b238]
mov ecx, dword [rdx + rax*4 + 0x1b218]
add rcx, rdx
jmp rcx
mov r8d, 4
lea rdx, str.lt_
jmp 0x18001a804
mov r8d, 4
lea rdx, str.gt_
jmp 0x18001a804
lea rdx, str.amp_
jmp 0x18001a7fe
mov r8, r12
lea rdx, str.apos_
jmp 0x18001a804
mov r8, r12
lea rdx, str.quot_
jmp 0x18001a804
lea rdx, str.xA_
jmp 0x18001a7fe
lea rdx, str.xD_
mov r8d, 5
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rsi, rax
add rdi, qword [rbp - 0x58]
inc rbx
cmp rbx, qword [rbp - 0x60]
jl 0x18001a740
mov qword [rbp - 0x68], rdi
cmp rdi, rbx
mov edi, dword [rbp - 0x78]
jge 0x18001a84d
mov rax, qword [rbp - 0x68]
mov rcx, r15
sub rbx, rax
mov r8, rbx
lea rdx, [rax + r13]
mov rax, r14
call qword [case.0x18001f8e5.0]
add rsi, rax
mov r12, qword [rbp - 0x60]
dec edi
movsxd rax, edi
cmp rax, r12
jl 0x18001a886
nop dword [rax + rax]
mov r8d, 1
lea rdx, [0x180026810]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
dec edi
add rsi, rax
movsxd rax, edi
cmp rax, r12
jge 0x18001a860
cmp byte [rbp - 0x74], 0x61
jne 0x18001a8a8
mov r8d, 1
lea rdx, [0x18002ca34]
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
add rsi, rax
mov rax, rsi
jmp 0x180019472
xor ebx, ebx
mov rcx, rdx
mov edi, ebx
nop word [rax + rax]
movzx eax, byte [rcx]
inc rcx
mov qword [rbp - 0x68], rcx
test al, al
je case.default.0x180018b82
cmp al, 0x5b
jne 0x18001a8c0
movzx eax, byte [rcx]
mov r9, rbx
test al, al
je case.default.0x180018b82
cmp al, 0x5d
je 0x18001a8fa
movzx eax, byte [r9 + rcx + 1]
inc r9
test al, al
jne 0x18001a8e4
jmp case.default.0x180018b82
lea rax, [rcx + 1]
add rax, r9
mov qword [r8], rax
mov rax, rcx
sub rax, rdx
cmp rax, 4
jne 0x180019127
cmp byte [rdx], 0x78
jne 0x180019127
cmp byte [rdx + 1], 0x38
jne 0x180019127
cmp byte [rdx + 2], 0x36
jne 0x180019127
cmp r9, 3
jne 0x180019127
mov rdx, rcx
mov r8, r9
lea rcx, [0x18002ca94]
mov rsi, r9
call sym.VBoxGINA.dll_nocrt_strncmp
test eax, eax
jne 0x18001ac28
mov rax, qword [r12]
lea r9d, [rsi + 5]
add rax, 8
lea r8d, [rsi + 0xd]
mov qword [r12], rax
lea rcx, [rbp - 0x30]
bts r13d, 0xe
mov r12, qword [rax - 8]
mov eax, r13d
or eax, 4
mov rdx, r12
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0xffffffff
call fcn.18000b0d0
movsxd r8, eax
lea rdx, [rbp - 0x30]
mov rax, r14
mov rcx, r15
call qword [case.0x18001f8e5.0]
mov rbx, rax
test r12b, 1
je 0x18001a9d3
mov r8, rsi
lea rdx, [0x18002ca98]
mov rcx, r15
lea edi, [rsi - 2]
mov rax, r14
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffffe
and r12, rax
test r12b, 2
je 0x18001aa09
mov eax, edi
lea rdx, [0x18002ca9c]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001a9f8
lea rdx, [0x18002caa0]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffffd
and r12, rax
test r12b, 4
je 0x18001aa3f
mov eax, edi
lea rdx, [0x18002caa4]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001aa2e
lea rdx, [0x18002caa8]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffffb
and r12, rax
test r12b, 8
je 0x18001aa75
mov eax, edi
lea rdx, [0x18002caac]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001aa64
lea rdx, [0x18002cab0]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffff7
and r12, rax
test r12b, 0x10
je 0x18001aaab
mov eax, edi
lea rdx, [0x18002cab4]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001aa9a
lea rdx, [0x18002cab8]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffffffef
and r12, rax
test r12b, 0x20
je 0x18001aae1
mov eax, edi
lea rdx, [0x18002cabc]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001aad0
lea rdx, [0x18002cac0]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffffffdf
and r12, rax
bt r12, 0x10
jae 0x18001ab18
mov eax, edi
lea rdx, [0x18002cac4]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ab07
lea rdx, [0x18002cac8]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffeffff
and r12, rax
bt r12, 0x12
jae 0x18001ab4f
mov eax, edi
lea rdx, [0x18002cacc]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ab3e
lea rdx, [0x18002cad0]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffbffff
and r12, rax
bt r12, 0x1d
jae 0x18001ab86
mov eax, edi
lea rdx, [0x18002cad4]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ab75
lea rdx, [0x18002cad8]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xdfffffff
and r12, rax
bt r12, 0x1e
jae 0x18001abbd
mov eax, edi
lea rdx, [0x18002cadc]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001abac
lea rdx, [0x18002cae0]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xbfffffff
and r12, rax
bt r12, 0x1f
jae 0x18001abf1
mov eax, edi
lea rdx, [0x18002cae4]
inc edi
mov r8, rsi
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001abe3
lea rdx, [0x18002cae8]
call qword [case.0x18001f8e5.0]
add rbx, rax
btr r12d, 0x1f
test r12, r12
je 0x18001b0c4
test edi, edi
lea rax, str.unkn
lea rdx, str._unkn
mov r8d, 6
cmove rdx, rax
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
mov rdx, r12
jmp 0x18001b089
mov rdx, qword [rbp - 0x68]
lea rcx, [0x18002cb00]
mov r8, rsi
call sym.VBoxGINA.dll_nocrt_strncmp
test eax, eax
jne 0x180019127
mov rax, qword [r12]
lea rcx, [rbp - 0x30]
add rax, 8
mov r9d, 8
mov qword [r12], rax
bts r13d, 0xe
mov rsi, qword [rax - 8]
lea r8d, [r9 + 8]
mov eax, r13d
mov rdx, rsi
or eax, 4
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0xffffffff
call fcn.18000b0d0
movsxd r8, eax
lea rdx, [rbp - 0x30]
mov rax, r14
mov rcx, r15
call qword [case.0x18001f8e5.0]
mov rbx, rax
test sil, 1
je 0x18001acc3
mov edi, 1
lea rdx, str.VME
mov rcx, r15
mov rax, r14
lea r8d, [rdi + 3]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffffe
and rsi, rax
test sil, 2
je 0x18001acfc
mov eax, edi
lea rdx, str.PVI
inc edi
mov r8d, 4
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001aceb
lea rdx, str._PVI
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffffd
and rsi, rax
test sil, 4
je 0x18001ad35
mov eax, edi
lea rdx, str.TSD
inc edi
mov r8d, 4
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ad24
lea rdx, str._TSD
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffffb
and rsi, rax
test sil, 8
je 0x18001ad6e
mov eax, edi
lea rdx, [0x18002caac]
inc edi
mov r8d, 3
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ad5d
lea rdx, [0x18002cab0]
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffff7
and rsi, rax
test sil, 0x10
je 0x18001ada7
mov eax, edi
lea rdx, str.PSE
inc edi
mov r8d, 4
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ad96
lea rdx, str._PSE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffffffef
and rsi, rax
test sil, 0x20
je 0x18001ade0
mov eax, edi
lea rdx, str.PAE
inc edi
mov r8d, 4
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001adcf
lea rdx, str._PAE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffffffdf
and rsi, rax
test sil, 0x40
je 0x18001ae19
mov eax, edi
lea rdx, str.MCE
inc edi
mov r8d, 4
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ae08
lea rdx, str._MCE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffffffbf
and rsi, rax
test sil, sil
jns 0x18001ae51
mov eax, edi
lea rdx, str.PGE
inc edi
mov r8d, 4
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ae40
lea rdx, str._PGE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffffff7f
and rsi, rax
bt rsi, 8
jae 0x18001ae8b
mov eax, edi
lea rdx, str.PCE
inc edi
mov r8d, 4
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001ae7a
lea rdx, str._PCE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffeff
and rsi, rax
bt rsi, 9
jae 0x18001aec5
mov eax, edi
lea rdx, str.OSFXSR
inc edi
mov r8d, 7
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001aeb4
lea rdx, str._OSFXSR
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffdff
and rsi, rax
bt rsi, 0xa
jae 0x18001aeff
mov eax, edi
lea rdx, str.OSXMMEEXCPT
inc edi
mov r8d, 0xc
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001aeee
lea rdx, str._OSXMMEEXCPT
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffffbff
and rsi, rax
bt rsi, 0xd
jae 0x18001af39
mov eax, edi
lea rdx, str.VMXE
inc edi
mov r8d, 5
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001af28
lea rdx, str._VMXE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffffdfff
and rsi, rax
bt rsi, 0xe
jae 0x18001af73
mov eax, edi
lea rdx, str.SMXE
inc edi
mov r8d, 5
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001af62
lea rdx, str._SMXE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffffbfff
and rsi, rax
mov r12d, 6
bt rsi, 0x11
jae 0x18001afb0
mov eax, edi
lea rdx, str.PCIDE
inc edi
mov r8d, r12d
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001af9f
lea rdx, str._PCIDE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffdffff
and rsi, rax
bt rsi, 0x12
jae 0x18001afea
mov eax, edi
lea rdx, str.OSXSAVE
inc edi
mov r8d, 8
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001afd9
lea rdx, str._OSXSAVE
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xfffbffff
and rsi, rax
bt rsi, 0x14
jae 0x18001b024
mov eax, edi
lea rdx, str.SMEP
inc edi
mov r8d, 5
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001b013
lea rdx, str._SMEP
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffefffff
and rsi, rax
bt rsi, 0x15
jae 0x18001b05e
mov eax, edi
lea rdx, str.SMAP
inc edi
mov r8d, 5
test eax, eax
mov rcx, r15
mov rax, r14
je 0x18001b04d
lea rdx, str._SMAP
call qword [case.0x18001f8e5.0]
add rbx, rax
mov eax, 0xffdfffff
and rsi, rax
test rsi, rsi
je 0x18001b0c4
test edi, edi
lea rax, str.unkn
lea rdx, str._unkn
mov r8, r12
cmove rdx, rax
mov rcx, r15
mov rax, r14
call qword [case.0x18001f8e5.0]
mov rdx, rsi
mov r9d, 1
mov dword [rsp + 0x28], r13d
lea rcx, [rbp - 0x30]
mov dword [rsp + 0x20], 0xffffffff
add rbx, rax
lea r8d, [r9 + 0xf]
call fcn.18000b0d0
movsxd r8, eax
lea rdx, [rbp - 0x30]
mov rax, r14
mov rcx, r15
call qword [case.0x18001f8e5.0]
add rbx, rax
inc edi
test edi, edi
je 0x180019127
mov r8d, 1
lea rdx, [0x18002cafc]
jmp 0x180019118
call fcn.180001199
int3