Function at 0x140002a60
Capabilities:
Check for software breakpoints
Get system information on windows
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x128
mov rsi, r9
mov rdi, r8
mov rbx, rdx
mov r15, rcx
mov rcx, qword [rsp + 0x198]
mov rax, qword [0x140041028]
xor rax, rsp
mov qword [rsp + 0x120], rax
mov qword [rcx], 0
cmp qword [r9], 0
je 0x140002ad0
cmp qword [rsi + 0x10], 0
je 0x140004f52
cmp qword [rsi + 0x18], 0
je 0x140004f52
cmp dword [rsi + 8], 0
je 0x140004f52
cmp byte [rsi + 0x34], 0
je 0x140004f52
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea r14, [rsi + 0x20]
mov ecx, dword [rsi + 0x20]
lea edx, [rcx + 8]
cmp qword [rsi], 0
je 0x140003c26
cmp edx, dword [rsi + 0x30]
ja 0x140003c2e
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x140002b33
mov al, byte [rsi + 0x34]
cmp qword [rsi + 0x10], 0
je 0x140004f52
cmp qword [rsi + 0x18], 0
je 0x140004f52
cmp dword [rsi + 8], 0
je 0x140004f52
test al, al
je 0x140004f52
mov ecx, dword [rbx + 0x10]
add rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov edx, dword [rsi + 0x20]
lea ecx, [rdx + 8]
cmp qword [rsi], 0
mov qword [rsp + 0x40], rdi
je case.0x140002e86.14
cmp ecx, dword [rsi + 0x30]
ja 0x140003c41
mov rcx, qword [rsi + 0x10]
mov qword [rcx + rdx], rax
mov ecx, dword [rsi + 0x20]
add ecx, 8
mov dword [rsi + 0x20], ecx
cmp qword [rsi], 0
je 0x140002ba0
mov al, byte [rsi + 0x34]
cmp qword [rsi + 0x10], 0
je 0x140004f44
cmp qword [rsi + 0x18], 0
je 0x140004f44
cmp dword [rsi + 8], 0
je 0x140004f44
test al, al
je 0x140004f44
mov eax, dword [rbx + 0x10]
mov rdx, qword [rbx + 8]
cmp byte [rdx + rax], 0x48
mov qword [rsp + 0x28], r14
jne 0x140002bbd
cmp byte [rdx + rax + 1], 0xb8
je 0x140003e50
mov dword [rsi + 0x24], ecx
mov dword [rsi + 0x28], ecx
cmp byte [r15 + 0x1c], 0
je 0x140003c4e
lea r10, [rsi + 0x28]
mov eax, dword [r15 + 0x18]
and eax, 2
mov ecx, eax
shr ecx, 1
mov dword [rsp + 0x3c], ecx
xor ecx, ecx
test eax, eax
sete cl
lea edi, [rcx + rcx*2]
add edi, 0xa
mov r12d, dword [rbx + 0x10]
cmp r12d, edi
mov qword [rsp + 0x30], r10
jae 0x140003085
xor ebp, ebp
lea r13, [0x140039214]
mov r15, qword [rbx + 8]
mov eax, r12d
mov r12, rax
test bpl, 1
jne 0x140003707
movzx ecx, byte [r15 + rax]
cmp rcx, 0xf
je 0x140003778
mov edx, ecx
and dl, 0xfc
cmp dl, 0x88
je 0x1400037a7
lea edx, [rcx - 0x40]
cmp edx, 2
jb 0x140002ebb
cmp ecx, 0x44
je 0x1400037dd
cmp ecx, 0x45
je 0x14000380c
mov edx, ecx
and dl, 0xfa
cmp dl, 0x48
je 0x140002d16
cmp ecx, 0x66
je 0x14000383b
mov edx, ecx
and dl, 0xf0
cmp dl, 0x50
je 0x140002d77
cmp ecx, 0x90
je 0x1400035fe
cmp ecx, 0x80
je 0x140003a99
cmp ecx, 0x65
je 0x140003ae5
mov edx, ecx
and dl, 0xf8
cmp dl, 0xb8
je 0x140003b31
cmp ecx, 0xd0
jle 0x140002e4f
lea edx, [rcx - 0xe8]
cmp edx, 2
jae 0x140003021
xor ebp, ebp
cmp ecx, 0xe9
sete bpl
lea rcx, [rax + 1]
mov dword [rbx + 0x10], ecx
mov r8d, 4
sub r8d, ebp
lea rcx, [r15 + rax]
inc rcx
movsxd rdx, dword [r15 + rax + 1]
add rdx, rcx
add rdx, 4
add eax, 5
mov dword [rbx + 0x10], eax
mov rcx, rsi
call fcn.140005070
mov r10, qword [rsp + 0x30]
test al, al
jne 0x140002da9
jmp 0x140004f44
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x140002d24
mov dword [r10], edx
cmp qword [rsi], 0
je 0x14000386a
cmp edx, dword [rsi + 0x30]
ja 0x140003872
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
mov ecx, dword [rbx + 0x10]
lea r12d, [rcx + 1]
mov dword [rbx + 0x10], r12d
mov r15, qword [rbx + 8]
movzx eax, byte [r15 + r12]
cmp eax, 0x82
jle 0x140002dbb
cmp eax, 0x83
je 0x140002f3e
cmp eax, 0x85
jne 0x140002dcf
jmp 0x140003b90
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x140002d85
mov dword [r10], edx
cmp qword [rsi], 0
je 0x140003c1e
cmp edx, dword [rsi + 0x30]
ja 0x140003a57
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
inc dword [rbx + 0x10]
mov r12d, dword [rbx + 0x10]
cmp r12d, edi
jb 0x140002c09
jmp 0x140003087
cmp eax, 0x81
je 0x140002f97
cmp eax, 0x2b
je 0x140003b90
mov edx, eax
and dl, 0xfd
cmp dl, 0x89
jne case.default.0x140002df9
lea eax, [rcx + 2]
movzx r9d, byte [r15 + rax]
mov edx, r9d
shr edx, 6
mov r14d, 1
movsxd rdx, dword [r13 + rdx*4]
add rdx, r13
jmp rdx
mov rax, qword [rsp + 0x28]
mov ecx, dword [rax]
lea eax, [rcx + r14]
inc eax
cmp ecx, dword [r10]
jne 0x140002e10
mov dword [r10], eax
inc r14d
cmp qword [rsi], 0
je 0x140004a8d
cmp eax, dword [rsi + 0x30]
ja 0x140004806
add r15, r12
mov r8d, r14d
add rcx, qword [rsi + 0x10]
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
add dword [rsi + 0x20], r14d
add dword [rbx + 0x10], r14d
mov r14, qword [rsp + 0x28]
mov r10, qword [rsp + 0x30]
jmp 0x140002da9
cmp ecx, 0x84
jle 0x14000357c
cmp ecx, 0x85
jne case.default.0x140002e86
movzx ecx, byte [rax + r15 + 1]
mov edx, ecx
shr edx, 6
mov r14d, 1
lea r8, [0x140039204]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
mov rcx, qword [rsp + 0x28]
mov ecx, dword [rcx]
lea edx, [rcx + r14]
inc edx
cmp ecx, dword [r10]
jne 0x140002e9d
mov dword [r10], edx
inc r14d
cmp qword [rsi], 0
je 0x140004292
cmp edx, dword [rsi + 0x30]
ja 0x140004806
add r15, rax
jmp 0x140002e29
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x140002ec9
mov dword [r10], edx
cmp qword [rsi], 0
je 0x140003ff8
cmp edx, dword [rsi + 0x30]
ja 0x140004000
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
mov ecx, dword [rbx + 0x10]
inc ecx
mov dword [rbx + 0x10], ecx
mov rax, qword [rbx + 8]
movzx edx, byte [rax + rcx]
mov r8d, edx
and r8b, 0xf0
cmp r8b, 0x50
jne 0x140004009
mov edx, dword [r14]
lea r8d, [rdx + 1]
cmp edx, dword [r10]
jne 0x140002f1a
mov dword [r10], r8d
cmp qword [rsi], 0
je 0x140004065
cmp r8d, dword [rsi + 0x30]
ja 0x140003a57
mov r8, qword [rsi + 0x10]
mov al, byte [rax + rcx]
mov byte [r8 + rdx], al
jmp 0x140002da3
movzx eax, byte [r15 + r12 + 1]
and eax, 0xfffffff8
cmp eax, 0xe8
jne 0x1400040f0
mov eax, dword [r14]
lea ecx, [rax + 3]
cmp eax, dword [r10]
jne 0x140002f60
mov dword [r10], ecx
cmp qword [rsi], 0
je 0x140004140
cmp ecx, dword [rsi + 0x30]
ja 0x140004148
add r15, r12
mov rcx, qword [rsi + 0x10]
mov dl, byte [r15 + 2]
mov byte [rcx + rax + 2], dl
movzx edx, word [r15]
mov word [rcx + rax], dx
add dword [rsi + 0x20], 3
add dword [rbx + 0x10], 3
jmp 0x140002da9
mov al, byte [r15 + r12 + 1]
and al, 0xf8
cmp al, 0xe8
jne 0x140004f44
mov eax, dword [r14]
lea ecx, [rax + 6]
cmp eax, dword [r10]
jne 0x140002fb4
mov dword [r10], ecx
cmp qword [rsi], 0
je 0x140004281
cmp ecx, dword [rsi + 0x30]
ja 0x140004289
add r15, r12
mov rcx, qword [rsi + 0x10]
movzx edx, word [r15 + 4]
mov word [rcx + rax + 4], dx
mov edx, dword [r15]
mov dword [rcx + rax], edx
add dword [rsi + 0x20], 6
add dword [rbx + 0x10], 6
jmp 0x140002da9
mov ecx, 2
and r9b, 7
xor r14d, r14d
cmp r9b, 4
sete r14b
add r14d, ecx
jmp case.0x140002df9.3
mov edx, 2
and cl, 7
xor r14d, r14d
cmp cl, 4
sete r14b
add r14d, edx
jmp case.0x140002e86.3
cmp ecx, 0xd1
je 0x14000475a
cmp ecx, 0xf6
je 0x14000479e
lea edx, [rcx - 0x73]
cmp dl, 2
ja 0x1400044e1
lea rdx, [0x140039048]
mov r8d, dword [rdx + rcx*4 - 0x1cc]
lea rcx, [r15 + rax]
movzx edx, byte [r15 + rax + 1]
add eax, 2
mov dword [rbx + 0x10], eax
add rdx, rcx
add rdx, 2
mov rcx, rsi
call fcn.140005070
test al, al
mov r10, qword [rsp + 0x30]
jne 0x140002da9
jmp 0x140004f44
xor ebp, ebp
cmp r12d, 0x64
ja 0x140004f44
test bpl, 1
jne 0x1400030b4
mov edx, r12d
add rdx, qword [rbx + 8]
mov rcx, rsi
mov r8d, 3
call fcn.140005070
test al, al
je 0x140004f44
cmp byte [rsi + 0x34], 0
je 0x140004f44
cmp qword [rsi], 0
je 0x140004f44
mov eax, dword [rsi + 0x20]
mov ecx, dword [rsi + 0x24]
mov dword [rsi + 0x2c], eax
add rcx, qword [rsi + 0x18]
mov qword [rsp + 0x48], rcx
je 0x140004f44
mov r14d, dword [rbx + 0x10]
mov r13, qword [rbx + 8]
lea rdx, [rsp + 0x80]
mov qword [rdx], 0
mov rcx, r13
xor r8d, r8d
call qword [sym.imp.ntdll.dll_RtlLookupFunctionEntry]
test rax, rax
je 0x1400033a3
mov rcx, qword [rsp + 0x80]
mov r15d, dword [rax]
add r15d, ecx
mov eax, dword [rax + 8]
lea rbp, [rcx + rax]
movzx eax, byte [rcx + rax + 2]
lea rdi, [rax*2 + 4]
mov rcx, rdi
call qword [sym.imp.mozglue.dll_moz_xmalloc]
mov r12, rax
mov rcx, rax
mov rdx, rbp
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
cmp r13d, r15d
jne 0x14000339a
movzx eax, byte [r12 + 2]
test eax, eax
je case.default.0x140003189
movzx edx, byte [r12 + 5]
mov r8d, edx
and r8d, 0xf
cmp r8d, 0xa
ja case.default.0x140003189
mov r9b, 1
mov cl, 3
lea r10, [0x140039224]
lea edx, [0x140039224]
lea edx, [0x140039224]
movsxd r8, dword [r10 + r8*4]
add r8, r10
jmp r8
mov rcx, qword [rsp + 0x30]
mov ecx, dword [rcx]
mov r8b, byte [r12 + 1]
cmp ecx, r14d
jae 0x1400031a9
movzx edx, r8b
cmp ecx, edx
jb 0x14000339a
lea rcx, [r12 + 1]
xor edx, edx
lea r10, [0x140039250]
add dword [rcx], esi
ror byte [rbp + rcx*4 + 0x15], cl
cdq
invalid
movzx r11d, dl
movzx r11d, byte [r12 + r11*2 + 4]
mov dh, 0x5c
pop rsp
add al, 0x45
cmp esi, ebx
mov dh, 0x5c
pop rsp
add al, 0x45
cmp esi, ebx
jae 0x140003214
add dl, r9b
cmp dl, al
jae case.default.0x1400031f6
movzx r11d, dl
movzx ebp, byte [rcx + r11*2 + 4]
mov r13d, ebp
and r13d, 0xf
cmp r13d, 0xa
ja case.default.0x1400031f6
mov dil, 3
movsxd r15, dword [r10 + r13*4]
add r15, r10
jmp r15
mov ebp, eax
sub ebp, r11d
movzx r11d, dil
movzx r9d, r9b
cmp ebp, r11d
cmovge r9d, r11d
jge 0x1400031b7
jmp case.default.0x1400031f6
sub al, dl
mov r10b, byte [r12]
test r10b, 0x20
jne 0x14000339a
mov edi, dword [rsi + 0x20]
mov r9d, dword [rsi + 0x30]
add edi, 3
and edi, 0xfffffffc
cmp edi, r9d
ja 0x1400036fe
mov dword [rsi + 0x20], edi
cmp byte [rsi + 0x34], 0
je 0x14000339a
and r10b, 0xc7
mov byte [r12], r10b
mov byte [r12 + 2], al
movzx r8d, r8b
cmp r14d, r8d
jae 0x140003260
mov byte [rcx], r14b
cmp qword [rsi], 0
je 0x140003cab
lea rcx, [rdi + 4]
cmp rcx, r9
ja 0x1400036fe
mov rcx, qword [rsi + 0x10]
mov r8d, dword [r12]
mov dword [rcx + rdi], r8d
mov ecx, dword [rsi + 0x20]
add ecx, 4
cmp byte [rsi + 0x34], 0
mov dword [rsi + 0x20], ecx
je 0x14000339a
movzx r13d, al
add r13, r13
cmp qword [rsi], 0
je 0x140003cb5
mov ecx, ecx
lea rax, [rcx + r13]
mov r8d, dword [rsi + 0x30]
cmp rax, r8
ja 0x1400036fe
movzx eax, dl
lea rdx, [r12 + rax*2]
add rdx, 4
add rcx, qword [rsi + 0x10]
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
add r13d, dword [rsi + 0x20]
cmp byte [rsi + 0x34], 0
mov dword [rsi + 0x20], r13d
je 0x14000339a
add r13d, 3
and r13d, 0xfffffffc
mov ecx, dword [rsi + 0x30]
cmp r13d, ecx
ja 0x1400036fe
mov dword [rsi + 0x20], r13d
mov eax, r13d
add eax, 4
cmp qword [rsi], 0
je 0x14000387b
cmp eax, ecx
ja 0x1400036fe
mov eax, dword [rsi + 0x24]
mov rcx, qword [rsi + 0x10]
mov dword [rcx + r13], eax
mov ecx, dword [rsi + 0x20]
lea eax, [rcx + 4]
cmp byte [rsi + 0x34], 0
mov dword [rsi + 0x20], eax
je 0x14000339a
cmp qword [rsi], 0
je 0x14000387b
add ecx, 8
cmp ecx, dword [rsi + 0x30]
ja 0x1400036fe
mov ecx, dword [rsi + 0x2c]
mov rdx, qword [rsi + 0x10]
mov eax, eax
mov dword [rdx + rax], ecx
mov ecx, dword [rsi + 0x20]
lea eax, [rcx + 4]
cmp byte [rsi + 0x34], 0
mov dword [rsi + 0x20], eax
je 0x14000339a
cmp qword [rsi], 0
je 0x140003885
add ecx, 8
cmp ecx, dword [rsi + 0x30]
ja 0x1400036fe
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov dword [rcx + rax], edi
add dword [rsi + 0x20], 4
cmp byte [rsi + 0x34], 0
je 0x14000339a
mov r8, qword [rsi + 0x18]
lea rcx, [r8 + r13]
mov edx, 1
call qword [sym.imp.ntdll.dll_RtlAddFunctionTable]
mov rcx, r12
call qword [sym.imp.mozglue.dll_free]
mov r9d, dword [rbx + 0x10]
test r9, r9
je 0x140003cc5
mov rdx, qword [rbx]
mov r8, qword [rbx + 8]
lea r12, [rsp + 0xb8]
mov qword [r12 - 0x38], rdx
mov qword [r12 - 0x30], r8
mov qword [r12 - 0x28], r9
xor ebx, ebx
mov qword [r12 - 0x20], rbx
mov qword [r12 - 0x10], rbx
mov qword [r12 - 8], 0x20
mov qword [r12 - 0x18], r12
mov byte [r12 + 0x20], 1
lea rdi, [rsp + 0xe0]
mov rcx, rdi
call fcn.140005360
cmp qword [rdi + 0x10], rbx
je 0x140004ea6
cmp byte [rsp + 0xd8], 0
je 0x140004ea6
cmp byte [rsp + 0x3c], 0
jne 0x140003cd0
lea rdi, [rsp + 0xa0]
mov rax, qword [rdi + 8]
cmp rax, qword [rdi + 0x10]
je 0x140003cfc
mov rcx, qword [rsp + 0xa0]
mov byte [rcx + rax], 0x49
mov rax, qword [rsp + 0xa8]
inc rax
mov qword [rsp + 0xa8], rax
inc dword [rsp + 0x98]
cmp rax, qword [rsp + 0xb0]
je 0x140003d1e
mov rcx, qword [rsp + 0xa0]
mov byte [rcx + rax], 0xbb
mov rax, qword [rsp + 0xa8]
inc rax
mov qword [rsp + 0xa8], rax
inc dword [rsp + 0x98]
lea rcx, [rax + 8]
cmp rcx, qword [rsp + 0xb0]
ja 0x140003d40
mov rcx, qword [rsp + 0xa0]
mov rdx, qword [rsp + 0x190]
mov qword [rcx + rax], rdx
mov rax, qword [rsp + 0xa8]
add rax, 8
mov qword [rsp + 0xa8], rax
add dword [rsp + 0x98], 8
cmp rax, qword [rsp + 0xb0]
je 0x140003d62
mov rcx, qword [rsp + 0xa0]
mov byte [rcx + rax], 0x41
mov rax, qword [rsp + 0xa8]
inc rax
mov qword [rsp + 0xa8], rax
inc dword [rsp + 0x98]
cmp rax, qword [rsp + 0xb0]
je 0x140003d84
mov rcx, qword [rsp + 0xa0]
mov byte [rcx + rax], 0xff
dec dword [rax - 0x75]
test byte [rax + rbp*4], ah
add byte [rax], al
add byte [rax - 1], cl
ror byte [rax - 0x77], 0x84
and al, 0xa8
test al, 0
add byte [rax], al
dec dword [rax - 0x75]
test byte [rax + rbp*4], ah
add byte [rax], al
add byte [rax - 1], cl
ror byte [rax - 0x77], 0x84
and al, 0xa8
test al, 0
add byte [rax], al
invalid
test byte [rax + rbx*4], ah
test al, 0
add byte [rax], al
inc dword [rsp + 0x98]
add byte [rax], al
add byte [rax + 0x3b], cl
test byte [rax + rsi*4], ah
add byte [rax], al
add byte [rdi], cl
test byte [rbp + 8], bl
add byte [rax], al
cmp rax, qword [rsp + 0xb0]
cmp eax, dword [rsp + 0xb0]
mov al, 0
add byte [rax], al
je 0x140003da6
mov rcx, qword [rsp + 0xa0]
mov ecx, dword [rsp + 0xa0]
and al, 0xa0
add byte [rax], al
add dh, al
add al, 1
jrcxz 0x14000353f
mov byte [rcx + rax], 0xe3
jmp 0x140004ff1
xchg edi, eax
sbb al, byte [rax]
add byte [rcx - 0x3676befe], dh
mov cl, 2
mov r9d, ecx
mov cl, 2
mov r9d, ecx
cmp al, cl
jae case.0x140003189.0
jmp case.default.0x140003189
mov dil, 1
jmp case.0x1400031f6.5
mov dil, 2
jmp case.0x1400031f6.5
cmp ecx, 0x33
je 0x140004766
cmp ecx, 0x83
jne 0x140003039
mov cl, byte [r15 + rax + 1]
cmp cl, 0xc0
jb 0x14000450b
mov rcx, qword [rsp + 0x28]
mov ecx, dword [rcx]
lea edx, [rcx + 3]
mov r8, qword [rsp + 0x30]
cmp ecx, dword [r8]
jne 0x1400035bb
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x1400048f8
cmp edx, dword [rsi + 0x30]
ja 0x14000439b
add r15, rax
mov rax, qword [rsi + 0x10]
mov dl, byte [r15 + 2]
mov byte [rax + rcx + 2], dl
movzx edx, word [r15]
mov word [rax + rcx], dx
jmp 0x14000454b
cmp ecx, 0xc3
je 0x1400035fe
cmp ecx, 0xcc
jne 0x140003039
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x140003611
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x140003fe0
cmp edx, dword [rsi + 0x30]
jbe 0x14000423f
xor byte [rdi], cl
xchg byte [rbx], bl
or al, 0
add dh, al
xor al, 0
mov byte [rsi + 0x34], 0
jmp 0x14000424d
mov edx, r9d
and edx, 7
cmp edx, 5
jne 0x140004b67
shr r9b, 3
lea eax, [rcx + 3]
lea r8, [r15 + rax]
add ecx, 7
mov edx, r9d
mov dword [rbx + 0x10], eax
movsxd rax, dword [r15 + rax]
add r8, rax
add r8, 4
mov dword [rbx + 0x10], ecx
and dl, 7
mov r14, qword [rsp + 0x28]
jne 0x140004b8f
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x140004a99
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x140004bcd
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], 0xa1
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x140004a9b
mov ecx, dword [rsi + 0x30]
lea edx, [rax + 8]
cmp edx, ecx
ja 0x140004bd6
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov qword [rcx + rax], r8
add dword [rsi + 0x20], 8
jmp 0x140002da9
mov r8d, ecx
and r8d, 7
cmp r8d, 5
je 0x140004f44
mov edx, 1
cmp r8d, 4
jne 0x14000300c
mov dl, byte [r15 + rax + 2]
and dl, 7
xor r8d, r8d
cmp dl, 5
sete r8b
lea edx, [r8*4 + 1]
jmp 0x14000300c
mov byte [rsi + 0x34], 0
jmp 0x14000339a
movzx ecx, byte [r15 + r12]
cmp ecx, 0xcc
je 0x14000371c
cmp ecx, 0x90
jne 0x140003741
mov ecx, r12d
mov edx, edi
inc r12
inc ecx
mov dword [rbx + 0x10], ecx
cmp r12, rdx
mov r14, qword [rsp + 0x28]
mov r10, qword [rsp + 0x30]
jb 0x140002c13
jmp 0x140003087
cmp qword [rsp + 0x40], 0
je 0x140004f44
mov rcx, qword [rsp + 0x40]
call fcn.1400370b0
test al, al
je 0x140004f44
mov r12d, dword [rbx + 0x10]
mov al, 1
mov dword [rsp + 0x3c], eax
cmp r12d, 9
ja 0x140003087
jmp 0x140004f44
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x14000378b
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x140003894
cmp edx, dword [rsi + 0x30]
jbe 0x140003a60
mov byte [rsi + 0x34], 0
jmp 0x14000389b
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x1400037ba
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x140003917
cmp edx, dword [rsi + 0x30]
ja 0x140003966
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
jmp 0x140003981
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x1400037f0
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x140003920
cmp edx, dword [rsi + 0x30]
jbe 0x140003a73
mov byte [rsi + 0x34], 0
jmp 0x140003927
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x14000381f
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x140003a00
cmp edx, dword [rsi + 0x30]
jbe 0x140003a86
mov byte [rsi + 0x34], 0
jmp 0x140003a07
mov ecx, dword [r14]
lea edx, [rcx + 1]
cmp ecx, dword [r10]
jne 0x14000384e
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x140003e77
cmp edx, dword [rsi + 0x30]
jbe 0x140003f86
mov byte [rsi + 0x34], 0
jmp 0x140003e7e
mov dword [r14], edx
jmp 0x140002d45
mov byte [rsi + 0x34], 0
jmp 0x140002d45
add eax, 4
mov rcx, qword [rsp + 0x28]
mov dword [rcx], eax
add eax, 4
mov rcx, qword [rsp + 0x28]
mov dword [rcx], eax
jmp 0x140003387
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
mov edx, dword [rbx + 0x10]
lea eax, [rdx + 1]
mov dword [rbx + 0x10], eax
mov rcx, qword [rbx + 8]
movzx r8d, byte [rcx + rax]
lea r9d, [r8 - 0x10]
cmp r9d, 2
jb 0x140003905
cmp r8d, 5
je 0x140003dc8
cmp r8d, 0x1f
jne 0x140003e09
mov rdx, qword [rsp + 0x28]
mov edx, dword [rdx]
lea r8d, [rdx + 1]
mov r9, qword [rsp + 0x30]
cmp edx, dword [r9]
jne 0x1400038e8
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x14000434b
cmp r8d, dword [rsi + 0x30]
jbe 0x1400044ce
mov byte [rsi + 0x34], 0
jmp 0x140004353
mov rdx, qword [rsp + 0x28]
mov edx, dword [rdx]
lea r8d, [rdx + 1]
mov r9, qword [rsp + 0x30]
jmp 0x14000394d
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
jmp 0x140003984
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
mov eax, dword [rbx + 0x10]
inc eax
mov dword [rbx + 0x10], eax
mov rcx, qword [rbx + 8]
cmp byte [rcx + rax], 0x89
mov rdx, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
jne 0x140004f44
mov edx, dword [rdx]
lea r8d, [rdx + 1]
cmp edx, dword [r9]
jne 0x14000395a
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x14000396c
cmp r8d, dword [rsi + 0x30]
jbe 0x140003976
mov byte [rsi + 0x34], 0
jmp 0x140003984
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
jmp 0x140003984
mov r8, qword [rsi + 0x10]
mov al, byte [rcx + rax]
mov byte [r8 + rdx], al
inc dword [rsi + 0x20]
mov r12d, dword [rbx + 0x10]
inc r12d
mov dword [rbx + 0x10], r12d
mov r14, qword [rbx + 8]
mov rcx, r14
mov edx, r12d
xor r8d, r8d
call fcn.1400190b0
mov r15d, eax
test eax, eax
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
js 0x140004f44
mov ecx, dword [rax]
lea eax, [rcx + r15]
cmp ecx, dword [rdx]
jne 0x1400039c7
mov rdx, qword [rsp + 0x30]
mov dword [rdx], eax
cmp qword [rsi], 0
je 0x1400039d8
cmp eax, dword [rsi + 0x30]
jbe 0x1400039e8
mov byte [rsi + 0x34], 0
jmp 0x1400039df
mov rcx, qword [rsp + 0x28]
mov dword [rcx], eax
add dword [rbx + 0x10], r15d
jmp 0x140002e40
mov edx, r12d
add rdx, r14
mov r8d, r15d
add rcx, qword [rsi + 0x10]
call sub.VCRUNTIME140.dll_memcpy
add dword [rsi + 0x20], r15d
jmp 0x1400039df
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
mov eax, dword [rbx + 0x10]
inc eax
mov dword [rbx + 0x10], eax
mov rcx, qword [rbx + 8]
cmp byte [rcx + rax], 0x33
mov rdx, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
jne 0x140004f44
mov edx, dword [rdx]
lea r8d, [rdx + 2]
cmp edx, dword [r9]
jne 0x140003a3a
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x140003fd3
cmp r8d, dword [rsi + 0x30]
jbe 0x140003b60
mov byte [rsi + 0x34], 0
jmp 0x140003b71
mov byte [rsi + 0x34], 0
jmp 0x140002da6
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
jmp 0x14000389b
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
jmp 0x140003927
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
jmp 0x140003a07
cmp byte [r15 + rax + 1], 0x3d
jne 0x140004f44
add eax, 2
mov dword [rbx + 0x10], eax
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x140004151
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x1400042aa
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x140004153
mov ecx, dword [rsi + 0x30]
jmp 0x1400042ae
cmp byte [r15 + rax + 1], 0x48
jne 0x140004f44
mov cl, byte [r15 + rax + 2]
and cl, 0xfc
cmp cl, 0x88
jne 0x140004f44
mov ecx, dword [r14]
lea edx, [rcx + 3]
cmp ecx, dword [r10]
jne 0x140003b15
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x14000422b
cmp edx, dword [rsi + 0x30]
jbe 0x14000432b
mov byte [rsi + 0x34], 0
jmp 0x140004232
mov ecx, dword [r14]
lea edx, [rcx + 5]
cmp ecx, dword [r10]
jne 0x140003b44
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x140003fec
cmp edx, dword [rsi + 0x30]
jbe 0x140004255
mov byte [rsi + 0x34], 0
jmp 0x14000426e
add cl, ch
invalid
mov r8, qword [rsi + 0x10]
movzx eax, word [rcx + rax]
mov word [r8 + rdx], ax
mov dword [rax + rdx], eax
add dword [rsi + 0x20], 2
add dword [rbx + 0x10], 2
jmp 0x140002e40
cmp dl, 0x1f
ja case.default.0x140003189
shr dl, 4
add dl, 2
mov ecx, edx
jmp case.0x140003189.5
cmp byte [r15 + r12 + 1], 0xc0
jb 0x140004f44
mov eax, dword [r14]
lea ecx, [rax + 2]
cmp eax, dword [r10]
jne 0x140003bae
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
cmp qword [rsi], 0
je 0x14000429e
cmp ecx, dword [rsi + 0x30]
ja 0x140003a4e
mov rcx, qword [rsi + 0x10]
movzx edx, word [r15 + r12]
mov word [rcx + rax], dx
jmp 0x140003b6d
mov edx, eax
and dl, 0xf8
cmp dl, 0xb8
jne 0x14000406d
mov rax, qword [rsp + 0x28]
mov eax, dword [rax]
lea ecx, [rax + 9]
mov rdx, qword [rsp + 0x30]
cmp eax, dword [rdx]
jne 0x140003bf8
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
cmp qword [rsi], 0
je 0x14000470b
cmp ecx, dword [rsi + 0x30]
jbe 0x14000473e
xor byte [rdi], cl
xchg byte [rbx], dh
or eax, dword [rax]
add dh, al
xor al, 0
mov byte [rsi + 0x34], 0
jmp 0x140004712
mov ecx, 5
jmp 0x140002ff0
mov dword [r14], edx
jmp 0x140002da6
mov dword [r14], edx
jmp 0x140002b33
mov byte [rsi + 0x34], 0
xor eax, eax
jmp 0x140002b0b
mov dword [r14], ecx
jmp 0x140002ba0
mov byte [rsi + 0x34], 0
xor eax, eax
mov ecx, edx
add byte [rcx], dh
ror byte [rcx - 0x10d5162f], 0xff
jmp 0x140002b78
int3
mov ecx, 0x2f1
jmp 0x140002b78
int3
call fcn.14003708e
mov dl, byte [r12]
and dl, 7
mov cl, 2
jmp 0x140003c6b
mov dl, byte [r12]
and dl, 7
cmp dl, 2
je case.0x140003189.5
mov rcx, qword [rsp + 0x30]
mov r9d, dword [rcx]
lea rcx, [r12 + 1]
xor edx, edx
mov r8b, byte [r12 + 1]
cmp r9d, r14d
jae case.default.0x1400031f6
movzx r10d, r8b
cmp r9d, r10d
jb 0x14000339a
cmp dl, al
jb 0x14000339a
xor edx, edx
xor eax, eax
jmp 0x140003216
lea ecx, [rdi + 4]
movzx r13d, al
add r13, r13
add r13d, ecx
mov rax, qword [rsp + 0x28]
mov dword [rax], r13d
jmp 0x1400032e3
int3
lea r8, [rsp + 0x80]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x190]
call fcn.140037100
test al, al
jne 0x140004e22
jmp 0x140004ea6
mov edx, 1
mov rcx, rdi
call fcn.14001d990
test al, al
je 0x140004db9
mov rax, qword [rsp + 0xa8]
jmp 0x140003437
mov edx, 1
mov rcx, rdi
call fcn.14001d990
test al, al
je 0x140004dce
mov rax, qword [rsp + 0xa8]
jmp 0x14000346b
mov edx, 8
mov rcx, rdi
call fcn.14001d990
test al, al
je 0x140004de3
mov rax, qword [rsp + 0xa8]
jmp 0x1400034a3
mov edx, 1
mov rcx, rdi
call fcn.14001d990
test al, al
je 0x140004df8
mov rax, qword [rsp + 0xa8]
jmp 0x1400034e1
mov edx, 1
mov rcx, rdi
call fcn.14001d990
test al, al
je 0x140004e0d
mov rax, qword [rsp + 0xa8]
jmp 0x140003515
mov edx, 1
mov rcx, rdi
call fcn.14001d990
test al, al
je 0x140005054
mov rax, qword [rsp + 0xa8]
jmp 0x140003549
mov rdx, qword [rsp + 0x28]
mov edx, dword [rdx]
lea r8d, [rdx + 1]
mov r9, qword [rsp + 0x30]
cmp edx, dword [r9]
jne 0x140003de5
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x1400043a4
cmp r8d, dword [rsi + 0x30]
ja 0x140003624
mov r8, qword [rsi + 0x10]
mov al, byte [rcx + rax]
mov byte [r8 + rdx], al
jmp 0x14000424a
lea eax, [r8 + 0x7d]
cmp al, 2
mov r14, qword [rsp + 0x28]
ja 0x140004f44
lea rax, [0x140039048]
mov r8d, dword [rax + r8*4 - 0x20c]
add edx, 2
mov dword [rbx + 0x10], edx
dec dword [rsi + 0x20]
mov eax, dword [rbx + 0x10]
mov rcx, qword [rbx + 8]
lea rdx, [rcx + rax]
movsxd rcx, dword [rcx + rax]
add rdx, rcx
add rdx, 4
add eax, 4
jmp 0x140002cf9
movzx r8d, byte [rdx + rax + 0xa]
cmp r8d, 0x50
je 0x140004408
cmp r8d, 0xff
jne 0x1400044c4
cmp byte [rdx + rax + 0xb], 0xe0
jmp 0x14000440d
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
mov ecx, dword [rbx + 0x10]
inc ecx
mov dword [rbx + 0x10], ecx
mov rax, qword [rbx + 8]
mov dl, byte [rax + rcx]
mov r8d, edx
and r8b, 0xfc
cmp r8b, 0x88
jne 0x140003f38
movzx edx, byte [rax + rcx + 1]
mov r8d, edx
and r8d, 0xffffffc0
mov r9d, 0xc0
cmp r8d, r9d
je 0x140003f99
cmp r8d, 0x40
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0x30]
je 0x140003ef7
test r8d, r8d
jne 0x140004f44
mov r9d, edx
and r9d, 6
cmp r9d, 4
jne 0x140003f99
cmp r8d, 0x40
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0x30]
jne 0x140004f44
and edx, 7
add rax, rcx
mov ecx, dword [r9]
mov r8d, dword [r10]
cmp edx, 4
jne 0x140004558
lea edx, [rcx + 4]
cmp ecx, r8d
jne 0x140003f1c
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x140004919
cmp edx, dword [rsi + 0x30]
jbe 0x1400049d5
mov byte [rsi + 0x34], 0
jmp 0x140004920
cmp dl, 0x44
jne 0x140002e40
cmp byte [rax + rcx + 1], 0x89
jne 0x140002e40
mov rdx, qword [rsp + 0x28]
mov edx, dword [rdx]
lea r8d, [rdx + 2]
mov r9, qword [rsp + 0x30]
cmp edx, dword [r9]
jne 0x140003f69
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x140004904
cmp r8d, dword [rsi + 0x30]
jbe 0x1400049b3
mov byte [rsi + 0x34], 0
jmp 0x14000490c
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
jmp 0x140003e7e
mov rdx, qword [rsp + 0x28]
mov edx, dword [rdx]
lea r8d, [rdx + 2]
mov r9, qword [rsp + 0x30]
cmp edx, dword [r9]
jne 0x140003fb6
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x140003fd3
cmp r8d, dword [rsi + 0x30]
ja 0x140003a4e
mov r8, qword [rsi + 0x10]
movzx eax, word [rax + rcx]
jmp 0x140003b68
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
jmp 0x140003b71
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
jmp 0x14000424d
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
jmp 0x14000426e
mov dword [r14], edx
jmp 0x140002eea
mov byte [rsi + 0x34], 0
jmp 0x140002eea
mov r8d, edx
and r8b, 0xf8
cmp r8b, 0xb8
jne 0x1400045da
mov rdx, qword [rsp + 0x28]
mov edx, dword [rdx]
lea r8d, [rdx + 5]
mov r9, qword [rsp + 0x30]
cmp edx, dword [r9]
jne 0x140004037
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x140004929
cmp r8d, dword [rsi + 0x30]
ja 0x140003b57
add rax, rcx
mov rcx, qword [rsi + 0x10]
mov r8b, byte [rax + 4]
mov byte [rcx + rdx + 4], r8b
mov eax, dword [rax]
mov dword [rcx + rdx], eax
jmp 0x14000426a
mov dword [r14], r8d
jmp 0x140002da6
cmp eax, 0xc6
jg 0x140004612
cmp eax, 0x63
je 0x140004818
cmp eax, 0x8d
jne 0x140004f44
mov r9b, byte [r15 + r12 + 1]
mov eax, r9d
and al, 0xc7
cmp al, 5
jne 0x140004a39
lea edx, [rcx + 3]
mov dword [rbx + 0x10], edx
movsxd r8, dword [r15 + rdx]
add ecx, 7
mov dword [rbx + 0x10], ecx
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x140004a99
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x140004c40
shr r9b, 3
or r9b, 0xb8
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], r9b
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x140004a9b
mov ecx, dword [rsi + 0x30]
jmp 0x140004c44
cmp eax, 0x60
jne 0x14000468e
mov rax, qword [rsp + 0x28]
mov eax, dword [rax]
lea ecx, [rax + 5]
mov rdx, qword [rsp + 0x30]
cmp eax, dword [rdx]
jne 0x140004113
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
cmp qword [rsi], 0
je 0x1400049c9
cmp ecx, dword [rsi + 0x30]
ja 0x140003b57
add r15, r12
mov rcx, qword [rsi + 0x10]
mov dl, byte [r15 + 4]
mov byte [rcx + rax + 4], dl
mov edx, dword [r15]
mov dword [rcx + rax], edx
jmp 0x14000426a
mov dword [r14], ecx
jmp 0x140002f8e
mov byte [rsi + 0x34], 0
jmp 0x140002f8e
inc eax
inc eax
mov rcx, qword [rsp + 0x28]
mov dword [rcx], eax
mov edx, dword [rbx + 0x10]
mov r8, qword [rbx + 8]
movsxd r9, dword [r8 + rdx]
lea eax, [rdx + 4]
mov dword [rbx + 0x10], eax
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x14000419f
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x1400042c8
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x1400041a1
mov ecx, dword [rsi + 0x30]
jmp 0x1400042cc
inc eax
inc eax
add eax, 8
inc eax
inc eax
inc eax
mov rcx, qword [rsp + 0x28]
mov dword [rcx], eax
mov rcx, qword [rbx + 8]
mov edx, dword [rbx + 0x10]
lea r8d, [rax + 1]
mov r9, qword [rsp + 0x30]
cmp eax, dword [r9]
jne 0x1400041d0
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x1400041e6
cmp r8d, dword [rsi + 0x30]
jbe 0x1400042f8
mov byte [rsi + 0x34], 0
jmp 0x1400041ee
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
inc dword [rbx + 0x10]
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x140004ce6
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x14000430d
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], 0x49
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x140004ce8
mov ecx, dword [rsi + 0x30]
jmp 0x140004311
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
mov r12d, dword [rbx + 0x10]
add r12d, 3
jmp 0x14000398b
mov rdx, qword [rsi + 0x10]
mov al, byte [r15 + rax]
mov byte [rdx + rcx], al
inc dword [rsi + 0x20]
inc dword [rbx + 0x10]
jmp 0x140002e40
add r15, rax
mov rax, qword [rsi + 0x10]
mov dl, byte [r15 + 4]
mov byte [rax + rcx + 4], dl
mov edx, dword [r15]
mov dword [rax + rcx], edx
add dword [rsi + 0x20], 5
add dword [rbx + 0x10], 5
jmp 0x140002e40
mov edx, 5
jmp 0x14000300c
mov dword [r14], ecx
jmp 0x140002fe2
mov byte [rsi + 0x34], 0
jmp 0x140002fe2
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
jmp 0x140002e3c
mov rax, qword [rsp + 0x28]
mov dword [rax], ecx
jmp 0x140003b71
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x1400043be
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x53
inc dword [rsi + 0x20]
jmp 0x14000415c
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x1400043c7
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0xbb
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x1400041a3
mov ecx, dword [rsi + 0x30]
jmp 0x1400043cb
mov r8, qword [rsi + 0x10]
mov eax, eax
mov cl, byte [rcx + rdx]
mov byte [r8 + rax], cl
inc dword [rsi + 0x20]
jmp 0x1400041ee
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x140004c4d
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x5b
inc dword [rsi + 0x20]
jmp 0x140002e40
add r15, rax
mov rax, qword [rsi + 0x10]
mov dl, byte [r15 + 2]
mov byte [rax + rcx + 2], dl
movzx edx, word [r15]
mov word [rax + rcx], dx
add dword [rsi + 0x20], 3
jmp 0x140004232
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
mov ecx, dword [rbx + 0x10]
inc ecx
mov dword [rbx + 0x10], ecx
mov rax, qword [rbx + 8]
mov dl, byte [rax + rcx]
and dl, 0xc7
cmp dl, 0x44
mov rdx, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
jne 0x140004f44
mov edx, dword [rdx]
lea r8d, [rdx + 3]
cmp edx, dword [r9]
jne 0x14000438b
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x1400043b1
cmp r8d, dword [rsi + 0x30]
jbe 0x140004534
mov byte [rsi + 0x34], 0
jmp 0x14000454f
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
jmp 0x14000424d
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
jmp 0x14000454f
mov byte [rsi + 0x34], 0
jmp 0x14000415c
mov byte [rsi + 0x34], 0
lea r10d, [rax + 8]
cmp r10d, ecx
jbe 0x1400045aa
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x1400046e2
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x41
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x1400041a8
mov ecx, dword [rsi + 0x30]
jmp 0x1400046e6
cmp byte [rdx + rax + 0xb], 0xc3
mov r14, qword [rsp + 0x28]
jne 0x140002bbd
add eax, 2
mov rdi, qword [rdx + rax]
lea r12, [rsp + 0x80]
mov rcx, rbx
mov rdx, r12
call fcn.140019140
xor ebp, ebp
cmp qword [r12 + 0x70], 0
je 0x1400049e9
cmp byte [rsp + 0xd8], 0
je 0x1400049e9
lea r12, [rsp + 0x80]
mov rcx, r12
mov rdx, qword [rsp + 0x190]
call fcn.1400192d0
mov rcx, r12
call fcn.140018e60
test al, al
je 0x1400049e7
mov eax, dword [rsi + 0x20]
lea ecx, [rax + 8]
cmp qword [rsi], 0
je 0x140004b4d
cmp ecx, dword [rsi + 0x30]
jbe 0x140004bdf
mov byte [rsi + 0x34], 0
xor eax, eax
xor ebp, ebp
cmp qword [rsi + 0x10], 0
je 0x1400049e9
cmp qword [rsi + 0x18], 0
je 0x1400049e9
cmp dword [rsi + 8], 0
je 0x1400049e9
test al, al
jne 0x140004b54
jmp 0x1400049e9
mov r14, qword [rsp + 0x28]
jmp 0x140002bbd
mov r8, qword [rsi + 0x10]
mov al, byte [rcx + rax]
mov byte [r8 + rdx], al
inc dword [rsi + 0x20]
jmp 0x140004353
cmp rcx, 0xff
je 0x140004936
cmp ecx, 0xc6
je 0x140004973
cmp ecx, 0x83
jne 0x140004f44
mov cl, byte [r15 + rax + 1]
and cl, 0xf8
cmp cl, 0x60
mov rcx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jne 0x140004f44
mov ecx, dword [rcx]
lea edx, [rcx + 5]
cmp ecx, dword [r8]
je 0x140003b3c
jmp 0x140003b44
add rax, rcx
mov rcx, qword [rsi + 0x10]
mov r8b, byte [rax + 2]
mov byte [rcx + rdx + 2], r8b
movzx eax, word [rax]
mov bh, 0
mov bh, 0
mov word [rcx + rdx], ax
add dword [rsi + 0x20], 3
add dword [rbx + 0x10], 3
jmp 0x140002e40
invalid
invalid
invalid
call 0x1918e4559
add eax, dword [rcx + rdi - 0x3f]
lea edx, [rcx + 3]
cmp ecx, r8d
jne 0x140004568
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x1400048f8
cmp edx, dword [rsi + 0x30]
ja 0x14000439b
mov rdx, qword [rsi + 0x10]
mov r8b, byte [rax + 2]
mov byte [rdx + rcx + 2], r8b
movzx eax, word [rax]
mov word [rdx + rcx], ax
jmp 0x14000454b
cmp bpl, 0x1f
ja case.default.0x1400031f6
shr bpl, 4
add bpl, 2
mov edi, ebp
jmp case.0x1400031f6.5
add r8, rdx
lea rcx, [r9 + r8]
add rcx, 4
mov rdx, qword [rsi + 0x10]
mov eax, eax
mov qword [rdx + rax], rcx
mov eax, dword [rsi + 0x20]
add eax, 8
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x1400041a6
mov ecx, dword [rsi + 0x30]
jmp 0x1400043dc
cmp edx, 0xf7
je 0x1400048ae
cmp edx, 0x8b
mov rdx, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
jne 0x140004f44
cmp byte [rax + rcx + 1], 0xc0
jb 0x140004f44
mov edx, dword [rdx]
lea r8d, [rdx + 2]
jmp 0x140003fa9
cmp eax, 0xff
je 0x140004840
cmp eax, 0xc7
mov rax, qword [rsp + 0x28]
mov dword [rax], 0x8b480000
and al, 0x28
mov rdx, qword [rsp + 0x30]
jne 0x140004f44
adc cl, byte [rcx]
add byte [rax], al
xor byte [rdi], cl
test dword [rdx], edx
adc cl, byte [rcx]
add byte [rax], al
invalid
invalid
jl 0x14000465d
adc cl, byte [rcx]
add byte [rax], al
cmp byte [r15 + r12 + 1], 0x44
jne 0x140004f44
or dword [rax], eax
invalid
add dword [rdi + rcx - 0x7b], eax
invalid
or dword [rax], eax
add byte [rbx + 0x8488d00], cl
mov eax, dword [rax]
lea ecx, [rax + 8]
cmp eax, dword [rdx]
jne 0x14000464e
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
cmp qword [rsi], 0
je 0x140004af1
cmp ecx, dword [rsi + 0x30]
jbe 0x140004b1e
mov ebp, 0xc6000004
xor al, 0
mov byte [rsi + 0x34], 0
jmp 0x140004af8
mov bpl, byte [r12]
and bpl, 7
mov dil, 2
jmp 0x14000467f
mov bpl, byte [r12]
and bpl, 7
cmp bpl, 2
je case.0x1400031f6.5
jmp case.default.0x1400031f6
cmp eax, 0xc0
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
jne 0x140004f44
mov eax, dword [rax]
lea ecx, [rax + 3]
cmp eax, dword [rdx]
jne 0x1400046b3
mov rdx, qword [rsp + 0x30]
mov dword [rdx], ecx
cmp qword [rsi], 0
je 0x140004b12
cmp ecx, dword [rsi + 0x30]
ja 0x14000439b
add r15, r12
mov rcx, qword [rsi + 0x10]
mov dl, byte [r15 + 2]
mov byte [rcx + rax + 2], dl
movzx edx, word [r15]
mov word [rcx + rax], dx
jmp 0x14000454b
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x14000471b
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x80
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x1400041aa
mov ecx, dword [rsi + 0x30]
jmp 0x14000471f
mov rax, qword [rsp + 0x28]
mov dword [rax], ecx
add dword [rbx + 0x10], 9
jmp 0x140002e40
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x14000480f
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x3b
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
jmp 0x1400041b3
add r15, r12
mov rcx, qword [rsi + 0x10]
mov dl, byte [r15 + 8]
mov byte [rcx + rax + 8], dl
mov rdx, qword [r15]
mov qword [rcx + rax], rdx
add dword [rsi + 0x20], 9
jmp 0x140004712
cmp byte [r15 + rax + 1], 0xc0
jb 0x140004f44
mov ecx, dword [r14]
lea edx, [rcx + 2]
cmp ecx, dword [r10]
jne 0x140004779
mov r8, qword [rsp + 0x30]
mov dword [r8], edx
cmp qword [rsi], 0
je 0x1400049a7
cmp edx, dword [rsi + 0x30]
ja 0x140003a4e
mov rdx, qword [rsi + 0x10]
movzx eax, word [r15 + rax]
mov word [rdx + rcx], ax
jmp 0x140003b6d
lea r8, [rsp + 0x80]
mov byte [r8], 0
lea rcx, [rax + r15]
inc rcx
xor edx, edx
call fcn.1400190b0
test eax, eax
js 0x140004f44
cmp byte [rsp + 0x80], 0
jne 0x140004f44
mov r14d, eax
mov rax, qword [rsp + 0x28]
mov ecx, dword [rax]
lea eax, [rcx + r14]
add eax, 2
mov rdx, qword [rsp + 0x30]
cmp ecx, dword [rdx]
jne 0x1400047ef
mov rdx, qword [rsp + 0x30]
mov dword [rdx], eax
add r14d, 2
cmp qword [rsi], 0
je 0x140004a8d
cmp eax, dword [rsi + 0x30]
jbe 0x140004a27
mov byte [rsi + 0x34], 0
jmp 0x140002e3c
mov byte [rsi + 0x34], 0
jmp 0x1400041b3
cmp byte [r15 + r12 + 1], 0xc0
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
jb 0x140004f44
mov eax, dword [rax]
lea ecx, [rax + 2]
cmp eax, dword [rdx]
je 0x140003ba7
jmp 0x140003bae
movzx eax, byte [r15 + r12 + 1]
mov edx, eax
and dl, 0xc7
cmp dl, 5
mov r14, qword [rsp + 0x28]
jne 0x140004f44
and eax, 0x38
cmp eax, 0x20
je 0x14000486a
cmp eax, 0x10
jne 0x140004f44
add ecx, 3
mov dword [rbx + 0x10], ecx
dec dword [rsi + 0x20]
mov eax, dword [rbx + 0x10]
mov rcx, qword [rbx + 8]
lea rdx, [rcx + rax]
mov r8b, byte [rcx + rax + 1]
and r8b, 0x38
xor ebp, ebp
cmp r8b, 0x20
sete bpl
mov r8d, 4
sub r8d, ebp
movsxd rcx, dword [rcx + rax]
add eax, 4
mov dword [rbx + 0x10], eax
mov rdx, qword [rcx + rdx + 4]
jmp 0x140002cfc
mov dl, byte [rax + rcx + 1]
and dl, 0xf8
cmp dl, 0xc0
mov rdx, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
jne 0x140004f44
mov edx, dword [rdx]
lea r8d, [rdx + 6]
cmp edx, dword [r9]
jne 0x1400048db
mov r9, qword [rsp + 0x30]
mov dword [r9], r8d
cmp qword [rsi], 0
je 0x140004b01
cmp r8d, dword [rsi + 0x30]
jbe 0x140004b30
mov byte [rsi + 0x34], 0
jmp 0x140004b09
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
jmp 0x14000454f
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
mov r12d, dword [rbx + 0x10]
add r12d, 2
jmp 0x14000398b
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
add dword [rbx + 0x10], 4
jmp 0x140002e40
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
jmp 0x14000426e
movzx edx, byte [r15 + rax + 1]
mov ecx, edx
shr ecx, 3
and ecx, 7
cmp dl, 0xc0
jb 0x140004aa3
cmp ecx, 3
mov rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jae 0x140004c56
mov ecx, dword [rdx]
lea edx, [rcx + 2]
cmp ecx, dword [r8]
je 0x140004771
jmp 0x140004779
lea rcx, [rax + r15]
inc rcx
xor edx, edx
xor r8d, r8d
call fcn.1400190b0
mov r14d, eax
test eax, eax
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
js 0x140004f44
mov ecx, dword [rax]
lea eax, [rcx + r14]
add eax, 2
jmp 0x1400047e4
mov rax, qword [rsp + 0x28]
mov dword [rax], edx
jmp 0x140003b71
mov r8, qword [rsi + 0x10]
movzx eax, word [rax + rcx]
mov word [r8 + rdx], ax
add dword [rsi + 0x20], 2
jmp 0x14000490c
mov rax, qword [rsp + 0x28]
mov dword [rax], ecx
jmp 0x14000426e
mov rdx, qword [rsi + 0x10]
mov eax, dword [rax]
mov dword [rdx + rcx], eax
add dword [rsi + 0x20], 4
jmp 0x140004920
xor ebp, ebp
lea r12, [rsp + 0xe0]
mov rcx, r12
call fcn.140019320
mov rcx, qword [r12 - 0x40]
lea rax, [rsp + 0xb8]
cmp rcx, rax
je 0x140004a11
call qword [sym.imp.mozglue.dll_free]
test bpl, bpl
mov r14, qword [rsp + 0x28]
jne 0x140004f44
mov ecx, dword [r14]
jmp 0x140002bbd
mov edx, r12d
add rdx, r15
mov r8d, r14d
add rcx, qword [rsi + 0x10]
jmp 0x140002e33
add ecx, 2
add rcx, r15
xor edx, edx
xor r8d, r8d
call fcn.1400190b0
mov r14d, eax
mov rax, qword [rsp + 0x28]
mov ecx, dword [rax]
lea eax, [rcx + r14]
inc eax
mov rdx, qword [rsp + 0x30]
cmp ecx, dword [rdx]
jne 0x140004a69
mov rdx, qword [rsp + 0x30]
mov dword [rdx], eax
inc r14d
cmp qword [rsi], 0
je 0x140004a8d
cmp eax, dword [rsi + 0x30]
ja 0x140004806
add r12, r15
mov r8d, r14d
add rcx, qword [rsi + 0x10]
mov rdx, r12
jmp 0x140002e33
mov rcx, qword [rsp + 0x28]
mov dword [rcx], eax
jmp 0x140002e3c
inc eax
add eax, 8
jmp 0x140004cea
and dl, 0xc7
cmp dl, 5
jne 0x140004bfd
cmp cl, 2
jne 0x140004bfd
lea rcx, [rax + 2]
mov dword [rbx + 0x10], ecx
lea rcx, [r15 + rax]
add rcx, 2
movsxd rdx, dword [r15 + rax + 2]
add eax, 6
mov dword [rbx + 0x10], eax
mov rdx, qword [rdx + rcx + 4]
mov rcx, rsi
mov r8d, 4
call fcn.140005070
test al, al
mov r14, qword [rsp + 0x28]
jmp 0x140003075
mov rax, qword [rsp + 0x28]
mov dword [rax], ecx
add dword [rbx + 0x10], 8
jmp 0x140002e40
mov rax, qword [rsp + 0x28]
mov dword [rax], r8d
add dword [rbx + 0x10], 6
jmp 0x140002e40
mov rax, qword [rsp + 0x28]
mov dword [rax], ecx
jmp 0x14000454f
mov rcx, qword [rsi + 0x10]
mov rdx, qword [r15 + r12]
mov qword [rcx + rax], rdx
add dword [rsi + 0x20], 8
jmp 0x140004af8
add rax, rcx
mov rcx, qword [rsi + 0x10]
movzx r8d, word [rax + 4]
mov word [rcx + rdx + 4], r8w
mov eax, dword [rax]
mov dword [rcx + rdx], eax
add dword [rsi + 0x20], 6
jmp 0x140004b09
mov rax, qword [rsp + 0x28]
mov dword [rax], ecx
mov rax, qword [rsp + 0x198]
mov qword [rax], rdi
mov bpl, 1
jmp 0x1400049e9
mov ecx, 1
cmp edx, 4
jne 0x140002ff0
mov al, byte [r15 + rax + 1]
and al, 7
xor ecx, ecx
cmp al, 5
sete cl
lea ecx, [rcx*4 + 1]
jmp 0x140002ff0
cmp qword [rsi], 0
mov eax, dword [rsi + 0x20]
je 0x140004cdf
mov ecx, dword [rsi + 0x30]
cmp eax, ecx
jae 0x140004cf7
or r9b, 0xb8
mov rcx, qword [rsi + 0x10]
mov byte [rcx + rax], r9b
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x140004ce1
mov ecx, dword [rsi + 0x30]
jmp 0x140004cfb
mov byte [rsi + 0x34], 0
jmp 0x1400036a1
mov byte [rsi + 0x34], 0
jmp 0x140002da9
mov rcx, qword [rsi + 0x10]
mov qword [rcx + rax], rdi
add dword [rsi + 0x20], 8
cmp qword [rsi], 0
je 0x140004b54
mov al, byte [rsi + 0x34]
jmp 0x140004495
cmp cl, 4
jne 0x140004f44
cmp dl, 5
jne 0x140004c73
lea rcx, [rax + 2]
mov dword [rbx + 0x10], ecx
lea rcx, [r15 + rax]
add rcx, 2
movsxd rdx, dword [r15 + rax + 2]
add eax, 6
mov dword [rbx + 0x10], eax
mov rdx, qword [rdx + rcx + 4]
mov rcx, rsi
mov r8d, 3
call fcn.140005070
mov bpl, 1
jmp 0x140004ae5
mov byte [rsi + 0x34], 0
lea r9d, [rax + 8]
cmp r9d, ecx
jbe 0x140004cc1
mov byte [rsi + 0x34], 0
jmp 0x140002e40
cmp ecx, 4
je 0x140004c73
cmp ecx, 6
mov rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
je 0x140004960
jmp 0x140004f44
lea rcx, [rax + r15]
inc rcx
xor edx, edx
xor r8d, r8d
call fcn.1400190b0
mov ebp, eax
test eax, eax
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
js 0x140004f44
mov ecx, dword [rax]
lea eax, [rcx + rbp]
inc eax
cmp ecx, dword [rdx]
jne 0x140004caa
mov rdx, qword [rsp + 0x30]
mov dword [rdx], eax
inc ebp
cmp qword [rsi], 0
je 0x140004d29
cmp eax, dword [rsi + 0x30]
jbe 0x140004d59
mov byte [rsi + 0x34], 0
jmp 0x140004d30
add r15, rdx
lea rcx, [r8 + r15]
add rcx, 4
mov rdx, qword [rsi + 0x10]
mov eax, eax
mov qword [rdx + rax], rcx
add dword [rsi + 0x20], 8
jmp 0x140002e40
inc eax
add eax, 8
inc eax
inc eax
inc eax
mov r14, qword [rsp + 0x28]
mov dword [r14], eax
jmp 0x140002e45
mov byte [rsi + 0x34], 0
lea r9d, [rax + 8]
cmp r9d, ecx
jbe 0x140004d3b
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x140004d70
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x48
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x140004ce6
mov ecx, dword [rsi + 0x30]
jmp 0x140004d74
mov rcx, qword [rsp + 0x28]
mov dword [rcx], eax
add dword [rbx + 0x10], ebp
mov bpl, 1
jmp 0x140002e40
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov qword [rcx + rax], r8
mov eax, dword [rsi + 0x20]
add eax, 8
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x140004ce4
mov ecx, dword [rsi + 0x30]
jmp 0x140004d08
mov edx, r12d
add rdx, r15
mov r8d, ebp
add rcx, qword [rsi + 0x10]
call sub.VCRUNTIME140.dll_memcpy
add dword [rsi + 0x20], ebp
jmp 0x140004d30
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x140004d99
mov rcx, qword [rsi + 0x10]
mov eax, eax
mov byte [rcx + rax], 0x8b
mov eax, dword [rsi + 0x20]
inc eax
mov dword [rsi + 0x20], eax
cmp qword [rsi], 0
je 0x140004ce8
mov ecx, dword [rsi + 0x30]
jmp 0x140004d9d
mov byte [rsi + 0x34], 0
cmp eax, ecx
jae 0x140004c4d
movzx ecx, dl
lea ecx, [rcx + rcx*8]
mov rdx, qword [rsi + 0x10]
mov eax, eax
mov byte [rdx + rax], cl
jmp 0x140004323
mov byte [rsp + 0xd8], 0
mov rax, qword [rsp + 0xa8]
jmp 0x14000345d
mov byte [rsp + 0xd8], 0
mov rax, qword [rsp + 0xa8]
jmp 0x140003491
mov byte [rsp + 0xd8], 0
mov rax, qword [rsp + 0xa8]
jmp 0x1400034d3
mov byte [rsp + 0xd8], 0
mov rax, qword [rsp + 0xa8]
jmp 0x140003507
mov byte [rsp + 0xd8], 0
mov rax, qword [rsp + 0xa8]
jmp 0x14000353b
mov rax, qword [rsp + 0x198]
mov rcx, qword [rsp + 0x48]
mov qword [rax], rcx
cmp qword [rsp + 0xf0], 0
je 0x140004fb8
cmp byte [rsp + 0xd8], 0
je 0x140004fb8
mov r8, qword [rsp + 0xa8]
test r8, r8
je 0x140004ea6
mov rdx, qword [rsp + 0xa0]
mov ecx, dword [rsp + 0x9c]
add rcx, qword [rsp + 0x88]
call sub.VCRUNTIME140.dll_memcpy
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
xor edx, edx
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_FlushInstructionCache]
mov eax, dword [rsp + 0xa8]
add dword [rsp + 0x9c], eax
mov qword [rsp + 0xa8], 0
mov eax, dword [0x140042f34]
mov ecx, dword [0x1400411a8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x140004f77
mov rdi, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xf0]
test r15, r15
je 0x140004f1a
shl r15, 4
add r15, rdi
mov ebx, dword [0x140042f30]
lea r14, [rsp + 0x50]
mov r13, qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov r8d, dword [rdi]
mov rcx, qword [rdi + 8]
mov rdx, rbx
mov r9, r14
call r13
add rdi, 0x10
cmp rdi, r15
jne 0x140004ef9
mov rdi, qword [rsp + 0xe8]
lea rax, [rsp + 0x100]
mov qword [rax - 0x10], 0
cmp rdi, rax
jne 0x140004fd8
mov rcx, qword [rsp + 0xa0]
cmp rcx, r12
jne 0x140004fe6
mov rax, qword [rsp + 0x198]
cmp qword [rax], 0
je 0x140004fc4
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.140018b90
nop
add rsp, 0x128
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x140042f34]
call fcn.140017fa0
cmp dword [0x140042f34], 0xffffffff
jne 0x140004ecb
lea rdi, [rsp + 0x50]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rdi + 4]
mov dword [0x140042f30], eax
lea rcx, [0x140042f34]
call fcn.140018008
jmp 0x140004ecb
mov qword [rax], 0
jmp 0x140004ea6
mov dword [rsi + 0x20], 0
mov rcx, rsi
call fcn.140019070
jmp 0x140004f52
mov rcx, rdi
call qword [sym.imp.mozglue.dll_free]
jmp 0x140004f33
call qword [sym.imp.mozglue.dll_free]
jmp 0x140004f44
inc qword [rsp + 0xa8]
mov eax, dword [rsp + 0x98]
inc eax
ror byte [rcx + 0x982484], 0
invalid
ror byte [rcx + 0x982484], 0
add byte [rcx - 0x7bc6b740], cl
and al, 0x90
add byte [rax], al
add byte [rax], al
invalid
xchg byte [rcx], cl
invalid
mov eax, eax
cmp qword [rsp + 0x90], rax
add byte [rax], al
add byte [rax], al
jbe 0x140004e22
mov rax, qword [rsp + 0xa8]
cmp rax, qword [rsp + 0xb0]
je 0x140005039
mov rcx, qword [rsp + 0xa0]
mov byte [rcx + rax], 0x90
jmp 0x140004ff1
mov edx, 1
mov rcx, rdi
call fcn.14001d990
test al, al
je 0x140005054
mov rax, qword [rsp + 0xa8]
jmp 0x14000502b
mov byte [rsp + 0xd8], 0
mov eax, dword [rsp + 0x98]
jmp 0x140005009
cmp qword [rcx], 0
je 0x1400052c1
mov r8d, dword [rcx + 0x30]
cmp eax, r8d
jae 0x1400052d5
mov r8, qword [rcx + 0x10]
mov eax, eax
mov byte [r8 + rax], 0xff
mov eax, dword [rcx + 0x20]
inc eax
mov dword [rcx + 0x20], eax
cmp qword [rcx], 0
je 0x1400052c3
mov r8d, dword [rcx + 0x30]
cmp eax, r8d
jae 0x1400052de
mov r8, qword [rcx + 0x10]
mov eax, eax
mov byte [r8 + rax], 0x25
mov eax, dword [rcx + 0x20]
inc eax
mov dword [rcx + 0x20], eax
cmp qword [rcx], 0
je 0x1400052c5
mov r8d, dword [rcx + 0x30]
mov eax, dword [rcx + 0x30]
lea r9d, [rax + 4]
cmp r9d, r8d
ja 0x14000529b
mov r8, qword [rcx + 0x10]
mov eax, eax
mov dword [r8 + rax], 0
mov eax, dword [rcx + 0x20]
add eax, 4
mov dword [rcx + 0x20], eax
cmp qword [rcx], 0
je 0x1400052c8
mov r8d, dword [rcx + 0x30]
lea r9d, [rax + 8]
cmp r9d, r8d
ja 0x140005292
mov r8, qword [rcx + 0x10]
mov eax, eax
mov qword [r8 + rax], rdx
add dword [rcx + 0x20], 8
cmp qword [rcx], 0
je 0x1400052ce
xor eax, eax
cmp qword [rcx + 0x10], 0
je 0x140005162
cmp qword [rcx + 0x18], 0
je 0x140005162
cmp dword [rcx + 8], 0
je 0x140005162
cmp byte [rcx + 0x34], 0
setne al
ret
ror byte [rcx - 0x7cb7dfbf], 0x39
add byte [rdi], cl
test byte [rcx + 1], bl
add byte [rax], al
mov r8d, dword [rcx + 0x30]
xor byte [r13 + rcx*4 + 0x48], al
add al, 0x45
cmp ecx, eax
lea r9d, [rax + 4]
cmp r9d, r8d
ja 0x140005336
mov r8, qword [rcx + 0x10]
mov eax, eax
mov dword [r8 + rax], 2
mov eax, dword [rcx + 0x20]
add eax, 4
mov dword [rcx + 0x20], eax
cmp qword [rcx], 0
je 0x14000531e
mov r8d, dword [rcx + 0x30]
cmp eax, r8d
jae 0x14000533f
mov r8, qword [rcx + 0x10]
mov eax, eax
mov byte [r8 + rax], 0xeb
mov eax, dword [rcx + 0x20]
inc eax
mov dword [rcx + 0x20], eax
cmp qword [rcx], 0
je 0x140005320
add byte [rax], al
add byte [rax], al
mov r8d, dword [rcx + 0x30]
cmp eax, r8d
jae 0x14000529b
mov r8, qword [rcx + 0x10]
mov eax, eax
rol byte [rcx - 0x3a], 4
add byte [rax], cl
rol byte [rcx - 0x3a], 4
add byte [rax], cl
mov eax, dword [rcx + 0x20]
inc eax
jmp 0x14000510f
mov eax, dword [rcx + 0x20]
inc eax
mov dword [rcx + 0x20], eax
cmp qword [rcx], 0
je 0x140005288
mov r8d, dword [rcx + 0x30]
xor byte [r9 + rdi - 0x40], al
cmp eax, r8d
jae 0x140005348
mov r8, qword [rcx + 0x10]
mov eax, eax
mov byte [r8 + rax], 0xe
mov eax, dword [rcx + 0x20]
inc eax
mov dword [rcx + 0x20], eax
jmp 0x14000508c
mov byte [rcx + 0x34], 0
jmp 0x140005145
mov byte [rcx + 0x34], 0
jmp 0x140005120
inc eax
inc eax
add eax, 4
add eax, 8
mov dword [rcx + 0x20], eax
mov al, 1
jmp 0x140005162
mov byte [rcx + 0x34], 0
jmp 0x1400050c4
mov byte [rcx + 0x34], 0
jmp 0x1400050ee
inc eax
inc eax
jmp 0x1400052c8
mov byte [rcx + 0x34], 0
jmp 0x1400051f8
mov byte [rcx + 0x34], 0
jmp 0x140005222
mov byte [rcx + 0x34], 0
jmp 0x14000508c
add byte [rcx], al
add dword [rax - 0x73], ecx
or eax, 0x29ef3
lea rcx, [0x140042f58]
add rsp, 0x28
jmp fcn.140018008
invalid
invalid
invalid
dec esp
int3
cmp qword [rsi], 0
je 0x1400190a3
cmp edx, dword [rsi + 0x30]
ja case.0x140002df9.28
mov rdx, qword [rsi + 0x10]
mov qword [rdx + rcx], rax
mov dword [rdx + rcx], eax
mov dword [rdx + rcx], eax
or al, byte [rbx + 0x48082046]
add esp, 0x20
add dword [rsi + 0x20], 8
add rsp, 0x20
pop rsi
ret
mov dword [rsi + 0x20], edx
jmp 0x14001909d
mov byte [rsi + 0x34], 0
jmp 0x14001909d