Function at 0x14033ffb0
Capabilities:
Execute anti-debugging instructions

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x508
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x480], 0xfffffffffffffffe
mov rdi, rdx
mov rbx, rcx
mov qword [rbp + 0x470], 0
xor ecx, ecx
mov edx, 1
mov r8d, 0x43ccddbc
mov r9d, 0xae778e1b
call fcn.140341750
cmp rbx, 0x12345678
je 0x14034003b
mov r15, rax
call fcn.14033fc20
test rdi, rdi
sets al
cmp rdi, 0x10000
setb r13b
or r13b, al
rdtsc
mov qword [rbp + 0x3f8], rax
mov qword [rbp + 0x448], rdx
je 0x1403400a4
xor r14d, r14d
jmp 0x1403400ab
cmp qword [0x1405186cc], 0x33c0
jne 0x140340638
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x40], 0xa91a9063
mov dword [rsp + 0x38], 0x9627e7a5
mov dword [rsp + 0x30], 0x3201ad0d
xor ecx, ecx
mov edx, 1
xor r8d, r8d
xor r9d, r9d
call fcn.140341c30
movabs rcx, 0x7fffffffffffcc3f
xor rcx, rax
and rcx, rax
xor rax, 0x33c0
lea rax, [rax + rcx*2]
mov qword [0x1405186cc], rax
jmp 0x140340638
cmp byte [rdi], 0
sete r14b
mov r12, rbx
test rbx, rbx
jne 0x1403400ce
xor ecx, ecx
mov edx, 1
mov r8d, 0xc3b0ca37
mov r9d, 0x6026bbc3
call fcn.140341880
mov r12, rax
movzx eax, byte [0x140534978]
test al, 1
je 0x14034011f
mov dword [rsp + 0x28], 0xf5e7b26f
mov dword [rsp + 0x20], 0x99293ab8
mov ecx, 1
mov edx, 1
xor r8d, r8d
mov r9d, 0x93857bbb
call fcn.140341cd0
test rax, rax
je 0x14034011f
test r13b, r13b
je 0x140340165
lea r9, [rbp + 0x470]
mov rcx, rbx
xor edx, edx
mov r8d, edi
jmp 0x1403401c3
test r12, r12
je 0x1403401db
mov eax, dword [r12 + 0x3c]
test rax, rax
je 0x1403401db
cmp dword [r12 + rax], 0x4550
jne 0x1403401db
cmp dword [r12 + rax + 0x88], 0
je 0x14034015e
cmp dword [r12 + rax + 0x8c], 0
jne 0x1403401db
xor esi, esi
jmp 0x140340390
mov qword [rbp - 0x20], 0
xor ecx, ecx
test rdi, rdi
je 0x1403401a4
mov edx, 1
xor r8d, r8d
nop dword [rax]
movzx r9d, byte [rdi + rcx]
xor r10d, r10d
add r9b, byte [0x140531ad1]
setne r10b
movzx r8d, r8b
cmove r8d, edx
add rcx, r10
test r8b, 1
je 0x140340180
mov word [rbp - 0x20], cx
inc ecx
mov word [rbp - 0x1e], cx
mov qword [rbp - 0x18], rdi
lea rdx, [rbp - 0x20]
lea r9, [rbp + 0x470]
mov rcx, rbx
xor r8d, r8d
call qword [case.0x1401138cb.0]
cmp eax, 0xc0000138
jne 0x1403401db
mov qword [rbp + 0x470], 0
lea rcx, [rbp - 0x20]
mov r8d, 0x400
xor edx, edx
call fcn.1403e40c0
mov sil, 1
test r14b, r14b
jne 0x140340390
mov dword [rsp + 0x28], 0xf5e7b26f
mov dword [rsp + 0x20], 0x99293ab8
mov r8, rbx
xor ebx, ebx
xor ecx, ecx
xor edx, edx
mov qword [rbp + 0x438], r8
mov r9d, 0x93857bbb
call fcn.140341cd0
test rax, rax
je 0x140340389
mov byte [rbp + 0x47f], r13b
mov qword [rbp + 0x408], r15
nop word [rax + rax]
mov r13d, ebx
movzx ecx, word [rax + r13*2]
test ecx, ecx
je 0x14034025a
cmp ecx, 0x2e
je 0x14034025a
mov byte [rbp + r13 - 0x20], cl
inc ebx
jmp 0x140340240
mov eax, 0x7e2f5f28
sub eax, ebx
mov ecx, eax
xor ecx, 0x81d0a4d8
and eax, 0x1d0a4d8
lea eax, [rcx + rax*2]
mov dword [rbp + 0x444], eax
mov rax, qword [0x1405186e0]
movsxd rcx, dword [rax]
movabs rdx, 0xdf6df55bbedc646
add rdx, rcx
add rdx, rax
movabs r12, 0xf20920aa441239ba
add r12, rdx
nop
mov eax, dword [0x14053498c]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
jne 0x1403402a0
xor eax, eax
nop word cs:[rax + rax]
mov ecx, dword [0x140534990]
cmp ecx, 0x32
jg 0x1403402d5
mov ebx, dword [0x140423eac]
test al, al
je 0x1403402e8
mov ecx, dword [0x140423eac]
mov ecx, dword [0x140534990]
cmp ecx, 0x4c
jge 0x1403402c0
jmp 0x1403402cb
cmp dword [rbp + 0x444], 1
jbe 0x14034037a
mov qword [rbp + 0x468], 0xf
mov qword [rbp + 0x460], 1
mov word [rbp + 0x450], 0x2e
cmp byte [rbp + 0x47f], 0
je 0x14034054a
mov rax, qword [rbp + 0x460]
mov rcx, qword [rbp + 0x468]
cmp rcx, rax
jne 0x140340653
mov dword [rsp + 0x20], 0x6026bbc3
xor ecx, ecx
mov edx, 1
mov r8d, 0xaf7b81d6
mov r9d, 0x2b0e9fc3
call fcn.1403419e0
mov qword [rsp + 0x20], 1
lea rcx, [rbp + 0x450]
mov edx, 1
mov r9, rax
call fcn.1400885a0
jmp 0x14034069d
mov r15, qword [rbp + 0x408]
movzx r13d, byte [rbp + 0x47f]
mov rbx, qword [rbp + 0x438]
mov rax, qword [rbp + 0x448]
shl rax, 0x20
mov r14, qword [rbp + 0x3f8]
or r14, rax
lea rcx, [rbp - 0x20]
mov r8d, 0x400
xor edx, edx
call fcn.1403e40c0
rdtsc
shl rdx, 0x20
or rdx, rax
sub rdx, r14
cmp qword [0x140518658], 0
je 0x1403403d8
mov rax, qword [0x140518658]
cmp rax, rdx
jae 0x1403403df
mov qword [0x140518658], rdx
cmp qword [rbp + 0x470], 0
setne al
xor sil, 1
or sil, al
jne 0x1403405d1
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x58], 0xb56a67b
mov dword [rsp + 0x50], 0x7b397c56
mov dword [rsp + 0x48], 0x512d665d
mov qword [rsp + 0x40], 0
mov ecx, 1
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call fcn.140341970
cmp eax, 0x4750412d
je 0x1403405d1
mov dword [rsp + 0x28], 0xf5e7b26f
mov dword [rsp + 0x20], 0x99293ab8
mov ecx, 1
mov edx, 1
xor r8d, r8d
mov r9d, 0x93857bbb
call fcn.140341cd0
test rax, rax
je 0x1403405d1
inc qword [0x1405185f8]
cmp rdi, 0xffff
ja 0x140340494
lea r9, [rbp + 0x470]
mov rcx, rbx
xor edx, edx
mov r8d, edi
jmp 0x1403404f9
mov qword [rbp + 0x450], 0
xor ecx, ecx
test rdi, rdi
je 0x1403404ce
mov edx, 1
xor r8d, r8d
nop
mov r9, rcx
xor ecx, ecx
cmp byte [rdi + r9], 0
setne cl
movzx r8d, r8b
cmove r8d, edx
add rcx, r9
test r8b, 1
je 0x1403404b0
mov word [rbp + 0x450], cx
inc ecx
mov word [rbp + 0x452], cx
mov qword [rbp + 0x458], rdi
lea rdx, [rbp + 0x450]
lea r9, [rbp + 0x470]
mov rcx, rbx
xor r8d, r8d
call qword [case.0x1401138cb.0]
cmp eax, 0xc0000142
je 0x140340511
cmp eax, 0xc0000138
jne 0x14034059c
mov qword [rbp + 0x470], 0
xor eax, eax
cmp rdi, 0x10000
setae al
lea rcx, [0x140518590]
inc qword [0x140518630]
inc qword [0x140518600]
lea rax, [rcx + rax*8]
add rax, 0x78
jmp 0x1403405ce
mov rcx, rdi
mov edx, 0xdef289d8
mov r8d, 0x320c2b2e
mov r9d, 0x85b889fa
call fcn.1400a9690
mov rcx, qword [rbp + 0x460]
mov rdx, qword [rbp + 0x468]
mov r8, rdx
sub r8, rcx
cmp r8, rax
jae 0x14034066d
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x450]
mov rdx, rax
mov r9, rdi
call fcn.1400885a0
jmp 0x1403409ef
cmp qword [rbp + 0x470], 0
je 0x14034051c
xor eax, eax
cmp rdi, 0x10000
setae al
lea rcx, [0x140518590]
inc qword [0x140518618]
lea rax, [rcx + rax*8]
add rax, 0x90
inc qword [rax]
mov dword [rsp + 0x20], 0x396672c7
xor esi, esi
mov ecx, 1
xor edx, edx
mov r8, r15
mov r9d, 0x6900e87e
call fcn.140341790
movzx r8d, r13b
xor r8d, 0xc0000139
cmp qword [rbp + 0x470], 0
cmovne r8d, esi
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x50], 0x4711dd36
mov dword [rsp + 0x48], 0x3201ad0d
mov dword [rsp + 0x40], 0x4711dd36
xor ecx, ecx
xor edx, edx
xor r9d, r9d
call fcn.1403418b0
mov rax, qword [rbp + 0x470]
add rsp, 0x508
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rdx, [rax + 1]
mov qword [rbp + 0x460], rdx
cmp rcx, 0x10
jb 0x140340690
mov rcx, qword [rbp + 0x450]
jmp 0x140340697
mov rbx, rax
add rbx, rcx
mov qword [rbp + 0x460], rbx
cmp rdx, 0x10
jb 0x140340813
mov r14, qword [rbp + 0x450]
jmp 0x14034081a
lea rcx, [rbp + 0x450]
mov word [rcx + rax], 0x23
movzx edx, di
mov eax, dword [0x140518674]
lea ecx, [rax + 1]
mov dword [0x140518674], ecx
xor ecx, eax
not ecx
xor r14d, r14d
mov r15d, 0
mov qword [rbp + 0x400], rax
mov dword [rbp + 0x414], ecx
test ecx, eax
jne 0x1403406fe
mov al, 1
nop
test al, al
jne 0x1403406ed
nop word cs:[rax + rax]
mov ecx, dword [0x140534990]
cmp ecx, 0x3b
jge 0x1403406e0
jmp 0x1403406d0
xor r14d, r14d
mov r15d, 0
test ebx, ebx
jg 0x140340b05
mov r12d, 1
lea r9, [rbp + 0x3f4]
movabs r8, 0xcccccccccccccccd
nop word cs:[rax + rax]
mov rcx, rdx
mov rax, rdx
mul r8
shr rdx, 3
lea eax, [rdx + rdx]
lea eax, [rax + rax*4]
mov r10d, ecx
sub r10d, eax
or r10b, 0x30
mov byte [r9], r10b
cmp rcx, 0xa
jb 0x14034074e
inc r12
dec r9
jmp 0x140340720
mov qword [rbp + 0x428], 0
mov qword [rbp + 0x430], 0xf
mov byte [rbp + 0x418], 0
test r12, r12
je 0x1403407a9
cmp r12, 0xf
jbe 0x140340787
lea rcx, [rbp + 0x418]
mov rdx, r12
call fcn.140087e80
jmp 0x1403407a9
mov qword [rbp + 0x428], r12
lea rcx, [rbp + 0x418]
mov rdx, r9
mov r8, r12
call fcn.1403e3a10
mov byte [rbp + r12 + 0x418], 0
mov r8, qword [rbp + 0x428]
cmp qword [rbp + 0x430], 0x10
jb 0x1403407c3
mov r9, qword [rbp + 0x418]
jmp 0x1403407ca
lea r9, [rbp + 0x418]
mov rcx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x468]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x1403407f9
mov qword [rsp + 0x20], r8
lea rcx, [rbp + 0x450]
mov rdx, r8
call fcn.1400885a0
jmp 0x140340849
lea rbx, [rcx + r8]
mov qword [rbp + 0x460], rbx
cmp rax, 0x10
jb 0x140340832
mov r12, qword [rbp + 0x450]
jmp 0x140340839
lea r14, [rbp + 0x450]
add rcx, r14
mov rdx, rdi
mov r8, rax
call fcn.1403e3a10
mov byte [r14 + rbx], 0
jmp 0x1403409ef
lea r12, [rbp + 0x450]
add rcx, r12
mov rdx, r9
call fcn.1403e3a10
mov byte [r12 + rbx], 0
mov r8, qword [rbp + 0x430]
cmp r8, 0x10
jb 0x1403409ef
mov rcx, qword [rbp + 0x418]
mov eax, r8d
not eax
and eax, 1
mov rdx, r8
and rdx, 0xfffffffffffffffe
or rdx, rax
lea eax, [r8 + r8]
and eax, 2
xor rdx, rax
and eax, r8d
lea rdx, [rdx + rax*2]
cmp rdx, 0x1000
jb 0x1403409d6
mov rax, qword [rcx - 8]
cmp byte [0x140531b40], 0
jne 0x1403408af
add rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rcx, 0x20
jae 0x140340b4f
mov rcx, r8
xor rcx, 0x28
not r8
movabs rdx, 0x7fffffffffffffd7
and rdx, r8
or rdx, rcx
not rdx
lea rdx, [rcx + rdx*2]
xor r8d, r8d
mov ecx, dword [rbp + 0x414]
test dword [rbp + 0x400], ecx
setne r8b
mov rcx, qword [0x140423eb8]
mov r9, qword [0x140423eb0]
movabs r11, 0xce7c8235843a79f2
or r11, r8
movabs rbx, 0x31837dca7bc5860d
nop dword [rax + rax]
mov r10, r11
add r10, rbx
mov r8d, 0
adc r8, 0xffffffffffffffff
mov r12d, dword [0x140534990]
cmp r12d, 0x4a
jg 0x140340910
sub r9, r14
sbb rcx, r15
and r10, r9
and r8, rcx
or r8, r10
mov r9, r8
shr r9, 0x20
mov ecx, r9d
xor ecx, r9d
not ecx
and ecx, r8d
and r8d, r9d
xor ecx, r9d
or ecx, r8d
mov r8d, ecx
shr r8d, 0x10
lea r9, [fcn.14033ffb0]
add r9d, r9d
add r9d, 0x17a0
mov r10d, r9d
not r10d
mov r11d, dword [0x14053498c]
lea ebx, [r11 - 1]
imul ebx, r11d
test bl, 1
jne 0x14034099d
mov r11d, dword [0x14053498c]
lea ebx, [r11 - 1]
imul ebx, r11d
test bl, 1
je 0x1403409a4
test r10d, r9d
jne 0x140340975
jmp 0x140340989
mov r9d, dword [0x140534990]
cmp r9d, 0x2c
mov ebx, r8d
not ebx
mov r9d, ecx
xor r9d, ebx
and r9d, ecx
xor ebx, r8d
and ebx, ecx
xor ebx, r8d
or ebx, r9d
movzx ecx, bh
or ecx, ebx
add byte [0x140531ad1], cl
mov rcx, rax
mov dword [rsp + 0x20], 0xc6fbcd15
mov r8d, 0x2ab7801f
mov r9d, 0x78fac149
call fcn.1400a6550
mov rax, qword [rbp + 0x460]
mov ecx, dword [rbp + 0x444]
cmp rax, rcx
jae 0x140340a6a
cmp qword [rbp + 0x468], 0x10
jb 0x140340a14
mov rdx, qword [rbp + 0x450]
jmp 0x140340a1b
lea rdx, [rbp + 0x450]
lea rcx, [r13 - 0x20]
add rcx, rbp
xor r8d, r8d
test rax, rax
je 0x140340a41
nop
movzx r9d, byte [rdx + r8]
mov byte [rcx + r8], r9b
inc r8d
cmp rax, r8
ja 0x140340a30
mov eax, r8d
mov byte [rcx + rax], 0
mov qword [rbp + 0x418], 0
lea rcx, [rbp - 0x20]
lea rdx, [rbp + 0x418]
call fcn.14033f050
mov qword [rbp + 0x470], rax
mov rax, qword [rbp + 0x468]
cmp rax, 0x10
mov r15, qword [rbp + 0x408]
movzx r13d, byte [rbp + 0x47f]
mov rbx, qword [rbp + 0x438]
jb 0x140340390
mov rcx, qword [rbp + 0x450]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140340ae7
mov r8, qword [rcx - 8]
movabs rdx, 0xd7abbea8d0d8e2b6
xor rdx, rcx
movabs r9, 0x57abbea8d0d8e2b6
and r9, rcx
lea rcx, [rdx + r9*2]
sub rcx, r8
movabs rdx, 0x285441572f271d42
add rdx, rcx
cmp rdx, 0x20
jae 0x140340b4a
add rax, 0x28
mov rdx, rax
mov rcx, r8
mov dword [rsp + 0x20], 0xc6fbcd15
mov r8d, 0x2ab7801f
mov r9d, 0x78fac149
call fcn.1400a6550
jmp 0x140340390
mov eax, 0x10
xor r14d, r14d
xor r15d, r15d
lea ecx, [rax - 0x10]
movsxd rcx, ecx
mov r8, qword [r12 + rcx]
mov rcx, qword [r12 + rcx + 8]
mov r9, r8
xor r9, r8
mov r10, rcx
xor r10, rcx
not r10
and r15, r10
xor r15, rcx
not r9
and r14, r9
xor r14, r8
cmp eax, ebx
jge 0x1403406fe
add eax, 0x10
jmp 0x140340b10
call fcn.14039c09c
call fcn.14039c09c
int3