Function at 0x1404b3b70
Capabilities:
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, 0x98
mov rbx, r9
mov qword [rsp + 0x50], r8
mov r12, rdx
mov r15, rcx
movzx esi, byte [rsp + 0x108]
mov rax, qword [0x14077ee28]
xor rax, rsp
mov qword [rsp + 0x90], rax
call fcn.1404bb9a0
mov r14d, eax
movzx edx, byte [0x140790228]
mov ebp, edx
neg ebp
mov rax, qword [0x140771ac0]
mov ecx, dword [0x140771aac]
mov qword [rsp + 0x40], rdx
xor ecx, edx
mov edx, 0xef03
sub edx, r14d
add r14d, 0xffff10fd
mov dword [rsp + 0x4c], edx
sub ecx, edx
movsxd rcx, ecx
add rcx, rax
call rcx
mov edi, eax
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x80], 0
test sil, sil
je 0x1404b3c47
mov r8d, edi
xor r8d, 0x4e9fc272
mov rax, qword [0x140771ac8]
lea ecx, [r14 + rbp]
add ecx, dword [0x140771a9c]
movsxd r9, ecx
add r9, rax
lea rcx, [rsp + 0x88]
lea rdx, [rsp + 0x80]
call r9
mov r13d, eax
jmp 0x1404b3c4a
xor r13d, r13d
mov ecx, dword [0x140772e34]
xor ecx, edi
mov rax, qword [0x140772e40]
cmp ecx, 0x53adfa12
jne 0x1404b3cd4
mov ecx, edi
xor ecx, 0xed4dbebc
movsxd rcx, ecx
movsxd rcx, dword [rax + rcx*4]
mov edx, edi
mov r8, rdx
shl r8, 0x20
or r8, rdx
movabs r9, 0x2963364bf4841b01
xor r9, r8
mov r8, rdx
shl r8, 0x22
or r8, rdx
movabs rdx, 0x8ee78dfe0b7be4fe
xor rdx, r8
add rdx, r9
sub rdx, rax
lea r9, [rdx + rcx]
inc r9
imul r9, rax
mov eax, dword [0x14060fe30]
mov dword [rsp + 0x30], eax
mov r8, qword [0x140772e48]
mov eax, edi
xor eax, 0x12b24145
cdqe
shl rax, 4
add rax, r8
jmp 0x1404b3d25
movsxd rcx, dword [rax]
mov edx, edi
mov r8, rdx
shl r8, 0x23
or r8, rdx
movabs r9, 0x5639c8a580a381d2
xor r9, r8
movabs r8, 0x38f8ad1aff5c7e2d
xor r8, rdx
shl rdx, 0x1e
xor r8, rdx
add r8, rax
add r8, r9
lea r9, [rcx + r8]
inc r9
mov eax, dword [0x14060fe30]
mov dword [rsp + 0x30], eax
mov rax, qword [0x140772e48]
mov r8, rax
movsxd rcx, dword [rax]
test r15, r15
mov qword [rsp + 0x78], rbp
je 0x1404b3d9f
test r12, r12
jne 0x1404b3d9f
cmp qword [rsp + 0x50], 0
jne 0x1404b3d9f
mov rax, qword [0x140771ae8]
lea ecx, [r14 + rbp]
add ecx, dword [0x140771a94]
movsxd r8, ecx
add r8, rax
mov rcx, r15
xor edx, edx
call r8
mov rbp, rax
test rax, rax
jne 0x1404b41c9
mov r8d, edi
xor r8d, 0xa34decb0
mov rax, qword [0x140771ad0]
mov rcx, qword [rsp + 0x40]
add ecx, r14d
add ecx, dword [0x140771aa0]
movsxd r9, ecx
add r9, rax
mov rcx, r15
xor edx, edx
call r9
mov rbp, rax
jmp 0x1404b41b0
test r12, r12
setne dl
test r15, r15
sete al
cmp qword [rsp + 0x50], 0
jne 0x1404b3de7
and al, dl
or al, byte [0x140790310]
test al, 1
je 0x1404b3de7
mov rax, qword [0x140771ab8]
mov ecx, dword [0x140771a90]
xor ecx, dword [rsp + 0x40]
sub ecx, dword [rsp + 0x4c]
movsxd rdx, ecx
add rdx, rax
mov rcx, r12
call rdx
mov rbp, rax
jmp 0x1404b41b0
test r12, r12
setne al
test r15, r15
setne r11b
movzx r12d, byte [0x140790258]
or r11b, al
or r11b, r12b
mov eax, dword [0x140772e50]
mov r10d, dword [0x1407905c8]
mov dword [rsp + 0x34], eax
add r10d, eax
xor r10d, edi
mov edx, dword [0x1407929e0]
cmp r10d, 0x44d968ba
jne 0x1404b3e60
mov eax, r11d
lea r11d, [rdx*2 - 3]
mov dword [0x1407929e0], r11d
mov r10b, 1
xor r15d, r15d
cmp byte [0x140790228], 0
jne 0x1404b4080
imul edx, r11d
neg edx
and edx, r11d
mov r11d, eax
je 0x1404b3e78
jmp 0x1404b4083
lea r10d, [rdx + 1]
mov dword [0x1407929e0], r10d
test r10d, edx
je 0x1404b3e78
mov r10b, 1
jmp 0x1404b405c
add r8, rcx
mov ecx, dword [0x140772e28]
xor ecx, edi
mov edx, edi
xor edx, 0xed4dbeb9
xor r10d, r10d
cmp ecx, 0xac6d14b4
cmove edx, r10d
movsxd rdx, edx
movsxd rcx, dword [r8 + rdx*4]
cmp dword [rsp + 0x30], 0
jle 0x1404b405c
mov byte [rsp + 0x2d], r11b
mov byte [rsp + 0x2e], r12b
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x60], r14
lea r11, [r8 + rdx*4]
add r11, rcx
mov r13d, dword [0x140772e38]
xor r13d, edi
mov ecx, edi
movabs rdx, 0xbcde85090227259f
xor rdx, rcx
mov rsi, rcx
mov eax, edi
movabs rdi, 0x45dba28e3dd8da60
xor rdi, rcx
shl rcx, 0x1d
xor rdx, rcx
shl rsi, 0x1e
xor rdi, rsi
lea rcx, [rdx + rdi]
inc rcx
mov qword [rsp + 0x70], rcx
mov ecx, eax
xor ecx, 0xed4dbeb8
movsxd rcx, ecx
mov qword [rsp + 0x68], rcx
mov ecx, eax
xor cl, 0x41
mov byte [rsp + 0x2f], cl
mov ecx, eax
xor ecx, 0x12b2414a
mov dword [rsp + 0x5c], ecx
mov ecx, eax
xor ecx, 0xd3545ff7
mov r14d, eax
xor r14d, 0x2caba008
add r14d, ecx
xor dword [rsp + 0x34], eax
mov esi, eax
xor esi, 0xdb8c3a83
mov dword [rsp + 0x3c], eax
mov edi, eax
xor dil, 0xe5
xor r15d, r15d
xor r12d, r12d
jmp 0x1404b3f91
sub r10d, esi
mov eax, r10d
xor eax, 1
and r10d, 1
add eax, esi
lea r10d, [rax + r10*2]
xor r15b, bpl
cmp r10d, dword [rsp + 0x30]
jge 0x1404b4061
movsxd rbp, r10d
add rbp, r9
mov rdx, r11
sub rdx, rbp
cmp r13d, 0x8a9065cd
jne 0x1404b3fdb
imul rdx, rbp
mov rax, r11
sub rax, rdx
imul rax, rdx
mov rcx, qword [rsp + 0x70]
sub ecx, edx
add ecx, eax
imul ecx, edx
mov rdx, rax
shl rdx, cl
mov dword [0x140772e2c], 0x29360045
sub rax, rdx
add rbp, qword [rsp + 0x68]
mov rdx, rax
movzx ebp, byte [rbp]
test rdx, rdx
jle 0x1404b3ff0
cmp dword [rsp + 0x34], 0xd22a764d
jne 0x1404b3f70
jmp 0x1404b4042
mov r11d, edx
movzx ecx, byte [rsp + 0x2f]
shl r11b, cl
mov al, 0xff
mov ecx, r11d
shl al, cl
not al
and bpl, al
inc r12d
mov ecx, dword [rsp + 0x5c]
mov eax, ecx
xor eax, edx
and edx, ecx
lea eax, [rax + rdx*2]
mov ecx, eax
xor ecx, r14d
and eax, r14d
add ecx, r10d
lea r10d, [rcx + rax*2]
movsxd rax, r12d
lea rcx, [r8 + rax*4]
movsxd r11, dword [r8 + rax*4]
add r11, rcx
cmp dword [rsp + 0x34], 0xd22a764d
jne 0x1404b3f70
lea eax, [r15 + rdi]
sub bpl, al
mov eax, ebp
xor al, dil
and bpl, dil
add bpl, bpl
add bpl, al
jmp 0x1404b3f83
xor r15d, r15d
jmp 0x1404b4083
xor r10d, r10d
mov r14, qword [rsp + 0x60]
mov edi, dword [rsp + 0x3c]
mov r13d, dword [rsp + 0x38]
movzx r12d, byte [rsp + 0x2e]
movzx r11d, byte [rsp + 0x2d]
jmp 0x1404b4083
mov r11d, eax
mov rbp, qword [rsp + 0x50]
test rbp, rbp
setne al
mov ecx, dword [0x140772e38]
xor ecx, edi
xor edx, edx
cmp ecx, 0x94da314
mov rsi, 0xfffffffffffffff9
cmovne rsi, rdx
or al, r11b
test r11b, 1
cmovne rbp, rdx
test al, 1
jne 0x1404b41b0
mov eax, dword [0x140772e3c]
xor eax, edi
movzx ecx, byte [0x14060fe2d]
cmp byte [0x14078fff0], 0
jne 0x1404b4103
cmp eax, 0x47b93304
je 0x1404b4103
neg r10b
mov eax, edi
xor al, 0xae
lea edx, [rax + 1]
mov r8b, 0xfe
sub r8b, al
xor r8b, r10b
add r8b, dl
mov eax, edx
and al, r10b
add al, al
sub r8b, al
sub cl, r15b
and cl, r8b
jmp 0x1404b4153
mov ecx, edi
xor cl, 0x51
mov eax, r10d
sub al, cl
mul cl
mov ecx, edi
xor cl, 0xf6
add r10b, cl
mov edx, eax
xor dl, r10b
and r10b, al
add r10b, r10b
add r10b, dl
sub cl, r10b
lea r8d, [rcx + rcx]
add r8b, 2
inc cl
mov eax, ecx
mul r8b
mov edx, eax
mov ecx, edi
xor cl, 0x15
mov eax, ecx
sub al, r15b
mul r15b
sub al, cl
shl al, cl
add dl, r8b
add cl, dl
add cl, al
and cl, dl
test cl, cl
setne al
or r12b, al
and r12b, 1
mov byte [0x140790258], r12b
mov ecx, edi
xor ecx, 0x49e6c358
mov rax, qword [0x140771ab0]
mov rdx, qword [rsp + 0x40]
add edx, r14d
add edx, dword [0x140771aa4]
movsxd rdx, edx
add rdx, rax
call rdx
xor r15d, r15d
cmp byte [0x1407904a0], 0
jne 0x1404b43b6
test rax, rax
je 0x1404b43b6
imul rcx, rsi, 0x7b0
mov rbp, qword [rax + rcx + 0x10]
xor r15d, r15d
cmp byte [0x140790498], 0
jne 0x1404b43b6
test rbp, rbp
je 0x1404b43b6
test rbx, rbx
je 0x1404b41dc
xorps xmm0, xmm0
movups xmmword [rbx + 0x1c], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx], xmm0
mov r12d, edi
xor r12d, 0x8d910f8f
mov rax, qword [0x140771ad8]
mov rcx, qword [rsp + 0x40]
add ecx, r14d
add ecx, dword [0x140771aa8]
movsxd rdx, ecx
add rdx, rax
mov ecx, r12d
call rdx
xor r15d, r15d
cmp byte [0x140790258], 0
jne 0x1404b43b6
test rax, rax
je 0x1404b43b6
mov rcx, qword [rax + 0x10]
test rcx, rcx
setne dl
or dl, byte [0x140790511]
or dl, byte [0x1407904a0]
xor r15d, r15d
test dl, 1
je 0x1404b43b6
cmp qword [rax + 0x18], 0
je 0x1404b43b6
mov dword [rsp + 0x38], r13d
movzx r13d, byte [rsp + 0x100]
mov edx, edi
xor edx, 0x12b26142
mov dword [rsp + 0x30], edx
mov edx, edi
xor edx, 0x41a7aacf
mov r8d, edi
xor r8d, 0xbe585530
add edx, r8d
add edx, 2
mov dword [rsp + 0x34], edx
mov dword [rsp + 0x3c], edi
xor edi, 0x4ebd
xor r15d, r15d
mov rdx, rcx
xor esi, esi
mov r8d, r13d
jmp 0x1404b42be
mov r8d, r9d
mov r9, qword [rdx]
test r9, r9
cmovne rdx, r9
movzx esi, r10b
mov r9d, 1
cmove esi, r9d
test sil, 1
jne 0x1404b43a9
cmp rcx, qword [rax + 0x10]
je 0x1404b42ff
mov rax, qword [0x140771ad8]
mov ecx, dword [0x140771aa8]
xor ecx, dword [rsp + 0x40]
sub ecx, dword [rsp + 0x4c]
movsxd rdx, ecx
add rdx, rax
mov ecx, r12d
call rdx
test rax, rax
je 0x1404b43a9
mov rcx, qword [rax + 0x10]
test rbx, rbx
je 0x1404b42f9
inc dword [rbx + 0x18]
mov rdx, rcx
mov r8d, r13d
test sil, sil
jne 0x1404b42b4
test rbx, rbx
je 0x1404b431f
mov r9d, dword [rdx + 0x68]
and r9d, dword [rsp + 0x30]
je 0x1404b431f
mov r9d, dword [rsp + 0x34]
add dword [rbx + 0xc], r9d
jmp 0x1404b4324
test rbx, rbx
je 0x1404b434e
inc dword [rbx + 8]
xor r9d, r9d
test r8b, 1
sete r9b
shl r9d, 2
movzx r10d, r8b
and r10d, 1
shl r10d, 2
test r13b, r13b
cmovne r10, r9
inc dword [rbx + r10 + 0x20]
mov r9d, r8d
and r9b, 1
cmp word [rdx + 0x6c], di
je 0x1404b4367
test r9b, r9b
je 0x1404b4367
mov word [rdx + 0x6c], di
mov r15b, 1
cmp qword [rdx + 0x30], rbp
je 0x1404b4375
xor r10d, r10d
jmp 0x1404b429c
test r9b, r9b
movzx r10d, sil
mov r8d, 1
cmovne r10d, r8d
xor r9b, 1
cmp word [rdx + 0x6c], di
je 0x1404b4299
mov word [rdx + 0x6c], di
test rbx, rbx
je 0x1404b4299
mov byte [rbx], 1
jmp 0x1404b4299
and r15b, 1
mov edi, dword [rsp + 0x3c]
mov r13d, dword [rsp + 0x38]
test r13b, r13b
je 0x1404b43e7
xor edi, 0x99dc4efa
mov rax, qword [0x140771ae0]
add r14d, dword [rsp + 0x78]
add r14d, dword [0x140771a98]
movsxd r8, r14d
add r8, rax
lea rcx, [rsp + 0x88]
mov edx, edi
call r8
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.14059b6c0
mov eax, r15d
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret