Function at 0x140043670
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, 0x178
mov r15, r9
mov rbx, r8
mov r14, rdx
mov rdi, rcx
mov rcx, qword [rsp + 0x1e8]
mov rax, qword [0x140055018]
xor rax, rsp
mov qword [rsp + 0x170], rax
mov qword [rcx], 0
cmp qword [r9], 0
je 0x1400436e2
cmp qword [r15 + 0x10], 0
je 0x140043c56
cmp qword [r15 + 0x18], 0
je 0x140043c56
cmp dword [r15 + 8], 0
je 0x140043c56
cmp byte [r15 + 0x2c], 0
je 0x140043c56
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rcx, [r15 + 0x20]
mov qword [rsp + 0x30], rcx
mov ecx, dword [r15 + 0x20]
lea edx, [rcx + 8]
cmp qword [r15], 0
je 0x1400442d4
cmp edx, dword [r15 + 0x28]
ja 0x1400442e0
mov rdx, qword [r15 + 0x10]
mov qword [rdx + rcx], rax
add dword [r15 + 0x20], 8
cmp qword [r15], 0
je 0x14004374e
cmp qword [r15 + 0x10], 0
je 0x140043c56
cmp qword [r15 + 0x18], 0
je 0x140043c56
cmp dword [r15 + 8], 0
je 0x140043c56
cmp byte [r15 + 0x2c], 0
je 0x140043c56
mov ecx, dword [r14 + 0x10]
add rcx, qword [r14 + 8]
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [r15 + 0x20]
lea edx, [rcx + 8]
cmp qword [r15], 0
mov qword [rsp + 0x58], rbx
je 0x1400442f5
cmp edx, dword [r15 + 0x28]
ja 0x140044301
mov rdx, qword [r15 + 0x10]
mov qword [rdx + rcx], rax
add dword [r15 + 0x20], 8
cmp qword [r15], 0
je 0x1400437bb
cmp qword [r15 + 0x10], 0
je case.0x14004555a.1
cmp qword [r15 + 0x18], 0
je case.0x14004555a.1
cmp dword [r15 + 8], 0
je case.0x14004555a.1
cmp byte [r15 + 0x2c], 0
je case.0x14004555a.1
mov r8, qword [rsp + 0x1e0]
mov rcx, r15
mov rdx, r14
mov r9, qword [rsp + 0x1e8]
call fcn.140046530
test al, al
jne case.0x14004555a.1
lea r12, [r14 + 0x10]
mov eax, dword [r15 + 0x20]
mov dword [r15 + 0x24], eax
mov al, byte [rdi + 0x10]
and al, 2
shr al, 1
mov byte [rsp + 0x57], al
jne 0x140044316
mov r8d, 0xd
lea r13, [r14 + 8]
mov eax, dword [r12]
cmp eax, r8d
jae 0x140043ae4
lea rcx, [r15 + 0x28]
mov qword [rsp + 0x40], rcx
lea rcx, [r15 + 0x10]
mov qword [rsp + 0x48], rcx
lea rcx, [r15 + 0x2c]
mov qword [rsp + 0x38], rcx
xor esi, esi
mov dword [rsp + 0x2c], r8d
nop word cs:[rax + rax]
nop
mov ebp, eax
mov rax, rbp
mov rcx, qword [r13]
movzx edx, byte [rcx + rax]
test sil, 1
jne 0x140043d52
cmp dl, 0xf
je 0x140043d84
mov eax, edx
and al, 0xfc
cmp al, 0x88
je 0x140043daf
lea eax, [rdx - 0x40]
cmp al, 2
jb 0x140043a5d
cmp dl, 0x44
je 0x140043e70
cmp dl, 0x45
je 0x140043e9b
mov eax, edx
and al, 0xfa
cmp al, 0x48
jne 0x1400439b4
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
je 0x140043ec6
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
ja 0x140043ed2
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
mov edx, dword [r12]
lea edi, [rdx + 1]
mov dword [r12], edi
mov rax, qword [r13]
mov cl, byte [rax + rdi]
cmp cl, 0x82
jle 0x140043900
cmp cl, 0x83
je 0x140043a04
cmp cl, 0x85
je 0x140043edf
cmp cl, 0x2b
jne 0x140043909
jmp 0x140043edf
cmp cl, 0x81
je 0x140043c7b
mov ebx, ecx
and bl, 0xfd
cmp bl, 0x89
jne 0x140043f19
add edx, 2
mov rcx, qword [r14]
mov qword [rsp + 0xd0], rcx
add rax, rdx
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0xe0], 0
lea rcx, [rsp + 0xd0]
lea rdx, [rsp + 0x98]
call fcn.140046680
test eax, eax
js 0x140043f6f
lea ebx, [rax + 1]
cmp qword [r15], 0
mov ecx, dword [r15 + 0x20]
lea eax, [rcx + rax + 1]
je 0x14004570f
mov rdx, qword [rsp + 0x40]
cmp eax, dword [rdx]
ja 0x1400451d3
mov edx, dword [r12]
add rdx, qword [r13]
mov r8d, ebx
mov rax, qword [rsp + 0x48]
add rcx, qword [rax]
call sub.ntdll.dll_memcpy
mov rax, qword [rsp + 0x30]
add dword [rax], ebx
add dword [r12], ebx
mov r8d, dword [rsp + 0x2c]
mov eax, dword [r12]
cmp eax, r8d
jb 0x140043840
jmp 0x140043ae6
cmp dl, 0x66
je 0x1400445ae
mov eax, edx
and al, 0xf0
cmp al, 0x50
jne 0x140043cd0
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
je 0x140044627
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
ja 0x1400442c2
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
add dword [r12], 1
jmp 0x1400439a2
mov dl, byte [rax + rdi + 1]
and dl, 0xf8
cmp dl, 0xe8
jne 0x140044835
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 3]
cmp qword [r15], 0
je 0x140044861
mov rcx, qword [rsp + 0x40]
cmp ebp, dword [rcx]
ja 0x140044872
add rax, rdi
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov bl, byte [rax + 2]
mov byte [rcx + rdx + 2], bl
movzx eax, word [rax]
mov word [rcx + rdx], ax
mov rax, qword [rsp + 0x30]
add dword [rax], 3
add dword [r12], 3
jmp 0x1400439a2
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
je 0x140044915
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
ja 0x140044921
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
mov ecx, dword [r12]
add ecx, 1
mov dword [r12], ecx
mov rax, qword [r13]
mov bl, byte [rax + rcx]
mov edx, ebx
and dl, 0xf0
cmp dl, 0x50
jne 0x14004492e
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 1]
cmp qword [r15], 0
je 0x14004496a
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
ja 0x1400442c2
mov rbp, qword [rsp + 0x48]
mov rbp, qword [rbp]
mov al, byte [rax + rcx]
mov byte [rbp + rdx], al
jmp 0x1400439f5
xor esi, esi
cmp eax, 0x64
ja case.0x14004555a.1
test sil, 1
jne 0x140043b11
mov edx, eax
add rdx, qword [r13]
mov rcx, r15
mov r8d, 2
call fcn.14000cc30
test al, al
je case.0x14004555a.1
cmp byte [r15 + 0x2c], 0
je case.0x14004555a.1
cmp qword [r15], 0
je case.0x14004555a.1
mov edi, dword [r15 + 0x24]
add rdi, qword [r15 + 0x18]
je case.0x14004555a.1
lea rdx, [rsp + 0xd0]
mov rcx, r14
xor r8d, r8d
xor r9d, r9d
call fcn.140046710
cmp qword [rsp + 0x140], 0
je 0x140043c1e
cmp byte [rsp + 0x128], 0
je 0x140043c1e
cmp byte [rsp + 0x57], 0
jne 0x140044321
mov byte [rsp + 0x98], 0x49
lea rbx, [rsp + 0xd0]
lea rdx, [rsp + 0x98]
mov rcx, rbx
call fcn.14000d170
mov byte [rsp + 0x98], 0xbb
lea rdx, [rsp + 0x98]
mov rcx, rbx
call fcn.14000d170
mov rcx, rbx
mov rdx, qword [rsp + 0x1e0]
call fcn.14000d230
mov byte [rsp + 0x98], 0x41
lea rdx, [rsp + 0x98]
mov rcx, rbx
call fcn.14000d170
mov byte [rsp + 0x98], 0xff
lea rdx, [rsp + 0x98]
mov rcx, rbx
call fcn.14000d170
mov byte [rsp + 0x98], 0xe3
lea rdx, [rsp + 0x98]
mov rcx, rbx
call fcn.14000d170
lea rcx, [rsp + 0xd0]
call fcn.140046850
test al, al
je 0x140043c1e
mov rax, qword [rsp + 0x1e8]
mov qword [rax], rdi
lea rcx, [rsp + 0x130]
call fcn.140046ab0
mov rcx, qword [rsp + 0xf0]
lea rax, [rsp + 0x108]
cmp rcx, rax
jne 0x14004450b
mov rax, qword [rsp + 0x1e8]
cmp qword [rax], 0
je 0x140044516
mov rcx, qword [rsp + 0x170]
xor rcx, rsp
call fcn.1400477a0
nop
add rsp, 0x178
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov dl, byte [rax + rdi + 1]
and dl, 0xf8
cmp dl, 0xe8
jne case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 6]
cmp qword [r15], 0
je 0x140044e38
mov rcx, qword [rsp + 0x40]
cmp ebp, dword [rcx]
ja 0x140044e49
add rax, rdi
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
movzx ebp, word [rax + 4]
mov word [rcx + rdx + 4], bp
mov eax, dword [rax]
mov dword [rcx + rdx], eax
mov rax, qword [rsp + 0x30]
add dword [rax], 6
add dword [r12], 6
jmp 0x1400439a2
cmp dl, 0x80
je 0x140044e5b
cmp dl, 0x90
je case.0x14004555a.0
cmp dl, 0x65
je 0x140044ec3
mov eax, edx
and al, 0xf8
cmp al, 0xb8
je 0x140044f1e
cmp dl, 0xff
jne 0x140044efe
mov al, byte [rcx + rbp + 1]
mov edx, eax
and dl, 0xf8
cmp dl, 0xf0
jne 0x140044f58
mov eax, dword [r15 + 0x20]
lea edx, [rax + 2]
cmp qword [r15], 0
je 0x140044f9c
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
ja 0x140044fad
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
movzx ecx, word [rcx + rbp]
mov word [rdx + rax], cx
mov rax, qword [rsp + 0x30]
add dword [rax], 2
add dword [r12], 2
jmp 0x1400439a2
mov rdi, rsi
cmp dl, 0xcc
je 0x140043d63
cmp dl, 0x90
jne 0x140043e0f
mov r8d, dword [rsp + 0x2c]
mov ecx, r8d
add rax, 1
mov dword [r12], eax
cmp rax, rcx
mov rsi, rdi
jb 0x140043845
jmp 0x140043ae6
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
je 0x1400440a5
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
jbe 0x1400441e5
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x1400440ac
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
jne 0x14004407b
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
add dword [r14 + 0x10], 1
mov rcx, r14
xor edx, edx
call fcn.140046680
test eax, eax
js case.0x14004555a.1
mov edi, eax
mov ecx, dword [r15 + 0x20]
lea eax, [rcx + rdi]
cmp qword [r15], 0
je 0x140044095
mov rdx, qword [rsp + 0x40]
cmp eax, dword [rdx]
jbe 0x1400441bd
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], edi
jmp 0x14004399d
cmp qword [rsp + 0x58], 0
je case.0x14004555a.1
call fcn.140045a20
lea rsi, [0x1400578f8]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 8]
mov ebx, dword [rax + 8]
add rbx, qword [rax]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, 0x80000000
cmp rbx, rax
ja case.0x14004555a.1
mov rsi, rdi
mov eax, dword [r12]
mov byte [rsp + 0x57], 1
cmp eax, 9
ja 0x140043ae6
jmp case.0x14004555a.1
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
je 0x140044130
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
jbe 0x14004424d
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x140044137
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
je 0x14004416d
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
jbe 0x140044268
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x140044174
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
jmp 0x1400438c9
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x1400438c9
cmp byte [rax + rdi + 1], 0xc0
jb case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 2]
cmp qword [r15], 0
je 0x140044d10
mov rcx, qword [rsp + 0x40]
cmp ebp, dword [rcx]
ja 0x1400441ab
mov rcx, qword [rsp + 0x48]
mov rbp, qword [rcx]
movzx eax, word [rax + rdi]
jmp 0x140044290
cmp cl, 0xfe
jg 0x140044200
cmp cl, 0x8d
je 0x140044638
cmp cl, 0xc7
jne case.0x14004555a.1
cmp byte [rax + rdi + 1], 0x44
jne case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 8]
cmp qword [r15], 0
je 0x140044c96
mov rcx, qword [rsp + 0x40]
cmp ebp, dword [rcx]
jbe 0x140044d21
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 8
jmp 0x14004399d
cmp eax, 0xfffffffe
jne case.0x14004555a.1
mov eax, dword [r12]
lea ecx, [rax + 2]
mov dword [r12], ecx
mov rdx, qword [r13]
lea rbp, [rdx + rcx]
movsxd rcx, dword [rdx + rcx]
add rcx, rbp
add rcx, 4
add eax, 6
mov dword [r12], eax
mov bl, byte [rsp + 0x98]
test bl, bl
je 0x14004454b
cmp qword [r15], 0
mov eax, dword [r15 + 0x20]
je 0x140044706
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx]
cmp eax, edx
jae 0x1400447a7
add bl, 0xb8
mov rdx, qword [r15 + 0x10]
mov byte [rdx + rax], bl
mov ebp, dword [r15 + 0x20]
lea eax, [rbp + 1]
mov dword [r15 + 0x20], eax
add ebp, 9
cmp qword [r15], 0
je 0x140044715
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx]
cmp ebp, edx
ja 0x1400447bb
mov rdx, qword [r15 + 0x10]
mov eax, eax
mov qword [rdx + rax], rcx
mov eax, dword [r15 + 0x20]
add eax, 8
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x14004471e
mov rcx, qword [rsp + 0x40]
mov edx, dword [rcx]
cmp eax, edx
jb 0x1400447cb
mov rcx, qword [rsp + 0x38]
mov byte [rcx], 0
cmp eax, edx
jae 0x1400447f9
mov rcx, qword [r15 + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x8b
mov eax, dword [r15 + 0x20]
add eax, 1
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x140044732
mov dl, byte [rsp + 0x98]
lea ecx, [rdx*8]
or cl, dl
mov rdx, qword [rsp + 0x40]
mov edx, dword [rdx]
cmp eax, edx
jae 0x140044a71
jmp 0x14004481b
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
jbe 0x1400442a7
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x140043dc7
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
add dword [r12], edi
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
mov edx, dword [r12]
lea eax, [rdx + 1]
mov dword [r12], eax
mov rcx, qword [r13]
mov bl, byte [rcx + rax]
cmp bl, 0xf
jle 0x1400440f7
cmp bl, 0x1f
jne 0x14004459d
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 1]
cmp qword [r15], 0
je 0x140044741
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
jbe 0x140044884
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x140044748
cmp bl, 5
jne 0x1400445d9
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 1]
cmp qword [r15], 0
je 0x140044796
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
jbe 0x1400448a1
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 1
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
mov eax, dword [r12]
add eax, 1
mov dword [r12], eax
mov rcx, qword [r13]
cmp byte [rcx + rax], 0x89
jne case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 1]
cmp qword [r15], 0
jne 0x140044cc2
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
jmp 0x140043dc7
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
mov eax, dword [r12]
add eax, 1
mov dword [r12], eax
mov rcx, qword [r13]
cmp byte [rcx + rax], 0x33
jne case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 2]
cmp qword [r15], 0
je 0x140044d10
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
jbe 0x140044283
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 2
jmp 0x14004399d
mov edx, dword [r12]
add rdx, qword [r13]
mov r8d, edi
mov rax, qword [rsp + 0x48]
add rcx, qword [rax]
call sub.ntdll.dll_memcpy
mov rax, qword [rsp + 0x30]
add dword [rax], edi
add dword [r12], edi
jmp 0x14004399d
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x1400440ac
cmp cl, 0xff
je 0x1400446b5
cmp cl, 0x63
jne case.0x14004555a.1
cmp byte [rax + rdi + 1], 0xc0
jb case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 2]
cmp qword [r15], 0
je 0x140044d10
mov rcx, qword [rsp + 0x40]
cmp ebp, dword [rcx]
ja 0x1400441ab
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
movzx eax, word [rax + rdi]
mov word [rcx + rdx], ax
jmp 0x140044295
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x140044137
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x140044174
mov rbp, qword [rsp + 0x48]
mov rbp, qword [rbp]
movzx eax, word [rcx + rax]
mov word [rbp + rdx], ax
mov rax, qword [rsp + 0x30]
add dword [rax], 2
add dword [r12], 2
jmp 0x14004399d
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x140043dc7
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 1
jmp 0x1400439a2
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
jmp 0x14004374e
mov byte [r15 + 0x2c], 0
cmp qword [r15 + 0x10], 0
jne 0x14004372d
jmp 0x140043c56
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
jmp 0x1400437bb
mov byte [r15 + 0x2c], 0
cmp qword [r15 + 0x10], 0
jne 0x14004379a
jmp case.0x14004555a.1
mov r8d, 0xa
jmp 0x140043801
call fcn.140045a20
lea rbx, [0x1400578f8]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 8]
lea rdx, [rsp + 0x98]
call fcn.1400463b0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp byte [rsp + 0xc8], 0
je 0x140043c1e
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x68], rax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x70], eax
movups xmm0, xmmword [rsp + 0xa8]
movups xmmword [rsp + 0x78], xmm0
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x88], eax
mov rax, qword [rsp + 0xbc]
mov qword [rsp + 0x8c], rax
mov al, byte [rsp + 0xc4]
mov byte [rsp + 0x94], al
mov dword [rsp + 0xa0], 0
mov byte [rsp + 0xc4], 0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [rsp + 0x88]
lea edx, [rcx + 8]
cmp qword [rsp + 0x68], 0
jne 0x140044a7e
mov dword [rsp + 0x88], edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [rsp + 0x88]
lea ebp, [rcx + 8]
cmp qword [rsp + 0x68], 0
jne 0x140044a98
mov dword [rsp + 0x88], ebp
mov dword [rsp + 0x8c], ebp
add ebp, 1
mov dword [rsp + 0x88], ebp
mov ecx, ebp
lea eax, [rcx + 1]
mov dword [rsp + 0x88], eax
add ecx, 9
mov eax, ecx
mov dword [rsp + 0x88], eax
mov ecx, eax
add ecx, 1
mov dword [rsp + 0x88], ecx
add ecx, 1
mov dword [rsp + 0x88], ecx
add ecx, 1
mov dword [rsp + 0x88], ecx
mov ebp, 1
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x1400444a0
mov r8d, dword [rsp + 0x70]
test r8d, r8d
je 0x1400444a0
lea rbx, [rsp + 0x70]
mov edx, dword [rsp + 0x90]
mov r9, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov dword [rsp + 0x70], 0
mov byte [rsp + 0x94], 0
xorps xmm0, xmm0
movups xmmword [rbx + 8], xmm0
cmp byte [rsp + 0xc8], 0
je 0x1400444fe
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x1400444f6
mov r8d, dword [rsp + 0xa0]
test r8d, r8d
je 0x1400444f6
lea rbx, [rsp + 0xa0]
mov edx, dword [rsp + 0xc0]
mov r9, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov dword [rsp + 0xa0], 0
mov byte [rsp + 0xc4], 0
xorps xmm0, xmm0
movups xmmword [rbx + 8], xmm0
mov byte [rsp + 0xc8], 0
test ebp, ebp
je 0x140043c02
jmp 0x140043c1e
call qword [sym.imp.mozglue.dll_free]
jmp case.0x14004555a.1
mov dword [r15 + 0x20], 0
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov ecx, dword [r15 + 0x20]
lea edx, [rcx + 8]
cmp qword [r15], 0
je 0x1400448ee
cmp edx, dword [r15 + 0x28]
jbe 0x14004497b
mov byte [r15 + 0x2c], 0
jmp 0x140043c56
cmp qword [r15], 0
mov eax, dword [r15 + 0x20]
je 0x1400448fa
mov rdx, qword [rsp + 0x40]
mov ebp, dword [rdx]
cmp eax, ebp
jae 0x140044a5e
mov rdx, qword [r15 + 0x10]
mov byte [rdx + rax], 0xa1
mov edx, dword [r15 + 0x20]
lea eax, [rdx + 1]
mov dword [r15 + 0x20], eax
add edx, 9
cmp qword [r15], 0
je 0x140044909
mov rbp, qword [rsp + 0x40]
mov ebp, dword [rbp]
cmp edx, ebp
jbe 0x140044c4c
jmp 0x140044a71
add bl, 0xf0
cmp bl, 2
jae case.0x14004555a.1
jmp 0x140044150
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
je 0x14004498d
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
jbe 0x140044c31
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x140044994
cmp bl, 0x84
jne case.0x14004555a.1
add edx, 2
mov dword [r12], edx
add dword [r15 + 0x20], 0xffffffff
mov eax, dword [r12]
mov rcx, qword [r13]
lea rdx, [rcx + rax]
movsxd rcx, dword [rcx + rax]
lea rdx, [rcx + rdx + 4]
add eax, 4
mov dword [r12], eax
mov rcx, r15
xor r8d, r8d
call fcn.14000cc30
mov r8d, dword [rsp + 0x2c]
test al, al
jne 0x1400439a2
jmp case.0x14004555a.1
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
add dword [r12], 1
jmp 0x1400439a2
mov bl, byte [rax + rdi + 1]
mov ecx, ebx
and cl, 0xc7
cmp cl, 5
jne 0x14004517e
lea ecx, [rdx + 3]
mov dword [r12], ecx
movsxd r8, dword [rax + rcx]
add edx, 7
mov dword [r12], edx
cmp qword [r15], 0
mov edx, dword [r15 + 0x20]
je 0x140044ca7
mov rbp, qword [rsp + 0x40]
mov ebp, dword [rbp]
cmp edx, ebp
jae 0x140044d43
shr bl, 3
or bl, 0xb8
mov rbp, qword [r15 + 0x10]
mov byte [rbp + rdx], bl
mov ebx, dword [r15 + 0x20]
lea edx, [rbx + 1]
mov dword [r15 + 0x20], edx
add ebx, 9
cmp qword [r15], 0
je 0x140044cb6
mov rbp, qword [rsp + 0x40]
mov ebp, dword [rbp]
cmp ebx, ebp
ja 0x140044a71
jmp 0x140044d56
mov al, byte [rax + rdi + 1]
and al, 0xc7
cmp al, 5
jne case.0x14004555a.1
add edx, 3
mov dword [r12], edx
add dword [r15 + 0x20], 0xffffffff
mov eax, dword [r12]
mov rcx, qword [r13]
lea rdx, [rcx + rax]
movsxd rcx, dword [rcx + rax]
lea eax, [rax + 4]
mov dword [r12], eax
mov rdx, qword [rcx + rdx + 4]
mov rcx, r15
mov r8d, 2
call fcn.14000cc30
mov r8d, dword [rsp + 0x2c]
mov sil, 1
jmp 0x14004461a
lea ecx, [rax + 1]
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
add eax, 9
mov ebp, eax
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
mov eax, ebp
add eax, 1
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
add eax, 1
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
add eax, 1
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
mov ecx, dword [r12]
add ecx, 1
mov dword [r12], ecx
mov rax, qword [r13]
mov dl, byte [rax + rcx]
and dl, 0xc7
cmp dl, 0x44
jne case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 3]
cmp qword [r15], 0
je 0x140044e27
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
jbe 0x1400448c3
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 3
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 1
jmp 0x14004399d
mov rbp, qword [rsp + 0x38]
mov byte [rbp], 0
lea ebp, [rax + 8]
cmp ebp, edx
jbe 0x140043ffa
mov rcx, qword [rsp + 0x38]
mov byte [rcx], 0
cmp eax, edx
jae 0x140044028
mov rcx, qword [r15 + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x48
mov eax, dword [r15 + 0x20]
add eax, 1
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x140044728
mov rcx, qword [rsp + 0x40]
mov edx, dword [rcx]
cmp eax, edx
jb 0x140044038
mov rcx, qword [rsp + 0x38]
mov byte [rcx], 0
mov bpl, byte [rsp + 0x98]
lea ecx, [rbp*8]
or cl, bpl
cmp eax, edx
jae 0x140044a71
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov eax, eax
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x14004399d
cmp dl, 0xc0
jne 0x140044c67
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 3]
cmp qword [r15], 0
je 0x140044e27
mov rcx, qword [rsp + 0x40]
cmp ebp, dword [rcx]
ja 0x140044784
add rax, rdi
jmp 0x1400448c6
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 3
jmp 0x1400439a2
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 3
jmp 0x1400439a2
mov rbp, qword [rsp + 0x48]
mov rbp, qword [rbp]
mov al, byte [rcx + rax]
mov byte [rbp + rdx], al
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x140044748
mov rbp, qword [rsp + 0x48]
mov rbp, qword [rbp]
mov al, byte [rcx + rax]
mov byte [rbp + rdx], al
mov rax, qword [rsp + 0x30]
add dword [rax], 1
add dword [r12], 1
jmp 0x14004399d
add rax, rcx
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov bl, byte [rax + 2]
mov byte [rcx + rdx + 2], bl
movzx eax, word [rax]
mov word [rcx + rdx], ax
mov rax, qword [rsp + 0x30]
add dword [rax], 3
add dword [r12], 3
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
jmp 0x140043c56
lea ecx, [rax + 1]
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
add eax, 9
mov edx, eax
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
jmp 0x140043a91
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x140043a91
and bl, 0xf8
cmp bl, 0xb8
jne case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 5]
cmp qword [r15], 0
je 0x140044d73
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
jbe 0x140044dce
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 5
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 1
jmp 0x1400439a2
mov rdx, qword [r15 + 0x10]
mov qword [rdx + rcx], rax
add dword [r15 + 0x20], 8
jmp 0x140043c56
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
mov ecx, dword [r12]
add ecx, 1
mov dword [r12], ecx
mov rax, qword [r13]
mov bl, byte [rax + rcx]
mov edx, ebx
and dl, 0xfc
cmp dl, 0x88
jne 0x140044a28
movzx ebx, byte [rax + rcx + 1]
mov edx, ebx
and edx, 0xffffffc0
cmp dl, 0xc0
je 0x140044ce4
cmp dl, 0x40
je 0x1400449e7
test dl, dl
jne case.0x14004555a.1
mov ebp, ebx
and ebp, 6
cmp ebp, 4
jne 0x140044ce4
cmp edx, 0x40
jne case.0x14004555a.1
and ebx, 7
add rax, rcx
mov rdx, qword [r15]
mov ecx, dword [r15 + 0x20]
cmp ebx, 4
jne 0x140044df7
lea ebp, [rcx + 4]
test rdx, rdx
je 0x1400451e0
mov rdx, qword [rsp + 0x40]
cmp ebp, dword [rdx]
jbe 0x1400453b1
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 4
jmp 0x14004399d
cmp bl, 0x44
jne 0x14004399d
cmp byte [rax + rcx + 1], 0x89
jne 0x14004399d
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 2]
cmp qword [r15], 0
jne 0x1400455c6
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r14 + 0x10], 2
jmp 0x140043dcc
mov rdx, qword [rsp + 0x38]
mov byte [rdx], 0
lea edx, [rax + 8]
cmp edx, ebp
jbe 0x140044c4c
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x14004399d
cmp edx, dword [rsp + 0x90]
jbe 0x140044d84
mov byte [rsp + 0x94], 0
jmp 0x1400443ec
mov edx, dword [rsp + 0x90]
cmp ebp, edx
jbe 0x140044d9a
mov byte [rsp + 0x94], 0
mov dword [rsp + 0x8c], ecx
cmp ecx, edx
jae 0x140044fce
mov rax, qword [rsp + 0x78]
mov ecx, ecx
mov byte [rax + rcx], 0x49
mov ecx, dword [rsp + 0x88]
add ecx, 1
mov dword [rsp + 0x88], ecx
cmp qword [rsp + 0x68], 0
je 0x140044425
mov edx, dword [rsp + 0x90]
cmp ecx, edx
jb 0x140044fde
mov byte [rsp + 0x94], 0
lea eax, [rcx + 8]
cmp eax, edx
jbe 0x140045018
mov byte [rsp + 0x94], 0
cmp ecx, edx
jae 0x140045057
mov rax, qword [rsp + 0x78]
mov ecx, ecx
mov byte [rax + rcx], 0x41
mov ecx, dword [rsp + 0x88]
add ecx, 1
mov dword [rsp + 0x88], ecx
cmp qword [rsp + 0x68], 0
je 0x140044447
mov edx, dword [rsp + 0x90]
cmp ecx, edx
jb 0x140045067
mov byte [rsp + 0x94], 0
cmp ecx, edx
jae 0x14004509e
mov rax, qword [rsp + 0x78]
mov ecx, ecx
mov byte [rax + rcx], 0xe3
add dword [rsp + 0x88], 1
cmp qword [rsp + 0x68], 0
mov ebp, 1
je 0x140044460
cmp byte [rsp + 0x94], 0
je 0x140044460
mov ebx, dword [rsp + 0x8c]
add rbx, qword [rsp + 0x80]
je 0x140044460
mov byte [rsp + 0x67], 0xb8
lea rsi, [rsp + 0xd0]
lea rdx, [rsp + 0x67]
mov rcx, rsi
call fcn.14000d170
and ebx, 0x7fffffff
mov rcx, rsi
mov edx, ebx
call fcn.14000d1c0
mov byte [rsp + 0x67], 0x48
lea rdx, [rsp + 0x67]
mov rcx, rsi
call fcn.14000d170
mov byte [rsp + 0x67], 0x63
lea rdx, [rsp + 0x67]
mov rcx, rsi
call fcn.14000d170
mov byte [rsp + 0x67], 0xc0
lea rdx, [rsp + 0x67]
mov rcx, rsi
call fcn.14000d170
mov byte [rsp + 0x67], 0xff
lea rdx, [rsp + 0x67]
mov rcx, rsi
call fcn.14000d170
mov byte [rsp + 0x67], 0xe0
lea rdx, [rsp + 0x67]
mov rcx, rsi
call fcn.14000d170
xor ebp, ebp
jmp 0x140044460
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x140044994
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov eax, eax
mov qword [rdx + rax], rcx
mov rax, qword [rsp + 0x30]
add dword [rax], 8
jmp 0x14004399d
cmp dl, 0x60
jne case.0x14004555a.1
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 5]
cmp qword [r15], 0
je 0x140044d73
mov rcx, qword [rsp + 0x40]
cmp ebp, dword [rcx]
ja 0x140044958
add rax, rdi
jmp 0x140044dd1
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 8
jmp 0x14004399d
lea eax, [rdx + 1]
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
add edx, 9
mov ebx, edx
mov rax, qword [rsp + 0x30]
mov dword [rax], ebx
jmp 0x14004399d
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
ja 0x140044088
mov rbp, qword [rsp + 0x48]
mov rbp, qword [rbp]
mov al, byte [rcx + rax]
mov byte [rbp + rdx], al
jmp 0x1400442b5
mov edx, dword [r15 + 0x20]
lea ebp, [rdx + 2]
cmp qword [r15], 0
je 0x140044d10
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
ja 0x1400441ab
mov rbp, qword [rsp + 0x48]
mov rbp, qword [rbp]
movzx eax, word [rax + rcx]
jmp 0x140044290
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 2
jmp 0x14004399d
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov rax, qword [rax + rdi]
mov qword [rcx + rdx], rax
mov rax, qword [rsp + 0x30]
add dword [rax], 8
add dword [r12], 8
jmp 0x14004399d
mov rbx, qword [rsp + 0x38]
mov byte [rbx], 0
lea ebx, [rdx + 8]
cmp ebx, ebp
ja 0x140044a71
add rax, rcx
add rax, r8
add rax, 4
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov edx, edx
mov qword [rcx + rdx], rax
jmp 0x140044c5a
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 5
jmp 0x14004399d
mov rdx, qword [rsp + 0x78]
mov qword [rdx + rcx], rax
add dword [rsp + 0x88], 8
jmp 0x1400443ec
mov rdx, qword [rsp + 0x78]
mov qword [rdx + rcx], rax
mov ecx, dword [rsp + 0x88]
add ecx, 8
mov dword [rsp + 0x88], ecx
mov dword [rsp + 0x8c], ecx
cmp qword [rsp + 0x68], 0
jne 0x140044fbf
mov ebp, ecx
jmp 0x140044419
add rax, rcx
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov bl, byte [rax + 4]
mov byte [rcx + rdx + 4], bl
mov eax, dword [rax]
mov dword [rcx + rdx], eax
mov rax, qword [rsp + 0x30]
add dword [rax], 5
add dword [r12], 5
jmp 0x14004399d
lea ebp, [rcx + 3]
test rdx, rdx
je 0x140044e27
mov rdx, qword [rsp + 0x40]
cmp ebp, dword [rdx]
ja 0x140044784
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov bl, byte [rax + 2]
mov byte [rdx + rcx + 2], bl
movzx eax, word [rax]
mov word [rdx + rcx], ax
jmp 0x1400448dc
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 3
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 6
jmp 0x1400439a2
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 6
jmp 0x1400439a2
cmp byte [rcx + rbp + 1], 0x3d
jne case.0x14004555a.1
add ebp, 2
mov dword [r12], ebp
cmp qword [r15], 0
mov eax, dword [r15 + 0x20]
je 0x1400451f1
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jae 0x1400453d0
mov rcx, qword [r15 + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [r15 + 0x20]
add eax, 1
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x1400451fb
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jb 0x1400453e0
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x140045205
cmp byte [rcx + rbp + 1], 0x48
jne case.0x14004555a.1
mov al, byte [rcx + rbp + 2]
and al, 0xfc
cmp al, 0x88
jne case.0x14004555a.1
mov eax, dword [r15 + 0x20]
lea edx, [rax + 3]
cmp qword [r15], 0
jne 0x14004573f
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
add dword [r14 + 0x10], 3
jmp 0x140043dcc
cmp dl, 0xc2
jg 0x1400450ab
cmp dl, 0x83
jne 0x1400454fe
mov al, byte [rcx + rbp + 1]
and al, 0xf8
cmp al, 0x60
jne case.0x14004555a.1
mov eax, dword [r15 + 0x20]
lea edx, [rax + 5]
cmp qword [r15], 0
je 0x14004516d
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
ja 0x140044958
add rcx, rbp
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov bl, byte [rcx + 4]
mov byte [rdx + rax + 4], bl
mov ecx, dword [rcx]
mov dword [rdx + rax], ecx
jmp 0x140044de5
cmp al, 0x25
je 0x1400455e5
cmp dl, 0xd0
jne 0x1400450f7
mov eax, dword [r15 + 0x20]
lea edx, [rax + 2]
cmp qword [r15], 0
je 0x14004559a
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
ja 0x1400441ab
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
movzx ecx, word [rcx + rbp]
mov word [rdx + rax], cx
jmp 0x140044295
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
add dword [r12], 2
jmp 0x1400439a2
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r12], 2
jmp 0x1400439a2
mov edx, dword [rsp + 0x90]
cmp ecx, edx
jb 0x140044abe
mov byte [rsp + 0x94], 0
cmp ecx, edx
jae 0x140044af5
mov rax, qword [rsp + 0x78]
mov ecx, ecx
mov byte [rax + rcx], 0xbb
mov eax, dword [rsp + 0x88]
lea ecx, [rax + 1]
mov dword [rsp + 0x88], ecx
add eax, 9
cmp qword [rsp + 0x68], 0
je 0x140044434
mov edx, dword [rsp + 0x90]
cmp eax, edx
ja 0x140044b08
mov rax, qword [rsp + 0x78]
mov ecx, ecx
mov rdx, qword [rsp + 0x1e0]
mov qword [rax + rcx], rdx
mov ecx, dword [rsp + 0x88]
add ecx, 8
mov dword [rsp + 0x88], ecx
cmp qword [rsp + 0x68], 0
je 0x14004443d
mov edx, dword [rsp + 0x90]
cmp ecx, edx
jb 0x140044b18
mov byte [rsp + 0x94], 0
cmp ecx, edx
jae 0x140044b4f
mov rax, qword [rsp + 0x78]
mov ecx, ecx
mov byte [rax + rcx], 0xff
mov ecx, dword [rsp + 0x88]
add ecx, 1
mov dword [rsp + 0x88], ecx
cmp qword [rsp + 0x68], 0
je 0x140044451
mov edx, dword [rsp + 0x90]
cmp ecx, edx
jb 0x140044b5f
mov byte [rsp + 0x94], 0
jmp 0x14004445b
lea eax, [rdx + 0x3d]
cmp al, 0x33
jbe 0x140045549
lea eax, [rdx - 0x74]
cmp al, 2
jae 0x1400455b8
movzx eax, byte [rcx + rbp + 1]
xor r8d, r8d
cmp dl, 0x75
sete r8b
lea edx, [rbp + 2]
mov dword [r12], edx
add rdx, rcx
add rdx, rax
mov rcx, r15
call fcn.14000cc30
test al, al
mov r8d, dword [rsp + 0x2c]
jne 0x1400439a2
jmp case.0x14004555a.1
and al, 0x38
cmp al, 0x20
jne case.0x14004555a.1
mov rax, qword [r14]
mov qword [rsp + 0xd0], rax
lea rax, [rcx + rbp]
add rax, 1
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0xe0], 0
lea rcx, [rsp + 0xd0]
xor edx, edx
call fcn.140046680
test eax, eax
js case.0x14004555a.1
lea ebx, [rax + 1]
cmp qword [r15], 0
mov ecx, dword [r15 + 0x20]
lea eax, [rcx + rax + 1]
je 0x140045785
mov rdx, qword [rsp + 0x40]
cmp eax, dword [rdx]
jbe 0x14004578e
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x1400457ad
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
add dword [r12], 5
jmp 0x14004399d
add edx, 2
mov rcx, qword [r14]
mov qword [rsp + 0xd0], rcx
add rax, rdx
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0xe0], 0
lea rcx, [rsp + 0xd0]
xor edx, edx
call fcn.140046680
lea ebx, [rax + 1]
cmp qword [r15], 0
mov ecx, dword [r15 + 0x20]
lea eax, [rcx + rax + 1]
je 0x14004570f
mov rdx, qword [rsp + 0x40]
cmp eax, dword [rdx]
jbe 0x1400455ab
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x140043999
mov rax, qword [rsp + 0x30]
mov dword [rax], ebp
add dword [r12], 4
jmp 0x14004399d
add eax, 1
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
add eax, 1
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
mov edx, dword [r12]
mov rbp, qword [r13]
movsxd r8, dword [rbp + rdx]
lea eax, [rdx + 4]
mov dword [r12], eax
cmp qword [r15], 0
mov eax, dword [r15 + 0x20]
je 0x140045312
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jae 0x1400453fb
mov rcx, qword [r15 + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [r15 + 0x20]
add eax, 1
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x14004531c
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jb 0x14004540b
mov rbx, qword [rsp + 0x38]
mov byte [rbx], 0
lea ebx, [rax + 8]
cmp ebx, ecx
jbe 0x14004543c
mov rdx, qword [rsp + 0x38]
mov byte [rdx], 0
cmp eax, ecx
jae 0x140045475
mov rcx, qword [r15 + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x41
mov eax, dword [r15 + 0x20]
add eax, 1
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x14004533e
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jb 0x140045485
mov rdx, qword [rsp + 0x38]
mov byte [rdx], 0
cmp eax, ecx
jae 0x1400454b3
mov rcx, qword [r15 + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x3b
mov edx, dword [r15 + 0x20]
lea eax, [rdx + 1]
mov dword [r15 + 0x20], eax
add edx, 2
cmp qword [r15], 0
je 0x140045357
mov ebp, dword [r12]
add rbp, qword [r13]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp edx, ecx
ja 0x1400454ce
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov eax, eax
mov dl, byte [rbp]
mov byte [rcx + rax], dl
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x14004535e
add eax, 1
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
lea ecx, [rax + 1]
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
add eax, 9
mov ebx, eax
mov rax, qword [rsp + 0x30]
mov dword [rax], ebx
mov eax, ebx
add eax, 1
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
add eax, 1
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
lea ecx, [rax + 1]
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
add eax, 2
mov edx, eax
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
add dword [r12], 1
cmp qword [r15], 0
mov eax, dword [r15 + 0x20]
je 0x140044728
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jae 0x1400454db
mov rcx, qword [r15 + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [r15 + 0x20]
add eax, 1
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x140044732
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jae 0x140044a71
jmp 0x1400454eb
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov eax, dword [rax]
mov dword [rdx + rcx], eax
mov rax, qword [rsp + 0x30]
add dword [rax], 4
add dword [r12], 4
jmp 0x14004399d
mov rdx, qword [rsp + 0x38]
mov byte [rdx], 0
cmp eax, ecx
jae 0x140044eb6
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov eax, eax
mov byte [rcx + rax], 0x53
mov rax, qword [rsp + 0x30]
add dword [rax], 1
jmp 0x140045205
mov rbx, qword [rsp + 0x38]
mov byte [rbx], 0
cmp eax, ecx
jae 0x140045262
mov rcx, qword [r15 + 0x10]
mov eax, eax
mov byte [rcx + rax], 0xbb
mov ebx, dword [r15 + 0x20]
lea eax, [rbx + 1]
mov dword [r15 + 0x20], eax
add ebx, 9
cmp qword [r15], 0
je 0x14004532b
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp ebx, ecx
ja 0x140045275
add rbp, rdx
lea rcx, [r8 + rbp]
add rcx, 4
mov rdx, qword [r15 + 0x10]
mov eax, eax
mov qword [rdx + rax], rcx
mov eax, dword [r15 + 0x20]
add eax, 8
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x140045334
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jb 0x140045285
mov rdx, qword [rsp + 0x38]
mov byte [rdx], 0
cmp eax, ecx
jae 0x1400452b3
mov rcx, qword [r15 + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x80
mov eax, dword [r15 + 0x20]
add eax, 1
mov dword [r15 + 0x20], eax
cmp qword [r15], 0
je 0x140045348
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx]
cmp eax, ecx
jb 0x1400452c3
mov rdx, qword [rsp + 0x38]
mov byte [rdx], 0
mov ebp, dword [r12]
add rbp, qword [r13]
lea edx, [rax + 1]
cmp edx, ecx
jbe 0x1400452f8
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
jmp 0x14004535e
mov rdx, qword [rsp + 0x38]
mov byte [rdx], 0
cmp eax, ecx
jae 0x140044a71
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
mov eax, eax
mov byte [rcx + rax], 0x5b
jmp 0x140044828
cmp dl, 0x85
jne case.0x14004555a.1
mov rax, qword [r14]
mov qword [rsp + 0xd0], rax
lea rax, [rcx + rbp]
add rax, 1
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0xe0], 0
lea rcx, [rsp + 0xd0]
xor edx, edx
call fcn.140046680
test eax, eax
jns 0x140043958
jmp case.0x14004555a.1
movzx eax, al
lea rbx, [0x1400457bc]
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
mov eax, dword [r15 + 0x20]
lea edx, [rax + 1]
cmp qword [r15], 0
je 0x140045589
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
ja 0x14004411e
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov cl, byte [rcx + rbp]
mov byte [rdx + rax], cl
jmp 0x1400448b1
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
add dword [r12], 1
jmp 0x14004399d
mov rax, qword [rsp + 0x30]
mov dword [rax], edx
add dword [r12], 2
jmp 0x14004399d
mov edx, dword [r14 + 0x10]
add rdx, qword [r14 + 8]
jmp 0x140043982
cmp dl, 0x33
jne case.0x14004555a.1
jmp 0x140044f69
mov rbx, qword [rsp + 0x40]
cmp ebp, dword [rbx]
jbe 0x14004571b
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r14 + 0x10], 2
jmp 0x140043dcc
lea eax, [rbp + 2]
mov dword [r12], eax
lea rdx, [rcx + rax]
movsxd rax, dword [rcx + rax]
add ebp, 6
mov dword [r12], ebp
mov rdx, qword [rax + rdx + 4]
mov rcx, r15
mov r8d, 2
call fcn.14000cc30
mov sil, 1
jmp 0x1400450e5
mov rax, qword [r14]
mov qword [rsp + 0xd0], rax
lea rax, [rcx + rbp]
add rax, 1
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0xe0], 0
lea rcx, [rsp + 0xd0]
xor edx, edx
call fcn.140046680
test eax, eax
jns 0x1400456fa
jmp case.0x14004555a.1
cmp byte [rcx + rbp + 1], 0xc0
jae 0x140044f69
jmp case.0x14004555a.1
xor esi, esi
cmp dl, 0xe9
sete sil
lea rax, [rbp + 1]
mov dword [r12], eax
mov r8d, esi
xor r8d, 3
lea rax, [rcx + rbp]
add rax, 1
movsxd rcx, dword [rcx + rbp + 1]
lea rdx, [rcx + rax + 4]
lea eax, [rbp + 5]
mov dword [r12], eax
mov rcx, r15
jmp 0x140044610
mov byte [rsp + 0x98], 0
mov rax, qword [r14]
mov qword [rsp + 0xd0], rax
lea rax, [rcx + rbp]
add rax, 1
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0xe0], 0
lea rcx, [rsp + 0xd0]
lea rdx, [rsp + 0x98]
call fcn.140046680
test eax, eax
js case.0x14004555a.1
cmp byte [rsp + 0x98], 0
jne case.0x14004555a.1
lea ebx, [rax + 2]
cmp qword [r15], 0
mov ecx, dword [r15 + 0x20]
lea eax, [rcx + rax + 2]
jne 0x14004396d
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
jmp 0x140043999
mov rbp, qword [rsp + 0x48]
mov rbp, qword [rbp]
movzx eax, word [rax + rcx]
mov word [rbp + rdx], ax
mov rax, qword [rsp + 0x30]
add dword [rax], 2
add dword [r14 + 0x10], 2
jmp 0x140043dcc
mov rbx, qword [rsp + 0x40]
cmp edx, dword [rbx]
jbe 0x14004575a
mov rax, qword [rsp + 0x38]
mov byte [rax], 0
add dword [r14 + 0x10], 3
jmp 0x140043dcc
add rcx, rbp
mov rdx, qword [rsp + 0x48]
mov rdx, qword [rdx]
mov bl, byte [rcx + 2]
mov byte [rdx + rax + 2], bl
movzx ecx, word [rcx]
mov word [rdx + rax], cx
mov rax, qword [rsp + 0x30]
add dword [rax], 3
add dword [r14 + 0x10], 3
jmp 0x140043dcc
mov rcx, qword [rsp + 0x30]
mov dword [rcx], eax
jmp 0x1400457ad
mov edx, dword [r12]
add rdx, qword [r13]
mov r8d, ebx
mov rax, qword [rsp + 0x48]
add rcx, qword [rax]
call sub.ntdll.dll_memcpy
mov rax, qword [rsp + 0x30]
add dword [rax], ebx
add dword [r12], ebx
mov sil, 1
jmp 0x14004399d