Function at 0x140083d10
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rsi, qword [rcx + 0x1e0]
mov rdi, rcx
call fcn.140087704
movzx ecx, word [rsi + 0x10]
mov r15d, 1
lea r12d, [r15 + 0x2d]
cmp ecx, r12d
ja 0x140084151
je 0x140084079
lea eax, [r15 + 0x16]
cmp ecx, eax
ja 0x14008401e
je 0x140083fd2
mov edx, ecx
sub edx, 5
je 0x140083e7f
sub edx, 0xe
je 0x140083e6f
sub edx, r15d
je 0x140083e7b
sub edx, r15d
je 0x140083d8c
cmp edx, r15d
jmp 0x140083e79
mov rax, qword [rsi + 0xc8]
test rax, rax
je 0x140083dcb
cmp word [rax + 0x10], 0x16
jne 0x140083dcb
mov rcx, qword [rax + 0xc0]
test rcx, rcx
je 0x140083dcb
cmp byte [rcx + 0x44], 0x42
jne 0x140083dcb
mov byte [rax + 0x44], 0x41
mov rax, qword [rsi + 0xc8]
mov rcx, qword [rax + 0xc0]
mov byte [rcx + 0x44], 0x41
mov byte [rsi + 0x44], 0x42
xor edx, edx
mov rcx, rdi
call fcn.140088ac0
test al, al
je 0x140083e7b
mov r14, qword [rdi + 0x1d8]
cmp byte [r14 + 0x39], 0
je 0x140083e54
cmp dword [rdi + 8], r15d
jne 0x140083e54
mov rax, qword [rdi]
cmp byte [rax + 8], 0
jne 0x140083e54
mov rax, qword [r14]
test rax, rax
je 0x140083e2d
mov ebx, 4
cmp word [rax + 0x10], bx
jne 0x140083e22
mov rcx, qword [rax + 0xd0]
test rcx, rcx
je 0x140083e22
mov dl, 0x3f
call fcn.14006aa9c
jmp 0x140083e29
cmp byte [rax + 0x44], 0x3f
sete al
test al, al
jne 0x140083e54
cmp byte [rsi + 0x44], 0x54
je 0x140083e54
mov rax, qword [rsi + 0xc8]
test rax, rax
je 0x140083e50
mov ecx, 0xb8
cmp word [rax + 0x10], cx
je 0x140083e54
cmp byte [rax + 0x44], 0x2f
je 0x140083e54
mov byte [r14 + 0x3a], r15b
mov al, r15b
mov rbx, qword [rsp + 0x98]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, rdi
call fcn.140089870
test al, al
jne 0x140083e54
xor al, al
jmp 0x140083e57
mov rax, qword [rdi + 0x1f0]
mov r8, qword [rax + 0x58]
mov rdx, qword [rax + 0x60]
test r8, r8
je 0x140083ea8
lea eax, [rcx - 7]
cmp ax, 0xb
jbe 0x140083ea8
cmp cx, r15w
je 0x140083ea8
cmp r8, qword [rsi + 8]
je 0x140083ec2
test rdx, rdx
je 0x140083eca
lea eax, [rcx - 7]
cmp ax, 0xb
jbe 0x140083eca
cmp cx, r15w
je 0x140083eca
cmp rdx, qword [rsi + 8]
jne 0x140083eca
mov rcx, rdi
call fcn.14008855c
mov rax, qword [rdi + 0x1d0]
cmp byte [rax + 0x1e3], 2
jne 0x140083e54
mov rax, qword [rdi + 0x1f0]
mov rcx, qword [rax + 0x280]
test rcx, rcx
je 0x140083e54
movzx eax, word [rsi + 0x10]
sub ax, 7
cmp ax, 0xb
jbe 0x140083e54
cmp word [rsi + 0x10], r15w
je 0x140083e54
cmp rcx, qword [rsi + 8]
jne 0x140083e54
mov rax, qword [rsi + 0xd0]
test rax, rax
je 0x140083e54
cmp word [rax + 0x10], 0x15
je 0x140083e54
mov byte [rsi + 0x44], 0x5c
xor ebx, ebx
mov rcx, qword [rdi + 0x1e0]
test rcx, rcx
je 0x140083e54
lea ebp, [rbx + 0x33]
movzx edx, word [rcx + 0x10]
cmp dx, r12w
jne 0x140083f63
mov byte [rcx + 0x44], 0x4e
add ebx, r15d
jmp 0x140083fb9
cmp dx, bp
jne 0x140083f71
mov byte [rcx + 0x44], 0x4d
sub ebx, r15d
jmp 0x140083fb9
cmp dx, 0x41
jne 0x140083f81
test ebx, ebx
jne 0x140083f81
mov byte [rcx + 0x44], 0x5e
jmp 0x140083fb9
mov rax, qword [rdi + 0x1f0]
mov r8, qword [rax + 0x280]
test r8, r8
je 0x140083faf
lea eax, [rdx - 7]
cmp ax, 0xb
jbe 0x140083fb9
cmp dx, r15w
je 0x140083fb9
cmp r8, qword [rcx + 8]
jne 0x140083faf
mov byte [rcx + 0x44], 0x5c
jmp 0x140083fb9
cmp dx, 0x3d
jne 0x140083fb9
mov byte [rcx + 0x44], 0x5d
mov rcx, rdi
call fcn.140087704
mov rcx, qword [rdi + 0x1e0]
test rcx, rcx
jne 0x140083f50
jmp 0x140083e54
mov rax, qword [rdi + 0x1d0]
cmp byte [rax + 0x1e3], 9
jne 0x140084011
mov rax, qword [rsi + 0xc8]
test rax, rax
je 0x140084011
mov ebx, 4
cmp word [rax + 0x10], bx
jne 0x140084007
mov rax, qword [rax + 0xc8]
test rax, rax
jne 0x140083ff3
jmp 0x140084011
cmp byte [rax + 0x44], 0x13
je 0x140084011
mov byte [rax + 0x44], 0x48
mov rcx, rdi
call fcn.140088034
jmp 0x140083e77
cmp ecx, 0x18
je 0x140084066
mov ebx, 0x1b
cmp ecx, ebx
je 0x1400847b0
cmp ecx, 0x20
je 0x14008403e
cmp ecx, 0x23
jne 0x140083e54
cmp qword [rsi + 0xc8], 0
jne 0x140083e54
mov rax, qword [rdi + 0x1d8]
cmp byte [rax + 0x39], 0
je 0x140083e54
mov byte [rsi + 0x44], 0x3e
jmp 0x140083e54
cmp qword [rsi + 0xc8], 0
jne 0x140083e7b
jmp 0x140083e54
mov rcx, rdi
call fcn.140087c48
test al, al
je 0x14008410a
mov byte [rsi + 0x44], 0x4e
mov rax, qword [rdi + 0x1d0]
mov cl, byte [rax + 0x1e3]
cmp cl, 9
je 0x1400840c7
cmp cl, 7
jne 0x140083e54
mov rax, qword [rsi + 0xc8]
test rax, rax
je 0x140083e54
mov al, byte [rax + 0x44]
cmp al, 0x48
je 0x1400840c7
cmp al, 0x13
jne 0x140083e54
mov rax, qword [rsi + 0xc8]
mov byte [rsi + 0x44], 0x13
test rax, rax
je 0x140083e54
mov ebx, 4
cmp word [rax + 0x10], bx
jne 0x1400840f7
mov rax, qword [rax + 0xc8]
test rax, rax
jne 0x1400840e0
jmp 0x140083e54
cmp byte [rax + 0x44], 0x13
je 0x140083e54
mov byte [rax + 0x44], 0x48
jmp 0x140083e54
lea rbx, [rdi + 0x1f8]
mov r14d, 6
mov rcx, rbx
mov byte [rsi + 0x44], r14b
mov r8, rsi
lea rdx, [rsp + 0x20]
call fcn.140017f38
mov r8, qword [rsp + 0x20]
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.14001806c
mov rcx, rdi
mov qword [rdi + 0x1e0], rsi
call fcn.140087704
jmp 0x140083e54
mov r8d, 0x59
cmp ecx, r8d
ja 0x140084906
je 0x140084823
lea r9d, [r8 - 0x26]
sub ecx, r9d
je 0x1400847e6
lea r14d, [r8 - 0x53]
sub ecx, r14d
je 0x1400847b0
sub ecx, 3
je 0x1400846b1
sub ecx, r15d
je 0x140084239
lea ebx, [r8 - 0x55]
cmp ecx, ebx
jne 0x140083e54
mov edx, dword [rdi + 8]
mov rcx, qword [rdi]
imul rax, rdx, 0x38
cmp byte [rax + rcx - 0xe], 0
je 0x1400841b5
mov byte [rsi + 0x44], 0x10
jmp 0x14008421a
cmp byte [rax + rcx - 0xd], 0
je 0x1400841c2
mov byte [rsi + 0x44], 0x1e
jmp 0x14008421a
mov rsi, qword [rax + rcx - 0x18]
test rsi, rsi
je 0x14008421a
cmp edx, r15d
je 0x14008420a
mov rax, qword [rdi + 0x1d8]
mov rcx, qword [rax]
test rcx, rcx
je 0x14008421a
movzx eax, word [rcx + 0x10]
cmp ax, bx
jne 0x1400841ff
mov rcx, qword [rcx + 0xd0]
test rcx, rcx
je 0x1400841ff
mov edx, r8d
call fcn.14006aa04
jmp 0x140084206
cmp ax, r8w
sete al
test al, al
je 0x14008421a
bts dword [rsi + 0x40], 9
mov rax, qword [rdi + 0x1d8]
mov byte [rax + 0x3b], r15b
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
cmp byte [rcx + rax - 0xb], 0
je 0x140083e54
mov byte [rcx + rax - 0x30], r15b
jmp 0x140083e54
mov rbp, qword [rsi + 0xc8]
test rbp, rbp
je 0x140083e7b
mov rax, qword [rdi + 0x1d0]
mov ebx, 4
mov al, byte [rax + 0x1e3]
mov byte [rsp + 0x80], al
cmp al, bl
jne 0x1400842e4
mov r9d, dword [rdi + 8]
mov r8, qword [rdi]
imul rdx, r9, 0x38
cmp byte [rdx + r8 - 0x28], 0
jne 0x1400842d5
cmp r9d, r15d
jne 0x14008429a
mov rax, qword [rdi + 0x1d8]
mov rcx, qword [rax]
movzx eax, word [rcx + 0x10]
mov ecx, 0xfff7
sub ax, 0x4e
test cx, ax
jne 0x1400842d5
movzx eax, word [rdx + r8 - 0x38]
mov ecx, 0xfffd
sub ax, 0x13
test cx, ax
je 0x1400842d5
cmp byte [rdx + r8 - 0x30], 0
jne 0x1400842c3
mov eax, 0x17
cmp word [rdx + r8 - 0x38], ax
je 0x1400842d5
cmp r9d, r15d
jne 0x140084313
mov rax, qword [rdi + 0x1d8]
cmp byte [rax + 0x39], 0
je 0x140084313
mov byte [rdx + r8 - 0x30], 0
mov byte [rsi + 0x44], 0x28
jmp 0x140083e54
cmp al, 2
jne 0x140084313
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
cmp byte [rcx + rax - 9], 0
je 0x140084302
mov byte [rsi + 0x44], 2
jmp 0x140083e54
cmp word [rcx + rax - 0x38], 0x15
jne 0x140084313
mov byte [rsi + 0x44], r8b
jmp 0x140083e54
mov rax, qword [rdi + 0x1f0]
mov rdx, qword [rax + 0xa8]
mov r8, qword [rax + 0xc8]
mov rax, qword [rdi + 0x1d8]
mov qword [rsp + 0x88], rdx
mov r13, qword [rax]
mov qword [rsp + 0x90], r13
lea r12, [r13 + 0x10]
test r8, r8
je 0x14008436b
movzx eax, word [r12]
sub ax, 7
cmp ax, 0xb
jbe 0x14008436b
cmp word [r12], r15w
je 0x14008436b
cmp r8, qword [r13 + 8]
je 0x1400846a3
test rdx, rdx
je 0x14008439d
movzx eax, word [r12]
cmp ax, 0xf
je 0x14008439d
cmp ax, r14w
jbe 0x140084387
cmp ax, 0x13
jb 0x14008439d
cmp ax, 0xf
je 0x14008439d
cmp ax, r15w
je 0x14008439d
cmp rdx, qword [r13 + 8]
je 0x1400846a3
mov r14d, 0x85
mov rcx, r13
mov edx, r14d
call fcn.140082048
test al, al
jne 0x1400846a3
mov r8, qword [rsp + 0x88]
mov edx, r14d
mov rcx, r13
call fcn.140082048
test al, al
jne 0x1400846a3
mov ecx, dword [rdi + 8]
mov r13, qword [rdi]
imul r14, rcx, 0x38
cmp byte [r14 + r13 - 0x27], al
jne 0x14008466b
mov al, byte [rsp + 0x80]
sub al, 7
test al, 0xfd
je 0x14008466b
cmp byte [r14 + r13 - 0x26], 0
jne 0x140084565
mov rax, qword [rsp + 0x90]
test rax, rax
je 0x14008443e
cmp word [r12], bx
jne 0x14008442c
mov rcx, qword [rax + 0xd0]
test rcx, rcx
je 0x14008442c
mov dl, 0x3e
call fcn.14006aa9c
jmp 0x140084433
cmp byte [rax + 0x44], 0x3e
sete al
test al, al
jne 0x140084565
mov ecx, dword [rdi + 8]
cmp byte [r14 + r13 - 0x28], 0
je 0x14008444f
mov byte [rsi + 0x44], 0x45
jmp 0x140083e54
mov rax, qword [rdi + 0x1e0]
test rax, rax
je 0x14008446b
cmp word [rax + 0x10], 7
jne 0x14008446b
mov byte [rsi + 0x44], 7
jmp 0x140083e54
cmp ecx, r15d
jne 0x140084504
movzx eax, word [r12]
mov ecx, 0xfff3
sub ax, 0x4e
test cx, ax
jne 0x14008448f
cmp word [r12], 0x5a
jne 0x140084504
cmp word [rbp + 0x10], bx
jne 0x1400844a6
mov rbp, qword [rbp + 0xc8]
test rbp, rbp
jne 0x14008448f
jmp 0x140083e54
cmp word [rbp + 0x10], 0x16
je 0x1400844f2
mov ecx, 0xa1
cmp word [rbp + 0x10], cx
je 0x1400844f2
lea eax, [rcx - 0xc]
cmp word [rbp + 0x10], ax
jne 0x1400844fb
mov rax, qword [rbp + 0xc8]
jmp 0x1400844d7
cmp word [rax + 0x10], bx
jne 0x1400844e1
mov rax, qword [rax + 0xc8]
test rax, rax
jne 0x1400844ca
jmp 0x140083e54
cmp word [rax + 0x10], 0x16
je 0x1400844f2
cmp word [rax + 0x10], cx
jne 0x140083e54
mov byte [rsi + 0x44], 0xf
jmp 0x140083e54
mov byte [rsi + 0x44], 0x1d
jmp 0x140083e54
mov rcx, rbp
call fcn.14008303c
test al, al
je 0x14008454f
mov rcx, qword [rsi + 0xd0]
test rcx, rcx
je 0x14008454f
cmp word [rcx + 0x10], 0x16
je 0x140084546
cmp word [rcx + 0x10], 0x41
je 0x140084546
call fcn.14008303c
test al, al
je 0x14008454f
mov rax, qword [rcx + 0xd0]
test rax, rax
je 0x14008454f
cmp word [rax + 0x10], 0x3d
jne 0x14008454f
mov byte [rsi + 0x44], 0x3d
jmp 0x140083e54
cmp word [r14 + r13 - 0x38], 0x15
jne 0x140083e54
mov byte [rsi + 0x44], 0x20
jmp 0x140083e54
mov byte [rsi + 0x44], 0x3d
mov rax, qword [rdi + 0x1d8]
mov r14, qword [rbp + 0xc8]
mov rdx, qword [rax]
test rdx, rdx
je 0x1400845bb
cmp word [rdx + 0x10], bx
jne 0x14008459a
mov rcx, qword [rdx + 0xd0]
test rcx, rcx
je 0x14008459a
mov dl, 0x3e
call fcn.14006aa9c
jmp 0x1400845a1
cmp byte [rdx + 0x44], 0x3e
sete al
test al, al
je 0x1400845bb
mov eax, 5
cmp word [rbp + 0x10], ax
jne 0x1400845bb
cmp byte [rbp + 0x44], 0x5f
jne 0x1400845bb
mov dl, r15b
jmp 0x1400845bd
xor dl, dl
test r14, r14
je 0x1400845fd
mov al, byte [r14 + 0x44]
cmp al, 9
je 0x1400845d8
cmp al, 0x3d
jne 0x1400845fd
cmp word [r14 + 0x10], 0x3d
jne 0x1400845fd
jmp 0x1400845e4
mov eax, 0x14
cmp word [r14 + 0x10], ax
je 0x1400845fd
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
cmp dword [rcx + rax - 0x2c], 0
je 0x1400845fd
test dl, dl
je 0x140083e54
mov byte [rbp + 0x44], 0x48
mov eax, dword [rdi + 8]
mov rdx, qword [rsi + 0xc8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
cmp qword [rcx + rax - 0x20], 0
jne 0x140084621
mov qword [rcx + rax - 0x20], rdx
jmp 0x14008462e
mov edx, dword [rdx + 0x50]
cmp edx, dword [rcx + rax - 0x2c]
jbe 0x14008462e
mov dword [rcx + rax - 0x2c], edx
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
mov rdx, qword [rcx + rax - 0x20]
mov rcx, qword [rsi + 0xc8]
mov eax, dword [rdx + 0x88]
mov dword [rcx + 0x8c], eax
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
mov rdx, qword [rcx + rax - 0x20]
add dword [rdx + 0x88], r15d
jmp 0x140083e54
mov byte [rsi + 0x44], 0x13
mov rax, qword [rdi + 0x1d0]
cmp byte [rax + 0x1e3], 9
jne 0x140083e54
cmp word [rbp + 0x10], bx
jne 0x14008469a
mov rbp, qword [rbp + 0xc8]
test rbp, rbp
jne 0x140084683
jmp 0x140083e54
mov byte [rbp + 0x44], 0x48
jmp 0x140083e54
mov ebp, 0x33
mov byte [rsi + 0x44], bpl
jmp 0x140083e54
mov rax, qword [rdi + 0x1d0]
mov ebx, 4
mov dl, byte [rax + 0x1e3]
cmp dl, bl
jne 0x1400846fa
mov rax, qword [rsi + 0xd0]
test rax, rax
je 0x1400846fa
movzx eax, word [rax + 0x10]
sub ax, 0x16
cmp ax, 0x2b
ja 0x1400846fa
movabs rcx, 0x98000000005
bt rcx, rax
jae 0x1400846fa
mov byte [rsi + 0x44], 0x2a
jmp 0x140083e54
mov rax, qword [rdi + 0x1d8]
mov r8b, byte [rax + 0x39]
test r8b, r8b
je 0x140084723
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
cmp byte [rcx + rax - 0x30], 0
jne 0x140084723
cmp dl, bl
je 0x140083e54
cmp dl, 2
jne 0x140084796
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
cmp byte [rcx + rax - 0x30], 0
jne 0x14008473e
test r8b, r8b
jne 0x140084776
mov rcx, qword [rsi + 0xd0]
test rcx, rcx
je 0x140084796
cmp word [rcx + 0x10], 0x16
je 0x140084776
cmp word [rcx + 0x10], r9w
je 0x140084776
mov eax, 5
cmp word [rcx + 0x10], ax
jne 0x140084796
mov rax, qword [rcx + 0xd0]
test rax, rax
je 0x140084796
cmp word [rax + 0x10], 0x3f
jne 0x140084796
mov byte [rsi + 0x44], 0x5a
jmp 0x140083e54
cmp word [rax + 0x10], 0x3d
mov rcx, rdi
je 0x1400847a7
call fcn.140083d10
test al, al
je 0x140083e54
mov rax, qword [rdi + 0x1e0]
test rax, rax
jne 0x14008477f
jmp 0x140083e54
mov byte [rax + 0x44], 0xa
jmp 0x140084147
mov rax, qword [rdi + 0x1d0]
mov ebx, 4
cmp byte [rax + 0x1e3], bl
jne 0x140083e54
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
cmp byte [rcx + rax - 0x30], 0
jne 0x140083e54
mov byte [rsi + 0x44], 0x29
jmp 0x140083e54
mov rax, qword [rdi + 0x1d0]
cmp byte [rax + 0x1e3], 9
je 0x140084800
mov r14d, 6
mov byte [rsi + 0x44], r14b
mov rax, qword [rsi + 0xc8]
test rax, rax
je 0x140083e54
cmp byte [rax + 0x44], 0x4d
jne 0x140083e54
mov dword [rsi + 0x58], r15d
jmp 0x140083e54
mov rax, qword [rdi + 0x1d0]
mov ebx, 4
cmp byte [rax + 0x1e3], bl
jne 0x1400848a4
mov rax, qword [rsi + 0xc8]
test rax, rax
je 0x14008484e
cmp word [rax + 0x10], 0x19
je 0x140083e54
mov rax, qword [rsi + 0xd0]
test rax, rax
je 0x140084865
cmp word [rax + 0x10], 0x3d
je 0x140083e54
mov rcx, qword [rdi + 0x1e0]
test rcx, rcx
je 0x1400848a4
mov rax, qword [rdi + 0x1f0]
mov rdx, qword [rax + 0x78]
test rdx, rdx
je 0x1400848a4
movzx eax, word [rcx + 0x10]
sub ax, 7
cmp ax, 0xb
jbe 0x1400848a4
cmp word [rcx + 0x10], r15w
je 0x1400848a4
cmp rdx, qword [rcx + 8]
jne 0x1400848a4
mov rcx, rdi
call fcn.140087704
mov rax, qword [rdi + 0x1d0]
mov cl, byte [rax + 0x1e3]
cmp cl, r15b
je 0x1400848c1
mov r14d, 6
cmp cl, r14b
jne 0x1400848e0
mov rax, qword [rdi + 0x1e0]
test rax, rax
je 0x1400848e0
mov ecx, 0xa7
cmp word [rax + 0x10], cx
jne 0x1400848e0
mov rcx, rdi
call fcn.140087704
mov eax, dword [rdi + 8]
imul rcx, rax, 0x38
mov rax, qword [rdi]
mov byte [rcx + rax - 0x28], r15b
mov rcx, rdi
call fcn.140087704
xor edx, edx
mov rcx, rdi
call fcn.140088ac0
jmp 0x140083e77
mov edx, ecx
mov r8d, 0x5b
sub edx, r8d
je 0x140084a9d
sub edx, 0x14
je 0x140084a9d
sub edx, 0x1c
je 0x140084989
lea r14d, [r8 - 0x55]
cmp edx, r14d
jne 0x140083e54
mov rax, qword [rdi + 0x1e0]
test rax, rax
je 0x140083e54
cmp word [rax + 0x10], r12w
jne 0x140083e54
mov rcx, rdi
mov byte [rax + 0x44], 0x4e
call fcn.140087704
mov rcx, rdi
call fcn.140087c48
test al, al
je 0x140083e54
mov rax, qword [rdi + 0x1e0]
test rax, rax
je 0x140083e54
mov rax, qword [rax + 0xc8]
or dword [rax + 0x40], 0x40
jmp 0x140083e54
mov rax, qword [rdi + 0x1d0]
mov cl, byte [rax + 0x1e3]
sub cl, 7
test cl, 0xfd
je 0x140083e54
mov rcx, qword [rdi + 0x1e0]
mov r14d, 6
test rcx, rcx
je 0x140084a73
mov r8, rcx
lea ebx, [r14 + 0x15]
movzx edx, word [r8 + 0x10]
mov rcx, r8
lea eax, [rdx - 0x15]
cmp ax, r15w
jbe 0x140084a63
cmp dx, 0x3e
je 0x140084a63
cmp dx, 0x1e
je 0x1400849e9
cmp dx, bx
jne 0x1400849ee
mov byte [r8 + 0x44], 0x43
mov rcx, rdi
call fcn.140083d10
mov rcx, qword [rdi + 0x1e0]
test rcx, rcx
je 0x140084a50
cmp word [rcx + 0x10], 0x41
lea rdx, [rcx + 0xc8]
jne 0x140084a20
mov rax, qword [rdx]
mov r8d, 0x8b
cmp word [rax + 0x10], r8w
jne 0x140084a68
mov rcx, qword [rdx]
cmp byte [rcx + 0x44], r14b
je 0x140084a4c
cmp byte [rcx + 0x44], 0x56
je 0x140084a4c
movzx eax, word [rcx + 0x10]
sub ax, bx
cmp ax, 0x26
ja 0x140084a50
movabs rdx, 0x400000020b
bt rdx, rax
jae 0x140084a50
mov byte [rcx + 0x44], 0x41
mov rcx, qword [rdi + 0x1e0]
mov r8, rcx
test rcx, rcx
jne 0x1400849bf
test rcx, rcx
je 0x140084a73
cmp word [rcx + 0x10], 0x15
jne 0x140084a73
mov byte [rcx + 0x44], 0x42
mov rax, qword [rdi + 0x1e0]
test rax, rax
je 0x140083e54
mov rax, qword [rax + 0xc8]
cmp byte [rax + 0x44], r14b
jne 0x140083e54
mov byte [rax + 0x44], 0x41
jmp 0x140083e54
cmp cx, r8w
jne 0x140084acf
mov rax, qword [rdi + 0x1e0]
test rax, rax
je 0x140084acf
movzx ecx, word [rax + 0x10]
mov eax, 0x9f
cmp cx, ax
je 0x140084ac7
mov eax, 5
cmp cx, ax
jne 0x140084acf
mov rcx, rdi
call fcn.140087704
mov rax, qword [rdi + 0x1e0]
test rax, rax
je 0x140083e54
cmp word [rax + 0x10], 0x15
jne 0x140083e54
mov rcx, rdi
call fcn.140087704
mov edx, r15d
mov rcx, rdi
call fcn.140088ac0
test al, al
setne al
jmp 0x140083e57