Function at 0x140582af0
Capabilities:
Parse credit card information

Disassembly:
mov rax, qword [rcx + 0xb8]
cmp qword [rcx + 0xb0], rax
je 0x1405829a0
mov eax, dword [rcx + 0x88]
test eax, eax
je 0x140582988
cmp eax, 2
je 0x140582990
cmp eax, 1
je 0x140582998
ret
jmp 0x140582af0
jmp 0x140583af0
jmp 0x140582f20
mov dword [rcx + 0x90], 0x1b
ret
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rax, qword [rcx + 0xb0]
mov rdi, qword [rcx + 0xc0]
lea rdx, [rax + 1]
mov qword [rcx + 0xb0], rdx
movzx ebp, byte [rax]
mov rbx, rcx
movsx edx, byte [rdi + rbp + 0x139]
mov rsi, rbp
test dl, dl
jne 0x140582b50
mov rax, qword [rdi]
lea rcx, [0x1404d0dc0]
movsx edx, bpl
mov r9, qword [rax + 0x40]
mov eax, ebp
cmp r9, rcx
jne 0x140582dc0
cmp al, 0x20
je 0x140582b50
mov byte [rdi + rbp + 0x139], al
mov rcx, qword [rbx + 0xa0]
call fcn.14042f1b8
test rax, rax
je 0x140582d80
cmp sil, 0x5c
je 0x140582c40
cmp sil, 0x28
je 0x140582c18
cmp sil, 0x29
je 0x140582d68
cmp sil, 0x5b
je 0x140582dd8
cmp sil, 0x7b
je 0x140582d18
test sil, sil
je 0x140582e70
mov eax, esi
and eax, 0xffffffdf
cmp al, 0x5d
je 0x140582d80
mov rbp, qword [rbx + 0xc0]
movzx r12d, sil
mov rdi, rbx
movzx eax, byte [rbp + r12 + 0x139]
test al, al
jne 0x140582bea
mov rax, qword [rbp]
lea rdx, [0x1404d0dc0]
mov rax, qword [rax + 0x40]
cmp rax, rdx
jne 0x140582e30
mov byte [rbp + r12 + 0x139], sil
mov eax, esi
movzx edx, byte [rbx]
test dl, dl
jne 0x140582c04
jmp 0x140582c33
movzx edx, byte [rdi + 8]
add rdi, 8
test dl, dl
je 0x140582c33
cmp al, dl
jne 0x140582bf8
mov eax, dword [rdi + 4]
mov dword [rbx + 0x90], eax
jmp 0x140582c33
mov eax, dword [rbx + 0x8c]
test al, 0x10
jne 0x140582c90
test al, 2
setne al
movzx eax, al
add eax, 5
mov dword [rbx + 0x90], eax
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x140582efc
test word [rbx + 0x8c], 0x120
je 0x140582d38
movzx edx, byte [rax]
lea ecx, [rdx - 0x28]
cmp cl, 1
jbe 0x140582c77
cmp dl, 0x7b
jne 0x140582d38
lea rdx, [rax + 1]
mov qword [rbx + 0xb0], rdx
movzx esi, byte [rax]
jmp 0x140582b6f
mov rdx, qword [rbx + 0xb0]
cmp byte [rdx], 0x3f
jne 0x140582c22
lea rax, [rdx + 1]
mov qword [rbx + 0xb0], rax
cmp rax, qword [rbx + 0xb8]
je 0x140582ee8
movzx eax, byte [rdx + 1]
cmp al, 0x3a
je 0x140582e50
cmp al, 0x3d
je 0x140582eab
cmp al, 0x21
jne 0x140582f0d
add rdx, 2
lea rcx, [rbx + 0xc8]
mov dword [rbx + 0x90], 7
mov r9d, 1
mov qword [rbx + 0xb0], rdx
xor edx, edx
mov dword [rsp + 0x20], 0x6e
mov r8, qword [rbx + 0xd0]
call fcn.140564980
jmp 0x140582c33
mov dword [rbx + 0x88], 1
mov dword [rbx + 0x90], 0xc
jmp 0x140582c33
mov rcx, qword [rbx + 0xf0]
mov rax, qword [rbx + 0xe8]
add rcx, rbx
test al, 1
je 0x140582d55
mov rdx, qword [rcx]
mov rax, qword [rdx + rax - 1]
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp rax
mov dword [rbx + 0x90], 8
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
movsx esi, sil
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 1
mov dword [rsp + 0x20], esi
mov r8, qword [rbx + 0xd0]
call fcn.140564980
nop
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov r8d, 0x20
mov rcx, rdi
call r9
movsx edx, al
jmp 0x140582b45
mov byte [rbx + 0xa8], 1
mov rax, qword [rbx + 0xb0]
mov dword [rbx + 0x88], 2
cmp rax, qword [rbx + 0xb8]
je 0x140582dfe
cmp byte [rax], 0x5e
je 0x140582e10
mov dword [rbx + 0x90], 9
jmp 0x140582c33
mov dword [rbx + 0x90], 0xa
add rax, 1
mov qword [rbx + 0xb0], rax
jmp 0x140582c33
xor r8d, r8d
movsx edx, sil
mov rcx, rbp
call rax
test al, al
je 0x140582bea
mov esi, eax
jmp 0x140582be0
mov dword [rbx + 0x90], 6
add rdx, 2
mov qword [rbx + 0xb0], rdx
jmp 0x140582c33
test byte [rbx + 0x8c], 0x10
je 0x140582ef2
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 1
mov dword [rsp + 0x20], 0
mov r8, qword [rbx + 0xd0]
call fcn.140564980
jmp 0x140582c33
add rdx, 2
lea rcx, [rbx + 0xc8]
mov dword [rbx + 0x90], 7
mov r9d, 1
mov qword [rbx + 0xb0], rdx
xor edx, edx
mov dword [rsp + 0x20], 0x70
mov r8, qword [rbx + 0xd0]
call fcn.140564980
jmp 0x140582c33
mov ecx, 5
call fcn.14059dc20
mov ecx, 0xd
call fcn.14059dc20
lea rdx, [0x1405ab448]
mov ecx, 2
call fcn.140592e90
lea rdx, [0x1405ab478]
mov ecx, 5
call fcn.140592e90
nop
nop
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rax, qword [rcx + 0xb0]
mov r8, qword [rcx + 0xb8]
mov rbx, rcx
cmp rax, r8
je 0x140583111
mov r9, qword [rbx + 0xc0]
lea rcx, [rax + 1]
mov qword [rbx + 0xb0], rcx
movzx r10d, byte [rax]
mov r9, qword [r9 + 0x30]
test byte [r9 + r10*2], 8
jne 0x140582fe0
cmp r10b, 0x2c
je 0x140582fc8
test word [rbx + 0x8c], 0x120
je 0x1405830e0
cmp r8, rcx
je 0x140583107
cmp r10b, 0x5c
jne 0x140583107
cmp byte [rax + 1], 0x7d
jne 0x140583107
mov dword [rbx + 0x88], 0
add rax, 2
mov dword [rbx + 0x90], 0xd
mov qword [rbx + 0xb0], rax
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov dword [rbx + 0x90], 0x19
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
movsx edx, r10b
lea rbp, [rbx + 0xc8]
mov dword [rbx + 0x90], 0x1a
mov r9d, 1
mov dword [rsp + 0x20], edx
mov r8, qword [rbx + 0xd0]
xor edx, edx
mov rcx, rbp
call fcn.140564980
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x140582fb8
lea r12, [rbx + 0xd8]
jmp 0x14058305b
mov byte [rax + rsi], r13b
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], rdi
mov byte [rax + rsi + 1], 0
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x140582fb8
mov rdx, qword [rbx + 0xc0]
movzx ecx, byte [rax]
mov rdx, qword [rdx + 0x30]
test byte [rdx + rcx*2], 8
je 0x140582fb8
lea rdx, [rax + 1]
mov rsi, qword [rbx + 0xd0]
mov qword [rbx + 0xb0], rdx
movzx r13d, byte [rax]
mov rax, qword [rbx + 0xc8]
lea rdi, [rsi + 1]
cmp rax, r12
je 0x1405830d0
mov rdx, qword [rbx + 0xd8]
cmp rdx, rdi
jae 0x140583030
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, rbp
mov qword [rsp + 0x20], 1
call fcn.140566e30
mov rax, qword [rbx + 0xc8]
jmp 0x140583030
mov edx, 0xf
jmp 0x1405830a0
cmp r10b, 0x7d
jne 0x140583107
mov dword [rbx + 0x88], 0
mov dword [rbx + 0x90], 0xd
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov ecx, 7
call fcn.14059dc20
mov ecx, 6
call fcn.14059dc20
nop
nop
nop
nop
nop
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rax, qword [rcx + 0xb0]
mov rdi, qword [rcx + 0xc0]
lea rdx, [rax + 1]
mov qword [rcx + 0xb0], rdx
movzx ebp, byte [rax]
mov rbx, rcx
movzx eax, byte [rdi + rbp + 0x139]
mov rsi, rbp
test al, al
jne 0x14058317e
mov rax, qword [rdi]
lea rdx, [0x1404d0dc0]
mov r9, qword [rax + 0x40]
mov eax, ebp
cmp r9, rdx
jne 0x1405833a8
test al, al
je 0x14058317e
mov byte [rdi + rbp + 0x139], al
mov rdx, qword [rbx + 0x98]
movzx ecx, byte [rdx]
test cl, cl
jne 0x14058319c
jmp 0x1405831e0
movzx ecx, byte [rdx + 2]
add rdx, 2
test cl, cl
je 0x1405831e0
cmp al, cl
jne 0x140583190
mov dword [rbx + 0x90], 1
movsx eax, byte [rdx + 1]
xor edx, edx
lea rcx, [rbx + 0xc8]
mov r9d, 1
mov dword [rsp + 0x20], eax
mov r8, qword [rbx + 0xd0]
call fcn.140564980
nop
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov rdx, qword [rbx + 0xc0]
movzx eax, sil
mov rdx, qword [rdx + 0x30]
test byte [rdx + rax*2], 8
je 0x1405833ce
lea eax, [rsi - 0x38]
cmp al, 1
jbe 0x1405833ce
movsx esi, sil
lea rdi, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rsp + 0x20], esi
mov r8, qword [rbx + 0xd0]
mov rcx, rdi
call fcn.140564980
mov rax, qword [rbx + 0xb0]
cmp qword [rbx + 0xb8], rax
je 0x14058333d
mov rcx, qword [rbx + 0xc0]
movzx r8d, byte [rax]
mov rcx, qword [rcx + 0x30]
mov rdx, r8
test byte [rcx + r8*2], 8
je 0x14058333d
sub edx, 0x38
cmp dl, 1
jbe 0x14058333d
lea rdx, [rax + 1]
mov rsi, qword [rbx + 0xd0]
lea r12, [rbx + 0xd8]
mov qword [rbx + 0xb0], rdx
movzx r13d, byte [rax]
mov rax, qword [rbx + 0xc8]
lea rbp, [rsi + 1]
cmp rax, r12
je 0x1405833ba
mov rdx, qword [rbx + 0xd8]
cmp rdx, rbp
jb 0x140583358
mov byte [rax + rsi], r13b
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], rbp
mov byte [rax + rsi + 1], 0
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x14058333d
mov rcx, qword [rbx + 0xc0]
movzx r8d, byte [rax]
mov rcx, qword [rcx + 0x30]
mov rdx, r8
test byte [rcx + r8*2], 8
je 0x14058333d
sub edx, 0x38
cmp dl, 1
jbe 0x14058333d
lea rdx, [rax + 1]
mov rsi, qword [rbx + 0xd0]
mov qword [rbx + 0xb0], rdx
movzx r13d, byte [rax]
mov rax, qword [rbx + 0xc8]
lea rbp, [rsi + 1]
cmp rax, r12
je 0x1405833c4
mov rdx, qword [rbx + 0xd8]
cmp rdx, rbp
jb 0x140583380
mov byte [rax + rsi], r13b
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], rbp
mov byte [rax + rsi + 1], 0
mov dword [rbx + 0x90], 2
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
mov qword [rsp + 0x20], 1
call fcn.140566e30
mov rax, qword [rbx + 0xc8]
jmp 0x1405832a8
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
mov qword [rsp + 0x20], 1
call fcn.140566e30
mov rax, qword [rbx + 0xc8]
jmp 0x140583326
movsx edx, bpl
xor r8d, r8d
mov rcx, rdi
call r9
jmp 0x140583173
mov edx, 0xf
jmp 0x14058329f
mov edx, 0xf
jmp 0x140583321
mov ecx, 2
call fcn.14059dc20
nop
nop
nop
nop
nop
nop
nop
nop
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rax, qword [rcx + 0xb0]
mov rbx, rcx
cmp rax, qword [rcx + 0xb8]
je 0x140583aaa
lea rdx, [rax + 1]
mov rdi, qword [rcx + 0xc0]
mov qword [rcx + 0xb0], rdx
movzx ebp, byte [rax]
movzx eax, byte [rdi + rbp + 0x139]
mov rsi, rbp
test al, al
jne 0x14058344b
mov rax, qword [rdi]
lea rdx, [0x1404d0dc0]
mov r9, qword [rax + 0x40]
mov eax, ebp
cmp r9, rdx
jne 0x140583988
test al, al
je 0x14058344b
mov byte [rdi + rbp + 0x139], al
mov rcx, qword [rbx + 0x98]
movzx edx, byte [rcx]
test dl, dl
jne 0x14058346c
jmp 0x1405834c8
movzx edx, byte [rcx + 2]
add rcx, 2
test dl, dl
je 0x1405834c8
cmp al, dl
jne 0x140583460
cmp sil, 0x62
jne 0x140583590
cmp dword [rbx + 0x88], 2
je 0x140583590
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 0x18
mov dword [rsp + 0x20], 0x70
mov r8, qword [rbx + 0xd0]
call fcn.140564980
nop
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
cmp sil, 0x62
jle 0x140583560
lea ecx, [rsi - 0x63]
cmp cl, 0x15
ja case.0x140583586.1
mov eax, 1
shl rax, cl
test eax, 0x110002
jne case.0x140583586.2
test eax, 0x240000
jne 0x1405835d0
test al, 1
je case.0x140583586.1
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x140583ab4
lea rdx, [rax + 1]
lea rcx, [rbx + 0xc8]
mov dword [rbx + 0x90], 1
mov r9d, 1
mov qword [rbx + 0xb0], rdx
movsx eax, byte [rax]
xor edx, edx
mov dword [rsp + 0x20], eax
mov r8, qword [rbx + 0xd0]
call fcn.140564980
nop
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
cmp sil, 0x41
jle case.0x140583586.1
lea eax, [rsi - 0x42]
cmp al, 0x20
ja case.0x140583586.1
lea rdx, [0x1405ab330]
movzx eax, al
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov dword [rbx + 0x90], 1
movsx edx, byte [rcx + 1]
lea rax, [rbx + 0xc8]
mov r9d, 1
mov rcx, rax
mov dword [rsp + 0x20], edx
mov r8, qword [rbx + 0xd0]
xor edx, edx
call fcn.140564980
nop
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov rax, qword [rbx + 0xc8]
xor edi, edi
cmp sil, 0x78
mov qword [rbx + 0xd0], 0
setne dil
mov byte [rax], 0
lea edi, [rdi + rdi + 2]
mov rax, qword [rbx + 0xb0]
cmp qword [rbx + 0xb8], rax
je 0x140583ac5
mov rdx, qword [rbx + 0xc0]
movzx ecx, byte [rax]
mov rdx, qword [rdx + 0x30]
test byte [rdx + rcx*2], 0x10
je 0x140583ac5
lea rdx, [rax + 1]
mov rsi, qword [rbx + 0xd0]
lea rbp, [rbx + 0xd8]
mov qword [rbx + 0xb0], rdx
movzx r13d, byte [rax]
mov rax, qword [rbx + 0xc8]
lea r12, [rsi + 1]
cmp rbp, rax
je 0x140583a58
mov rdx, qword [rbx + 0xd8]
cmp rdx, r12
jb 0x140583a04
mov byte [rax + rsi], r13b
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], r12
mov byte [rax + rsi + 1], 0
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x140583ac5
mov rdx, qword [rbx + 0xc0]
movzx ecx, byte [rax]
mov rdx, qword [rdx + 0x30]
test byte [rdx + rcx*2], 0x10
je 0x140583ac5
lea rdx, [rax + 1]
mov rsi, qword [rbx + 0xd0]
mov qword [rbx + 0xb0], rdx
movzx r13d, byte [rax]
mov rax, qword [rbx + 0xc8]
lea r12, [rsi + 1]
cmp rbp, rax
je 0x140583a8c
mov rdx, qword [rbx + 0xd8]
cmp rdx, r12
jb 0x140583a2e
mov byte [rax + rsi], r13b
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], r12
mov byte [rax + rsi + 1], 0
cmp edi, 2
je 0x1405837f7
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x140583aca
mov rdx, qword [rbx + 0xc0]
movzx ecx, byte [rax]
mov rdx, qword [rdx + 0x30]
test byte [rdx + rcx*2], 0x10
je 0x140583aca
lea rdx, [rax + 1]
mov rsi, qword [rbx + 0xd0]
mov qword [rbx + 0xb0], rdx
movzx r12d, byte [rax]
mov rax, qword [rbx + 0xc8]
lea rdi, [rsi + 1]
cmp rbp, rax
je 0x140583a96
mov rdx, qword [rbx + 0xd8]
cmp rdx, rdi
jb 0x1405839da
mov byte [rax + rsi], r12b
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], rdi
mov byte [rax + rsi + 1], 0
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x140583aca
mov rdx, qword [rbx + 0xc0]
movzx ecx, byte [rax]
mov rdx, qword [rdx + 0x30]
test byte [rdx + rcx*2], 0x10
je 0x140583aca
lea rdx, [rax + 1]
mov rsi, qword [rbx + 0xd0]
mov qword [rbx + 0xb0], rdx
movzx r12d, byte [rax]
mov rax, qword [rbx + 0xc8]
lea rdi, [rsi + 1]
cmp rax, rbp
je 0x140583aa0
mov rdx, qword [rbx + 0xd8]
cmp rdx, rdi
jb 0x140583a62
mov byte [rax + rsi], r12b
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], rdi
mov byte [rax + rsi + 1], 0
mov dword [rbx + 0x90], 3
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
mov rdx, qword [rbx + 0xc0]
mov r8, qword [rbx + 0xd0]
movsx eax, sil
mov rdx, qword [rdx + 0x30]
test byte [rdx + rsi*2], 8
je 0x1405839b3
mov dword [rsp + 0x20], eax
lea rbp, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov rcx, rbp
lea r12, [rbx + 0xd8]
call fcn.140564980
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
jne 0x14058389b
jmp 0x1405839a4
mov byte [rax + rsi], r13b
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0xd0], rdi
mov byte [rax + rsi + 1], 0
mov rax, qword [rbx + 0xb0]
cmp rax, qword [rbx + 0xb8]
je 0x1405839a4
mov rdx, qword [rbx + 0xc0]
movzx ecx, byte [rax]
mov rdx, qword [rdx + 0x30]
test byte [rdx + rcx*2], 8
je 0x1405839a4
lea rdx, [rax + 1]
mov rsi, qword [rbx + 0xd0]
mov qword [rbx + 0xb0], rdx
movzx r13d, byte [rax]
mov rax, qword [rbx + 0xc8]
lea rdi, [rsi + 1]
cmp rax, r12
je 0x14058399a
mov rdx, qword [rbx + 0xd8]
cmp rdx, rdi
jae 0x140583870
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, rbp
mov qword [rsp + 0x20], 1
call fcn.140566e30
mov rax, qword [rbx + 0xc8]
jmp 0x140583870
movsx esi, sil
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 0xe
mov dword [rsp + 0x20], esi
mov r8, qword [rbx + 0xd0]
call fcn.140564980
nop
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 0x18
mov dword [rsp + 0x20], 0x6e
mov r8, qword [rbx + 0xd0]
call fcn.140564980
nop
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
movsx edx, bpl
xor r8d, r8d
mov rcx, rdi
call r9
jmp 0x140583440
mov edx, 0xf
jmp 0x1405838e4
mov dword [rbx + 0x90], 4
jmp 0x1405835c1
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 1
mov dword [rsp + 0x20], eax
call fcn.140564980
jmp 0x1405835c1
lea rcx, [rbx + 0xc8]
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov qword [rsp + 0x20], 1
call fcn.140566e30
mov rax, qword [rbx + 0xc8]
jmp 0x140583763
lea rcx, [rbx + 0xc8]
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov qword [rsp + 0x20], 1
call fcn.140566e30
mov rax, qword [rbx + 0xc8]
jmp 0x140583660
lea rcx, [rbx + 0xc8]
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov qword [rsp + 0x20], 1
call fcn.140566e30
mov rax, qword [rbx + 0xc8]
jmp 0x1405836dd
mov edx, 0xf
jmp 0x140583657
lea rcx, [rbx + 0xc8]
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov qword [rsp + 0x20], 1
call fcn.140566e30
mov rax, qword [rbx + 0xc8]
jmp 0x1405837e0
mov edx, 0xf
jmp 0x1405836d4
mov edx, 0xf
jmp 0x14058375a
mov edx, 0xf
jmp 0x1405837d7
mov ecx, 2
call fcn.14059dc20
lea rdx, [0x1405ab2f8]
mov ecx, 2
call fcn.140592e90
cmp edi, 2
je 0x140583adb
lea rdx, [0x1405ab2b8]
mov ecx, 2
call fcn.140592e90
lea rdx, [0x1405ab280]
jmp 0x140583ad1
push rbx
sub rsp, 0x30
mov rax, qword [rcx + 0xb0]
mov rbx, rcx
mov rcx, qword [rcx + 0xb8]
cmp rax, rcx
je 0x140583ccc
lea r8, [rax + 1]
mov qword [rbx + 0xb0], r8
movsx edx, byte [rax]
cmp dl, 0x2d
je 0x140583c30
cmp dl, 0x5b
je 0x140583b80
cmp dl, 0x5d
je 0x140583be0
cmp dl, 0x5c
jne 0x140583bf8
test byte [rbx + 0x8c], 0x90
je 0x140583bf8
mov rcx, qword [rbx + 0xf0]
mov rax, qword [rbx + 0xe8]
add rcx, rbx
test al, 1
je 0x140583b67
mov rdx, qword [rcx]
mov rax, qword [rdx + rax - 1]
call rax
mov byte [rbx + 0xa8], 0
add rsp, 0x30
pop rbx
ret
cmp rcx, r8
je 0x140583cd6
movzx edx, byte [rax + 1]
cmp dl, 0x2e
je 0x140583c78
cmp dl, 0x3a
je 0x140583cc0
cmp dl, 0x3d
je 0x140583cb0
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rbx + 0x90], 1
mov dword [rsp + 0x20], 0x5b
mov r8, qword [rbx + 0xd0]
call fcn.140564980
jmp 0x140583c21
test byte [rbx + 0x8c], 0x10
jne 0x140583c50
cmp byte [rbx + 0xa8], 0
je 0x140583c50
nop word [rax + rax]
mov dword [rbx + 0x90], 1
lea rcx, [rbx + 0xc8]
mov r9d, 1
mov dword [rsp + 0x20], edx
mov r8, qword [rbx + 0xd0]
xor edx, edx
call fcn.140564980
mov byte [rbx + 0xa8], 0
add rsp, 0x30
pop rbx
ret
mov dword [rbx + 0x90], 0x1c
mov byte [rbx + 0xa8], 0
add rsp, 0x30
pop rbx
ret
mov dword [rbx + 0x90], 0xb
mov dword [rbx + 0x88], 0
mov byte [rbx + 0xa8], 0
add rsp, 0x30
pop rbx
ret
mov dword [rbx + 0x90], 0x10
lea rdx, [rax + 2]
mov rcx, rbx
mov qword [rbx + 0xb0], rdx
movsx edx, byte [rax + 1]
call fcn.1405829b0
mov byte [rbx + 0xa8], 0
add rsp, 0x30
pop rbx
ret
mov dword [rbx + 0x90], 0x11
jmp 0x140583c82
mov dword [rbx + 0x90], 0xf
jmp 0x140583c82
mov ecx, 4
call fcn.14059dc20
lea rdx, [0x1405ab4d0]
mov ecx, 4
call fcn.140592e90
nop
nop
nop
nop
nop
nop
nop
nop
nop
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x38
mov rax, qword [rcx + 0xb0]
mov rbx, rcx
cmp rax, qword [rcx + 0xb8]
je 0x140583e11
movzx ebp, byte [rax]
mov rdi, qword [rcx + 0xc0]
movsx edx, byte [rdi + rbp + 0x139]
mov rsi, rbp
test dl, dl
jne 0x140583d50
mov rax, qword [rdi]
lea rcx, [0x1404d0dc0]
movsx edx, bpl
mov r9, qword [rax + 0x40]
mov eax, ebp
cmp r9, rcx
jne 0x140583e00
test al, al
je 0x140583d50
mov byte [rdi + rbp + 0x139], al
mov rcx, qword [rbx + 0xa0]
call fcn.14042f1b8
test rax, rax
je 0x140583d66
cmp byte [rax], 0
jne 0x140583de0
mov eax, dword [rbx + 0x8c]
test al, 0x80
jne 0x140583df0
test eax, 0x120
je 0x140583e11
mov rdx, qword [rbx + 0xc0]
movzx eax, sil
mov rdx, qword [rdx + 0x30]
test byte [rdx + rax*2], 8
je 0x140583e11
cmp sil, 0x30
je 0x140583e11
mov dword [rbx + 0x90], 4
movsx esi, sil
lea rcx, [rbx + 0xc8]
mov r9d, 1
xor edx, edx
mov dword [rsp + 0x20], esi
mov r8, qword [rbx + 0xd0]
call fcn.140564980
add qword [rbx + 0xb0], 1
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov dword [rbx + 0x90], 1
jmp 0x140583da8
mov rcx, rbx
add rsp, 0x38
pop rbx
pop rsi
pop rdi
pop rbp
jmp 0x140583120
xor r8d, r8d
mov rcx, rdi
call r9
movsx edx, al
jmp 0x140583d45
mov ecx, 2
call fcn.14059dc20
nop
nop
nop
nop
nop