Function at 0x140072030
Capabilities:
Check for software breakpoints
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
mov rsi, r9
mov rdi, r8
mov r12, rdx
mov r13, rcx
mov rcx, qword [rsp + 0x188]
mov rbx, qword [0x1400f7448]
mov rax, qword [rbx]
xor rax, rsp
mov qword [rsp + 0x110], rax
mov qword [rcx], 0
cmp qword [r9], 0
je 0x1400720a3
cmp qword [rsi + 0x10], 0
je 0x1400737d4
cmp qword [rsi + 0x18], 0
je 0x1400737d4
cmp dword [rsi + 8], 0
je 0x1400737d4
cmp byte [rsi + 0x2c], 0
je 0x1400737d4
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rbp, [rsi + 0x20]
mov ecx, dword [rsi + 0x20]
lea edx, [rcx + 8]
cmp qword [rsi], 0
je 0x1400720c7
cmp edx, dword [rsi + 0x28]
jbe 0x1400720cc
mov byte [rsi + 0x2c], 0
jmp 0x1400720de
mov dword [rbp], edx
jmp 0x140072108
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x140072108
cmp qword [rsi + 0x10], 0
je 0x1400737d4
cmp qword [rsi + 0x18], 0
je 0x1400737d4
cmp dword [rsi + 8], 0
je 0x1400737d4
cmp byte [rsi + 0x2c], 0
je 0x1400737d4
mov ecx, dword [r12 + 0x10]
add rcx, qword [r12 + 8]
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [rsi + 0x20]
lea edx, [rcx + 8]
cmp qword [rsi], 0
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rdi
je 0x140072139
cmp edx, dword [rsi + 0x28]
jbe 0x14007213e
mov byte [rsi + 0x2c], 0
jmp 0x140072150
mov dword [rbp], edx
jmp 0x14007217a
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x14007217a
cmp qword [rsi + 0x10], 0
je 0x1400737ba
cmp qword [rsi + 0x18], 0
je 0x1400737ba
cmp dword [rsi + 8], 0
je 0x1400737ba
cmp byte [rsi + 0x2c], 0
je 0x1400737ba
mov r9, qword [rsp + 0x180]
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rdx, rsi
mov r8, r12
call fcn.140074970
test al, al
jne 0x1400737ba
mov eax, dword [rsi + 0x20]
mov dword [rsi + 0x24], eax
cmp byte [r13 + 0x14], 0
je 0x140073833
lea r11, [r12 + 8]
lea r14, [r12 + 0x10]
mov eax, dword [r13 + 0x10]
and eax, 2
mov r10d, eax
shr r10d, 1
xor ecx, ecx
test eax, eax
sete cl
lea r8d, [rcx + rcx*2]
add r8d, 0xa
mov ecx, dword [r14]
cmp ecx, r8d
jae 0x1400736a4
lea rax, [rsi + 0x28]
mov qword [rsp + 0x38], rax
lea rax, [rsi + 0x2c]
mov qword [rsp + 0x30], rax
mov edi, r8d
xor r15d, r15d
mov rdx, qword [r11]
mov eax, ecx
mov rcx, rax
jmp 0x140072220
add rcx, 1
mov dword [r14], ecx
cmp rcx, rdi
jae 0x1400736a7
test r15b, 1
je 0x140072239
movzx ebx, byte [rdx + rcx]
cmp bl, 0xcc
je 0x140072210
cmp bl, 0x90
je 0x140072210
jmp 0x140073758
movzx ecx, byte [rdx + rax]
cmp rcx, 0xf
mov dword [rsp + 0x5c], r8d
mov qword [rsp + 0x60], rdi
jne 0x140072277
mov ecx, dword [rsi + 0x20]
lea ebp, [rcx + 1]
cmp qword [rsi], 0
je 0x140072348
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe 0x1400723ef
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
jmp 0x1400723fe
cmp cl, 0x88
jb 0x1400722dd
cmp cl, 0x8b
ja 0x140072354
mov ecx, dword [rsi + 0x20]
lea ebp, [rcx + 1]
cmp qword [rsi], 0
je 0x140072681
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe case.default.0x1400722db
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007392c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
lea ebp, [rcx - 0x40]
cmp bpl, 2
jb 0x1400724ac
cmp cl, 0x44
je 0x140072657
cmp cl, 0x45
jne 0x140072354
add rdx, rax
mov rcx, rsi
mov r8d, 1
mov edi, r10d
mov rbx, r11
call fcn.140074c50
mov rcx, rbx
mov eax, dword [r14]
add eax, 1
mov dword [r14], eax
mov rdx, qword [rbx]
cmp byte [rdx + rax], 0x33
jne 0x1400737ba
add rdx, rax
mov rcx, rsi
mov r8d, 2
call fcn.140074c50
mov r11, rbx
mov r10d, edi
add dword [r14], 2
jmp 0x140072e42
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
jmp 0x1400723fe
mov ebx, ecx
and bl, 0xfa
cmp bl, 0x48
jne 0x140072562
mov dword [rsp + 0x2c], r10d
add rdx, rax
mov rcx, rsi
mov r8d, 1
mov qword [rsp + 0x40], r11
call fcn.140074c50
mov rdi, qword [rsp + 0x40]
mov r9d, dword [r14]
lea eax, [r9 + 1]
mov dword [r14], eax
mov rdx, qword [rdi]
mov bl, byte [rdx + rax]
cmp bl, 0x84
jg 0x1400726bb
cmp bl, 0x81
je 0x14007298e
cmp bl, 0x83
jne 0x1400729c2
mov cl, byte [rdx + rax + 1]
and cl, 0xf8
cmp cl, 0xc0
je 0x1400723cb
cmp cl, 0x60
je 0x140072c3b
cmp cl, 0xe8
jne 0x1400737ba
add rdx, rax
mov rcx, rsi
mov r8d, 3
call fcn.140074c50
mov r11, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x2c]
add dword [r14], 3
jmp 0x140072e42
mov rbp, qword [rsi + 0x10]
mov al, byte [rdx + rax]
mov byte [rbp + rcx], al
add dword [rsi + 0x20], 1
mov edx, dword [r14]
lea eax, [rdx + 1]
mov dword [r14], eax
mov rcx, qword [r11]
mov bpl, byte [rcx + rax]
lea ebx, [rbp - 0x10]
cmp bl, 2
jb 0x140072454
cmp bpl, 5
je 0x1400724d6
cmp bpl, 0x1f
jne 0x1400724ff
mov edx, dword [rsi + 0x20]
lea ebp, [rdx + 1]
cmp qword [rsi], 0
je 0x1400727d9
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe 0x1400727eb
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
jmp 0x1400727fa
mov edx, dword [rsi + 0x20]
lea ebp, [rdx + 1]
cmp qword [rsi], 0
je 0x1400725db
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe case.default.0x1400724aa
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007393c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov ecx, dword [rsi + 0x20]
lea ebp, [rcx + 1]
cmp qword [rsi], 0
je 0x1400727e2
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe 0x14007284f
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
jmp 0x14007285e
mov edx, dword [rsi + 0x20]
lea ebp, [rdx + 1]
cmp qword [rsi], 0
je 0x1400728a1
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
ja 0x140072890
mov rbp, qword [rsi + 0x10]
mov al, byte [rcx + rax]
jmp 0x140072aef
movzx eax, bpl
lea ecx, [rax + 0x7d]
cmp cl, 2
ja 0x1400737ba
add edx, 2
mov dword [r14], edx
add dword [rsi + 0x20], 0xffffffff
lea rcx, [0x1400febc4]
mov r8d, dword [rcx + rax*4 - 0x20c]
mov eax, dword [r14]
mov rcx, qword [r11]
lea rdx, [rcx + rax]
movsxd rcx, dword [rcx + rax]
lea rdx, [rcx + rdx + 4]
add eax, 4
mov dword [r14], eax
mov rcx, rsi
mov edi, r10d
mov rbx, r11
call fcn.140074d30
mov r11, rbx
mov r10d, edi
test al, al
jne 0x140072e42
jmp 0x1400737ba
cmp cl, 0x66
jne 0x1400726f8
mov edi, r10d
add rdx, rax
mov rcx, rsi
mov r8d, 1
mov rbx, r11
call fcn.140074c50
mov r11, rbx
mov eax, dword [r14]
add eax, 1
mov dword [r14], eax
mov rdx, qword [rbx]
mov cl, byte [rdx + rax]
cmp cl, 0x88
jb 0x14007290d
cmp cl, 0x8b
ja 0x140072c01
movzx ebp, byte [rdx + rax + 1]
mov ecx, ebp
and cl, 0xc0
cmp cl, 0xc0
je 0x140072328
cmp cl, 0x40
je 0x140072d1f
test cl, cl
jne 0x1400737ba
and ebp, 6
cmp ebp, 4
jne 0x140072328
jmp 0x1400737ba
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007393c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov rbp, qword [rsi + 0x10]
mov al, byte [rcx + rax]
mov byte [rbp + rdx], al
add dword [rsi + 0x20], 1
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007393c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov ecx, dword [rsi + 0x20]
lea ebp, [rcx + 1]
cmp qword [rsi], 0
je 0x140072972
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe 0x140072a35
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
jmp 0x140072a44
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007392c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
cmp bl, 0x85
je 0x1400726c9
cmp bl, 0x2b
jne 0x1400729c2
cmp byte [rdx + rax + 1], 0xc0
jb 0x1400737ba
add rdx, rax
mov rcx, rsi
mov r8d, 2
call fcn.140074c50
mov r11, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x2c]
add dword [r14], 2
jmp 0x140072e42
mov rdi, r11
mov dword [rsp + 0x2c], r10d
mov ebx, ecx
and bl, 0xf0
cmp bl, 0x50
je case.0x140072de9.0
cmp cl, 0x80
je 0x140072c5f
cmp cl, 0x90
je case.0x140072de9.0
cmp cl, 0x65
jne 0x140072cad
cmp byte [rdx + rax + 1], 0x48
jne 0x1400737ba
mov cl, byte [rdx + rax + 2]
and cl, 0xfc
cmp cl, 0x88
jne 0x1400737ba
add rdx, rax
mov rcx, rsi
mov r8d, 3
call fcn.140074c50
add dword [r12 + 0x10], 3
mov rcx, r13
mov rdx, r12
xor r8d, r8d
call fcn.140074c90
test eax, eax
js 0x1400737ba
mov rcx, rdi
mov ebx, eax
mov edx, dword [r14]
add rdx, qword [rdi]
mov rcx, rsi
mov r8d, ebx
call fcn.140074c50
mov r11, rdi
mov r10d, dword [rsp + 0x2c]
add dword [r14], ebx
jmp 0x140072e42
mov rbp, qword [rsi + 0x10]
mov al, byte [rdx + rax]
mov byte [rbp + rcx], al
add dword [rsi + 0x20], 1
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007392c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
jmp 0x1400727fa
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
jmp 0x14007285e
mov rbp, qword [rsi + 0x10]
mov al, byte [rcx + rax]
mov byte [rbp + rdx], al
add dword [rsi + 0x20], 1
mov ecx, dword [r14]
add ecx, 1
mov dword [r14], ecx
mov rax, qword [r11]
mov dl, byte [rax + rcx]
and dl, 0xc7
cmp dl, 0x44
jne 0x1400737ba
mov edx, dword [rsi + 0x20]
lea ebp, [rdx + 3]
cmp qword [rsi], 0
je 0x14007283f
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe 0x1400728eb
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
add dword [r14], 3
jmp 0x140072e42
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
add dword [r14], 3
jmp 0x140072e42
mov rbp, qword [rsi + 0x10]
mov al, byte [rdx + rax]
mov byte [rbp + rcx], al
add dword [rsi + 0x20], 1
mov ecx, dword [r14]
add ecx, 1
mov dword [r14], ecx
mov rax, qword [r11]
mov bl, byte [rax + rcx]
mov edx, ebx
and dl, 0xf0
cmp dl, 0x50
jne 0x1400728b1
mov edx, dword [rsi + 0x20]
lea ebp, [rdx + 1]
cmp qword [rsi], 0
je 0x1400728a1
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe 0x140072ae8
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
add dword [r14], 1
jmp 0x140072e42
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
add dword [r14], 1
jmp 0x140072e42
and bl, 0xf8
cmp bl, 0xb8
jne 0x1400737ba
mov edx, dword [rsi + 0x20]
lea ebp, [rdx + 5]
cmp qword [rsi], 0
je 0x14007297e
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe 0x140072b00
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
add dword [r14], 5
jmp 0x140072e42
add rax, rcx
mov rcx, qword [rsi + 0x10]
mov bl, byte [rax + 2]
mov byte [rcx + rdx + 2], bl
movzx eax, word [rax]
mov word [rcx + rdx], ax
add dword [rsi + 0x20], 3
add dword [r14], 3
jmp 0x140072e42
cmp cl, 0x44
mov r10d, edi
jne 0x140072e42
cmp byte [rdx + rax + 1], 0x89
jne 0x140072e42
add rdx, rax
mov rcx, rsi
mov r8d, 2
call fcn.140074c50
add dword [r12 + 0x10], 2
mov rcx, r13
mov rdx, r12
xor r8d, r8d
call fcn.140074c90
test eax, eax
js 0x1400737ba
mov ebp, eax
mov edx, dword [r14]
add rdx, qword [rbx]
mov rcx, rsi
mov r8d, eax
call fcn.140074c50
mov r11, rbx
mov r10d, edi
add dword [r14], ebp
jmp 0x140072e42
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
jmp 0x140072a44
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
add dword [r14], 5
jmp 0x140072e42
mov cl, byte [rdx + rax + 1]
and cl, 0xf8
cmp cl, 0xe8
jne 0x1400737ba
add rdx, rax
mov rcx, rsi
mov r8d, 6
call fcn.140074c50
mov r11, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x2c]
add dword [r14], 6
jmp 0x140072e42
mov ecx, ebx
and cl, 0xfd
cmp cl, 0x89
jne 0x140072c09
add r9d, 2
mov rax, qword [r12]
mov qword [rsp + 0x70], rax
add rdx, r9
mov qword [rsp + 0x78], rdx
mov dword [rsp + 0x80], 0
mov rcx, r13
lea rdx, [rsp + 0x70]
lea r8, [rsp + 0x6f]
call fcn.140074c90
mov ebx, eax
test eax, eax
js 0x140072d45
mov edx, dword [r14]
mov rdi, qword [rsp + 0x40]
add rdx, qword [rdi]
add ebx, 1
mov rcx, rsi
mov r8d, ebx
call fcn.140074c50
mov r11, rdi
add dword [r14], ebx
mov r10d, dword [rsp + 0x2c]
jmp 0x140072e42
mov rbp, qword [rsi + 0x10]
mov al, byte [rdx + rax]
mov byte [rbp + rcx], al
add dword [rsi + 0x20], 1
mov eax, dword [r14]
add eax, 1
mov dword [r14], eax
mov rcx, qword [r11]
cmp byte [rcx + rax], 0x89
jne 0x1400737ba
mov edx, dword [rsi + 0x20]
lea ebp, [rdx + 1]
cmp qword [rsi], 0
je 0x140072aae
mov rbx, qword [rsp + 0x38]
cmp ebp, dword [rbx]
jbe case.default.0x140072aac
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007384c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov rax, qword [rsp + 0x48]
mov dword [rax], ebp
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007384c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov rbp, qword [rsi + 0x10]
mov al, byte [rax + rcx]
mov byte [rbp + rdx], al
add dword [rsi + 0x20], 1
add dword [r14], 1
jmp 0x140072e42
add rax, rcx
mov rcx, qword [rsi + 0x10]
mov bl, byte [rax + 4]
mov byte [rcx + rdx + 4], bl
mov eax, dword [rax]
mov dword [rcx + rdx], eax
add dword [rsi + 0x20], 5
add dword [r14], 5
jmp 0x140072e42
mov rbp, qword [rsi + 0x10]
mov al, byte [rcx + rax]
mov byte [rbp + rdx], al
add dword [rsi + 0x20], 1
mov r9d, dword [r14]
lea r8d, [r9 + 1]
mov dword [r14], r8d
mov rdx, qword [r11]
movzx ecx, byte [rdx + r8]
mov ebp, 2
mov edi, 1
mov rax, rcx
shr rax, 6
lea rbx, [0x14007384c]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov eax, ecx
and al, 7
cmp al, 4
je 0x140072b7f
mov ebp, 1
cmp al, 5
jne case.0x140072b60.1
jmp 0x1400737ba
mov ebp, 5
jmp case.0x140072b60.1
add r9d, 2
mov al, byte [rdx + r9]
and al, 7
xor ebp, ebp
cmp al, 5
sete bpl
lea ebp, [rbp*4 + 1]
and cl, 7
xor edi, edi
cmp cl, 4
sete dil
add edi, ebp
mov ecx, dword [rsi + 0x20]
lea eax, [rcx + rdi]
cmp qword [rsi], 0
je 0x140072bcc
mov rbp, qword [rsp + 0x38]
cmp eax, dword [rbp]
jbe 0x140072bdb
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
add dword [r14], edi
jmp 0x140072e42
mov rcx, qword [rsp + 0x48]
mov dword [rcx], eax
add dword [r14], edi
jmp 0x140072e42
add rdx, r8
add rcx, qword [rsi + 0x10]
mov r8d, edi
mov ebx, r10d
mov rbp, r11
call sub.ntdll.dll_memcpy
mov r11, rbp
mov r10d, ebx
add dword [rsi + 0x20], edi
add dword [r14], edi
jmp 0x140072e42
mov r10d, edi
jmp 0x140072e42
mov ecx, ebx
and cl, 0xf8
cmp cl, 0xb8
jne 0x140072cd5
add rdx, rax
mov rcx, rsi
mov r8d, 9
call fcn.140074c50
mov r11, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x2c]
add dword [r14], 9
jmp 0x140072e42
add rdx, rax
mov rcx, rsi
mov r8d, 5
call fcn.140074c50
mov r11, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x2c]
add dword [r14], 5
jmp 0x140072e42
cmp byte [rdx + rax + 1], 0x3d
jne 0x1400737ba
mov rbp, rdi
add eax, 2
mov dword [r14], eax
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x140072e74
mov rcx, qword [rsp + 0x38]
cmp eax, dword [rcx]
jae 0x140072e9a
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [rsi + 0x20]
add eax, 1
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
jne 0x140072ea2
jmp 0x140072e77
mov ebx, ecx
and bl, 0xf8
cmp bl, 0xb8
jne 0x140072dc1
add rdx, rax
mov rcx, rsi
mov r8d, 5
call fcn.140074c50
add dword [r14], 5
jmp 0x140072e3a
cmp bl, 0xfe
jg 0x140072e5d
cmp bl, 0x8d
je 0x1400730a4
cmp bl, 0xc7
jne 0x1400737ba
cmp byte [rdx + rax + 1], 0x44
jne 0x1400737ba
add rdx, rax
mov rcx, rsi
mov r8d, 8
call fcn.140074c50
mov r11, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x2c]
add dword [r14], 8
jmp 0x140072e42
and ebp, 7
add rdx, rax
mov rcx, rsi
cmp ebp, 4
jne 0x140072e83
mov r8d, 4
call fcn.140074c50
add dword [r14], 4
jmp 0x140072e92
cmp ebx, 0xfffffffe
mov rdx, qword [rsp + 0x40]
jne 0x1400737ba
mov eax, dword [r14]
lea ecx, [rax + 2]
mov dword [r14], ecx
mov rdx, qword [rdx]
lea rbp, [rdx + rcx]
movsxd rcx, dword [rdx + rcx]
add rcx, rbp
add rcx, 4
add eax, 6
mov dword [r14], eax
mov dl, byte [rsp + 0x6f]
test dl, dl
je 0x140073009
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x14007318e
mov rbp, qword [rsp + 0x38]
cmp eax, dword [rbp]
jae 0x14007321d
add dl, 0xb8
mov rbp, qword [rsi + 0x10]
mov byte [rbp + rax], dl
mov edx, dword [rsi + 0x20]
lea eax, [rdx + 1]
mov dword [rsi + 0x20], eax
add edx, 9
cmp qword [rsi], 0
jne 0x140073228
jmp 0x1400732de
cmp cl, 0xc2
jle 0x1400731c0
lea ebp, [rcx + 0x3d]
cmp bpl, 0x33
ja case.default.0x140072de9
movzx ebp, bpl
lea rbx, [0x14007385c]
movsxd rbp, dword [rbx + rbp*4]
add rbp, rbx
jmp rbp
xor r15d, r15d
cmp cl, 0xe9
sete r15b
lea rcx, [rax + 1]
mov dword [r14], ecx
lea rcx, [rdx + rax]
add rcx, 1
movsxd rdx, dword [rdx + rax + 1]
lea rdx, [rdx + rcx + 4]
add eax, 5
mov dword [r14], eax
mov r8d, 4
mov eax, 4
mov eax, 4
sub r8d, r15d
mov rcx, rsi
jmp 0x1400733e5
add rdx, rax
mov rcx, rsi
mov r8d, 1
call fcn.140074c50
add dword [r14], 1
mov r10d, dword [rsp + 0x2c]
mov r11, rdi
mov ecx, dword [r14]
mov r8d, dword [rsp + 0x5c]
cmp ecx, r8d
mov rdi, qword [rsp + 0x60]
jb 0x140072200
jmp 0x1400736a7
cmp bl, 0xff
je 0x14007310b
cmp bl, 0x63
je 0x1400726c9
jmp 0x1400737ba
add eax, 1
add eax, 1
mov rcx, qword [rsp + 0x48]
mov dword [rcx], eax
jmp 0x140072ec3
mov r8d, 3
call fcn.140074c50
add dword [r14], 3
mov r10d, edi
mov r11, rbx
jmp 0x140072e42
mov rcx, qword [rsp + 0x30]
mov byte [rcx], 0
mov rcx, qword [rsp + 0x38]
cmp eax, dword [rcx]
jae 0x140072ebb
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x53
add dword [rsi + 0x20], 1
jmp 0x140072ec3
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
mov ecx, dword [r14]
mov r9, qword [rbp]
movsxd r8, dword [r9 + rcx]
lea eax, [rcx + 4]
mov dword [r14], eax
cmp qword [rsi], 0
mov edx, dword [rsi + 0x20]
je 0x140072f07
mov rax, qword [rsp + 0x38]
cmp edx, dword [rax]
jae 0x140072f85
mov rax, qword [rsi + 0x10]
mov byte [rax + rdx], 0x49
mov edx, dword [rsi + 0x20]
add edx, 1
mov dword [rsi + 0x20], edx
cmp qword [rsi], 0
jne 0x140072f8d
jmp 0x140072f0a
add edx, 1
add edx, 9
mov eax, edx
add eax, 1
add eax, 1
add eax, 1
mov rcx, qword [rsp + 0x48]
mov dword [rcx], eax
mov edx, dword [r14]
add rdx, qword [rbp]
mov rcx, rsi
mov r8d, 1
call fcn.140074c50
add dword [r14], 1
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x140072f6b
mov rcx, qword [rsp + 0x38]
cmp eax, dword [rcx]
mov r10d, dword [rsp + 0x2c]
jae 0x140072fb7
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [rsi + 0x20]
add eax, 1
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
mov r11, rdi
jne 0x140072fc2
jmp 0x140072f76
add eax, 1
mov r10d, dword [rsp + 0x2c]
mov r11, rdi
add eax, 1
mov rcx, qword [rsp + 0x48]
mov dword [rcx], eax
jmp 0x140072e42
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
mov rax, qword [rsp + 0x38]
cmp edx, dword [rax]
jae 0x140072fde
mov rax, qword [rsi + 0x10]
mov edx, edx
mov byte [rax + rdx], 0xbb
mov eax, dword [rsi + 0x20]
lea edx, [rax + 1]
mov dword [rsi + 0x20], edx
add eax, 9
cmp qword [rsi], 0
jne 0x140072fe9
jmp 0x140072f0f
mov rcx, qword [rsp + 0x30]
mov byte [rcx], 0
mov r11, rdi
mov rcx, qword [rsp + 0x38]
cmp eax, dword [rcx]
jae 0x140072ffc
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x5b
add dword [rsi + 0x20], 1
jmp 0x140072e42
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
lea eax, [rdx + 8]
mov rbx, qword [rsp + 0x38]
cmp eax, dword [rbx]
jbe 0x140073046
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
jmp 0x140073070
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
jmp 0x140072e42
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x1400732f5
mov rdx, qword [rsp + 0x38]
cmp eax, dword [rdx]
jae 0x140073332
mov rdx, qword [rsi + 0x10]
mov byte [rdx + rax], 0xa1
mov edx, dword [rsi + 0x20]
lea eax, [rdx + 1]
mov dword [rsi + 0x20], eax
add edx, 9
cmp qword [rsi], 0
jne 0x14007333d
jmp 0x1400732fa
add r9, rcx
lea rax, [r8 + r9]
add rax, 4
mov rcx, qword [rsi + 0x10]
mov edx, edx
mov qword [rcx + rdx], rax
mov eax, dword [rsi + 0x20]
add eax, 8
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
mov edx, eax
je 0x140072f0f
mov rax, qword [rsp + 0x38]
cmp edx, dword [rax]
jae 0x14007315d
mov rax, qword [rsi + 0x10]
mov ecx, edx
mov byte [rax + rcx], 0x41
mov eax, dword [rsi + 0x20]
add eax, 1
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
mov edx, eax
jne 0x140073165
add eax, 1
jmp 0x140072f15
mov al, byte [rdx + rax + 1]
mov ecx, eax
and cl, 0xc7
cmp cl, 5
jne 0x140073249
lea r10d, [r9 + 3]
mov dword [r14], r10d
movsxd r8, dword [rdx + r10]
add r9d, 7
mov dword [r14], r9d
cmp qword [rsi], 0
mov ecx, dword [rsi + 0x20]
je 0x1400734a4
mov rbp, qword [rsp + 0x38]
cmp ecx, dword [rbp]
jae 0x1400734ae
shr al, 3
or al, 0xb8
mov rbp, qword [rsi + 0x10]
mov byte [rbp + rcx], al
mov eax, dword [rsi + 0x20]
lea ecx, [rax + 1]
mov dword [rsi + 0x20], ecx
add eax, 9
cmp qword [rsi], 0
jne 0x1400734b9
jmp 0x1400732e9
mov al, byte [rdx + rax + 1]
and al, 0xc7
cmp al, 5
jne 0x1400737ba
add r9d, 3
mov dword [r14], r9d
add dword [rsi + 0x20], 0xffffffff
mov eax, dword [r14]
mov rcx, qword [rdi]
lea rdx, [rcx + rax]
movsxd rcx, dword [rcx + rax]
add eax, 4
mov dword [r14], eax
mov rdx, qword [rcx + rdx + 4]
mov rcx, rsi
mov r8d, 3
call fcn.140074d30
mov r11, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x2c]
mov r15b, 1
jmp 0x140072555
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
mov rax, qword [rsp + 0x38]
cmp edx, dword [rax]
jae 0x140073198
mov rax, qword [rsi + 0x10]
mov ecx, edx
mov byte [rax + rcx], 0x80
mov eax, dword [rsi + 0x20]
add eax, 1
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
mov edx, eax
jne 0x1400731a0
jmp 0x140072f15
add eax, 9
mov edx, eax
jmp 0x1400732de
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
mov rax, qword [rsp + 0x38]
cmp edx, dword [rax]
jae 0x14007323c
mov rax, qword [rsi + 0x10]
mov ecx, edx
mov byte [rax + rcx], 0x3b
add dword [rsi + 0x20], 1
jmp 0x140072f1f
cmp cl, 0x83
je 0x14007347d
cmp cl, 0x85
jne case.0x140072de9.1
mov rcx, qword [r12]
mov qword [rsp + 0x70], rcx
add rax, rdx
add rax, 1
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x80], 0
mov rcx, r13
lea rdx, [rsp + 0x70]
xor r8d, r8d
call fcn.140074c90
test eax, eax
js 0x1400737ba
mov ebx, eax
mov rax, rdi
mov edx, dword [r14]
add rdx, qword [rdi]
add ebx, 1
jmp 0x14007277c
mov rdx, qword [rsp + 0x30]
mov byte [rdx], 0
lea edx, [rax + 8]
mov rbp, qword [rsp + 0x38]
cmp edx, dword [rbp]
jbe 0x14007329d
mov rcx, qword [rsp + 0x30]
mov byte [rcx], 0
jmp 0x1400732b8
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
jmp 0x140072f1f
add r9d, 2
mov rax, qword [r12]
mov qword [rsp + 0x70], rax
add rdx, r9
mov qword [rsp + 0x78], rdx
mov dword [rsp + 0x80], 0
mov rcx, r13
lea rdx, [rsp + 0x70]
xor r8d, r8d
call fcn.140074c90
mov edi, eax
mov edx, dword [r12 + 0x10]
add rdx, qword [r12 + 8]
add edi, 1
mov rcx, rsi
mov r8d, edi
call fcn.140074c50
add dword [r12 + 0x10], edi
jmp 0x14007353f
mov rdx, qword [rsi + 0x10]
mov eax, eax
mov qword [rdx + rax], rcx
mov edx, dword [rsi + 0x20]
add edx, 8
mov dword [rsi + 0x20], edx
cmp qword [rsi], 0
mov eax, edx
je 0x1400732de
mov rcx, qword [rsp + 0x38]
cmp eax, dword [rcx]
jae 0x140073306
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x48
mov edx, dword [rsi + 0x20]
add edx, 1
mov dword [rsi + 0x20], edx
cmp qword [rsi], 0
mov eax, edx
jne 0x14007330e
jmp 0x1400732e1
add edx, 1
add edx, 1
mov eax, edx
add eax, 1
mov rcx, qword [rsp + 0x48]
mov dword [rcx], eax
jmp 0x14007353f
add eax, 9
mov edx, eax
mov rax, qword [rsp + 0x48]
mov dword [rax], edx
jmp 0x14007353f
mov rcx, qword [rsp + 0x30]
mov byte [rcx], 0
mov rcx, qword [rsp + 0x38]
cmp eax, dword [rcx]
jae 0x140073379
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x8b
mov eax, dword [rsi + 0x20]
add eax, 1
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
jne 0x140073381
jmp 0x1400732e6
mov rdx, qword [rsp + 0x30]
mov byte [rdx], 0
lea edx, [rax + 8]
mov rbp, qword [rsp + 0x38]
cmp edx, dword [rbp]
ja 0x1400734c3
mov rdx, qword [rsi + 0x10]
mov eax, eax
mov qword [rdx + rax], rcx
jmp 0x14007353b
cmp cl, 0x33
jne case.0x140072de9.1
add rdx, rax
mov rcx, rsi
mov r8d, 2
call fcn.140074c50
add dword [r14], 2
jmp 0x140072e3a
mov rcx, qword [rsp + 0x30]
mov byte [rcx], 0
mov dl, byte [rsp + 0x6f]
lea ecx, [rdx*8]
or cl, dl
mov rdx, qword [rsp + 0x38]
cmp eax, dword [rdx]
jae 0x1400734c3
mov rdx, qword [rsi + 0x10]
mov eax, eax
mov byte [rdx + rax], cl
add dword [rsi + 0x20], 1
jmp 0x14007353f
cmp cl, 0x73
jb 0x1400737ba
cmp cl, 0x75
ja 0x1400734cd
lea rbp, [0x1400febc4]
mov r8d, dword [rbp + rcx*4 - 0x1cc]
movzx ecx, byte [rdx + rax + 1]
add eax, 2
mov dword [r14], eax
add rax, rdx
add rax, rcx
mov rcx, rsi
mov rdx, rax
call fcn.140074d30
test al, al
mov r10d, dword [rsp + 0x2c]
mov r11, rdi
jne 0x140072e42
jmp 0x1400737ba
cmp byte [rdx + rax + 1], 0xc0
jb 0x1400737ba
add rdx, rax
mov rcx, rsi
mov r8d, 2
call fcn.140074c50
mov r11, rdi
jmp 0x1400726ea
mov byte [rsp + 0x6f], 0
mov rcx, qword [r12]
mov qword [rsp + 0x70], rcx
add rax, rdx
add rax, 1
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x80], 0
mov rcx, r13
lea rdx, [rsp + 0x70]
lea r8, [rsp + 0x6f]
call fcn.140074c90
test eax, eax
js 0x1400737ba
cmp byte [rsp + 0x6f], 0
jne 0x1400737ba
mov ebx, eax
mov edx, dword [r14]
add rdx, qword [rdi]
add ebx, 2
jmp 0x140072a1a
mov cl, byte [rdx + rax + 1]
cmp cl, 0xc0
jb 0x14007354e
add rdx, rax
mov rcx, rsi
mov r8d, 3
call fcn.140074c50
add dword [r14], 3
jmp 0x140072e3a
add ecx, 9
mov eax, ecx
jmp 0x1400732e9
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
lea eax, [rcx + 8]
mov rbp, qword [rsp + 0x38]
cmp eax, dword [rbp]
jbe 0x140073526
mov rax, qword [rsp + 0x30]
mov byte [rax], 0
jmp 0x14007353f
cmp cl, 0xc6
je 0x140073573
cmp cl, 0xff
jne 0x1400737ba
mov cl, byte [rdx + rax + 1]
mov r10d, ecx
shr r10b, 3
and r10b, 7
mov r9d, ecx
and r9b, 7
cmp cl, 0xc0
jb 0x1400735be
cmp r10b, 6
ja 0x140073516
movzx ecx, r10b
mov ebp, 0x47
bt ebp, ecx
jb 0x14007335f
cmp r9b, 5
sete r9b
xor r8d, r8d
jmp 0x140073601
add rdx, r10
lea rax, [r8 + rdx]
add rax, 4
mov rdx, qword [rsi + 0x10]
mov ecx, ecx
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
mov r10d, dword [rsp + 0x2c]
mov r11, qword [rsp + 0x40]
jmp 0x140072e42
and cl, 0xf8
cmp cl, 0x60
jne 0x1400737ba
add rdx, rax
mov rcx, rsi
mov r8d, 5
call fcn.140074c50
mov r11, rdi
jmp 0x140072c51
mov rcx, qword [r12]
mov qword [rsp + 0x70], rcx
add rax, rdx
add rax, 1
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x80], 0
mov rcx, r13
lea rdx, [rsp + 0x70]
xor r8d, r8d
call fcn.140074c90
test eax, eax
js 0x1400737ba
mov ebx, eax
mov rax, rdi
mov edx, dword [r14]
add rdx, qword [rdi]
add ebx, 2
jmp 0x14007277c
cmp cl, 0x40
setb r8b
cmp r9b, 5
sete r9b
jne 0x140073601
cmp cl, 0x3f
ja 0x140073601
cmp r10b, 2
jne 0x140073601
lea ecx, [rax + 2]
mov dword [r14], ecx
lea rbp, [rdx + rcx]
movsxd rcx, dword [rdx + rcx]
add eax, 6
mov dword [r14], eax
mov rdx, qword [rcx + rbp + 4]
mov rcx, rsi
mov r8d, 4
jmp 0x1400733e5
cmp r10b, 4
jne 0x1400737ba
and r8b, r9b
cmp r8b, 1
jne 0x140073643
lea ecx, [rax + 2]
mov dword [r14], ecx
lea rbp, [rdx + rcx]
movsxd rcx, dword [rdx + rcx]
add eax, 6
mov dword [r14], eax
mov rdx, qword [rcx + rbp + 4]
mov rcx, rsi
mov r8d, 3
call fcn.140074d30
mov r15b, 1
jmp 0x1400733ea
mov rcx, qword [r12]
mov qword [rsp + 0x70], rcx
add rax, rdx
add rax, 1
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x80], 0
mov rcx, r13
lea rdx, [rsp + 0x70]
xor r8d, r8d
call fcn.140074c90
test eax, eax
js 0x1400737ba
mov ebx, eax
mov edx, dword [r14]
add rdx, qword [rdi]
add ebx, 1
mov rcx, rsi
mov r8d, ebx
call fcn.140074c50
mov r11, rdi
mov r10d, dword [rsp + 0x2c]
add dword [r14], ebx
mov r15b, 1
jmp 0x140072e42
xor r15d, r15d
cmp ecx, 0x64
ja 0x1400737ba
test r15b, 1
jne 0x1400736d7
mov edx, ecx
add rdx, qword [r11]
mov rcx, rsi
mov r8d, 3
mov edi, r10d
call fcn.140074d30
mov r10d, edi
test al, al
je 0x1400737ba
cmp byte [rsi + 0x2c], 0
je 0x1400737ba
cmp qword [rsi], 0
je 0x1400737ba
mov ebx, dword [rsi + 0x24]
add rbx, qword [rsi + 0x18]
je 0x1400737ba
mov edi, r10d
lea rcx, [rsp + 0x70]
mov rdx, r12
xor r8d, r8d
xor r9d, r9d
call fcn.140075050
cmp qword [rsp + 0xe0], 0
je 0x1400737b0
cmp byte [rsp + 0xc8], 0
je 0x1400737b0
test dil, dil
je 0x140073785
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x70]
mov rcx, r13
mov rdx, qword [rsp + 0x50]
mov r8, rbx
call fcn.140075450
test al, al
jne 0x140073797
jmp 0x1400737b0
cmp qword [rsp + 0x50], 0
je 0x1400737ba
mov rcx, qword [rsp + 0x50]
mov rdi, r11
call fcn.140074bc0
test al, al
je 0x1400737ba
mov r11, rdi
mov ecx, dword [r14]
mov r10b, 1
cmp ecx, 9
ja 0x1400736a7
jmp 0x1400737ba
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x180]
call fcn.140075a40
lea rcx, [rsp + 0x70]
call fcn.140075c70
test al, al
je 0x1400737b0
mov rax, qword [rsp + 0x188]
mov qword [rax], rbx
lea rcx, [rsp + 0x70]
call fcn.140075cd0
mov rax, qword [rsp + 0x188]
cmp qword [rax], 0
mov rbx, qword [0x1400f7448]
mov rdi, qword [rsp + 0x48]
je 0x1400737fb
mov rax, qword [rsp + 0x110]
xor rax, rsp
mov rcx, qword [rbx]
cmp rcx, rax
jne 0x140073843
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dword [rsi + 0x20], 0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [rsi + 0x20]
lea edx, [rcx + 8]
cmp qword [rsi], 0
je 0x140073821
cmp edx, dword [rsi + 0x28]
jbe 0x140073825
mov byte [rsi + 0x2c], 0
jmp 0x1400737d4
mov dword [rdi], edx
jmp 0x1400737d4
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
jmp 0x1400737d4
mov dword [0], 0x2f1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_abort
call fcn.1400763e0
int3