Function at 0x140020a10
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x14007a040]
xor rax, rsp
mov qword [rbp + 0xa8], rax
mov r13, rcx
call fcn.140022950
test al, al
je 0x1400213c8
xorps xmm0, xmm0
movups xmmword [rbp - 0x68], xmm0
movdqa xmm1, xmmword [0x140070340]
movdqu xmmword [rbp - 0x58], xmm1
movsd xmm0, qword [str.__iHealth]
movsd qword [rbp - 0x68], xmm0
movzx eax, byte [0x14006e198]
mov byte [rbp - 0x60], al
mov byte [rbp - 0x5f], 0
lea rdx, [rbp - 0x68]
mov rcx, r13
call fcn.140017400
mov rdi, rax
cmp byte [rax + 0x5c], 0
je 0x140020aa3
mov bl, 1
jmp 0x14002138e
xor eax, eax
mov qword [rdi + 0x10], rax
mov dword [rdi], eax
mov dword [rdi + 4], 2
mov word [rdi + 0x60], 0x100
mov byte [rdi + 0x5d], 1
mov byte [rdi + 0x5f], 1
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
mov ecx, 0x140
call fcn.140033954
mov rbx, rax
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x18], 0x137
mov r15d, 0x13f
mov qword [rbp - 0x10], r15
mov rcx, rax
lea rdx, str.50_53_48_8D_81_s1_00_00_F3_0F_10_30_48_BB_00_04_04_24_F6_7F_00_00_48_8B_1B_48_39_59_20_0F_85_19_00_00_00_83_3D_D5_01_00_00_01_0F_85_36_00_00_00_C7_40_04_00_00_00_00_E9_2A_00_00_00_83_3D_C0_01_00_00_01_0F_85_1D_00_00_00_F3_0F_2D_DE_FF_CB_F3_0F_2A_F3_0F_2F_70_04_0F_86_05_00_00_00_F3_0F_11_70_04_F3_0F_10_30_5B_58
mov eax, 2
nop dword [rax]
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rdx + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rdx, [rdx + 0x80]
sub rax, 1
jne 0x140020b00
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm0
mov eax, dword [rdx + 0x30]
mov dword [rcx + 0x30], eax
movzx eax, word [rdx + 0x34]
mov word [rcx + 0x34], ax
movzx eax, byte [rdx + 0x36]
mov byte [rcx + 0x36], al
mov byte [rbx + 0x137], 0
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
mov ecx, 0x20
call fcn.140033954
mov r14, rax
mov qword [rbp - 8], rax
mov qword [rbp + 8], SafeArrayUnaccessData
mov eax, 0x1f
mov qword [rsp + 0x50], rax
mov qword [rbp + 0x10], rax
movups xmm0, xmmword [str.F3_0F_10_B1_s1_00_00]
movups xmmword [r14], xmm0
mov eax, dword [0x14006e2e8]
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x14], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov ecx, 0x50
call fcn.140033954
mov rsi, rax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x38], 0x4a
mov r12d, 0x4f
mov qword [rbp - 0x30], r12
movaps xmm0, xmmword [str.F3_0F_10_B1_s1_00_00__8B____00_00__85__74___03_E8_____F3_0F_58]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x14006e300]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x14006e310]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x14006e320]
movups xmmword [rax + 0x30], xmm1
movsd xmm0, qword [0x14006e330]
movsd qword [rax + 0x40], xmm0
movzx eax, word [0x14006e338]
mov word [rsi + 0x48], ax
mov byte [rsi + 0x4a], 0
xor eax, eax
mov dword [rdi], eax
cmp dword [rdi + 4], 2
je 0x140020c4a
mov dword [rdi + 4], eax
lea rax, [rdi + 0x68]
lea rcx, [rbp - 0x48]
cmp rax, rcx
je 0x140020c70
mov r8d, 0x4a
mov rdx, rsi
mov rcx, rax
call fcn.140001f10
mov r12, qword [rbp - 0x30]
mov rsi, qword [rbp - 0x48]
lea rax, [rdi + 0x88]
lea rcx, [rbp - 8]
cmp rax, rcx
je 0x140020c95
mov r8d, SafeArrayUnaccessData
mov rdx, r14
mov rcx, rax
call fcn.140001f10
mov r14, qword [rbp - 8]
lea rax, [rdi + 0xa8]
lea rcx, [rbp - 0x28]
cmp rax, rcx
je 0x140020cbe
mov r8d, 0x137
mov rdx, rbx
mov rcx, rax
call fcn.140001f10
mov r15, qword [rbp - 0x10]
mov rbx, qword [rbp - 0x28]
cmp r12, 0xf
jbe 0x140020cf7
lea rdx, [r12 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140020cee
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400213fe
mov rcx, rsi
call fcn.140033920
nop
mov rdx, qword [rbp + 0x10]
cmp rdx, 0xf
jbe 0x140020d32
inc rdx
mov rax, r14
cmp rdx, 0x1000
jb 0x140020d29
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021404
mov rcx, r14
call fcn.140033920
nop
cmp r15, 0xf
jbe 0x140020d69
lea rdx, [r15 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140020d61
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021416
mov rcx, rbx
call fcn.140033920
movabs r14, 0x7ff624040400
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], 2
mov qword [rsp + 0x70], reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, 0x3173
mov word [rsp + 0x58], ax
mov byte [rsp + 0x5a], 0
mov dword [rsp + 0x28], 0x7fffffff
mov dword [rsp + 0x20], 0x80000000
mov r9d, 4
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x78]
call fcn.140020920
nop
lea rax, [rbp + 0x78]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.140029a10
lea rcx, [r13 + 0xf0]
xor r9d, r9d
mov r8, rax
mov rdx, rdi
call fcn.14002f210
movzx ebx, al
lea r9, [fcn.140001d50]
mov esi, 1
mov r8d, esi
lea edx, [rsi + 0x2f]
lea rcx, [rbp + 0x78]
call fcn.140033be0
test bl, bl
jne 0x14002115d
xorps xmm0, xmm0
movups xmmword [rbp + 0x38], xmm0
mov ecx, pe_nt_image_headers64
call fcn.140033954
mov rbx, rax
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x48], 0x113
mov r12d, 0x11f
mov qword [rbp + 0x50], r12
mov rcx, rax
lea rdx, str.50_51_48_8D_83_s1_00_00_48_B9_00_04_23_29_F7_7F_00_00_48_8B_09_48_39_4B_20_75_11_83_3D_DD_01_00_00_01_75_32_C7_00_00_00_00_00_EB_2A_83_3D_D0_01_00_00_01_75_21_0F_29_05_C3_02_00_00_F3_0F_2D_CE_FF_C9_F3_0F_2A_C1_0F_2F_00_76_04_F3_0F_11_00_0F_28_05_A9_02_00_00_F3_0F_5C_30_59_58
lea eax, [rsi + 1]
nop word [rax + rax]
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rdx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rdx + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rdx, [rdx + 0x80]
sub rax, rsi
jne 0x140020e60
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
movzx eax, word [rdx + 0x10]
mov word [rcx + 0x10], ax
movzx eax, byte [rdx + 0x12]
mov byte [rcx + 0x12], al
mov byte [rbx + 0x113], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x18], xmm0
mov ecx, 0x20
call fcn.140033954
mov r15, rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x28], SafeArrayUnaccessData
mov eax, 0x1f
mov qword [rbp + 0x30], rax
movups xmm0, xmmword [str.F3_0F_5C_B3_s1_00_00]
movups xmmword [r15], xmm0
mov eax, dword [0x14006e468]
mov dword [r15 + 0x10], eax
mov byte [r15 + 0x14], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x58], xmm0
mov ecx, 0x40
call fcn.140033954
mov r14, rax
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x68], 0x39
mov qword [rbp + 0x70], 0x3f
movups xmm0, xmmword [str.F3_0F_5C_B3_s1_00_00_0F_28__0F_28__24__48_83_C4___C3]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x14006e480]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x14006e490]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x14006e4a0]
movsd qword [rax + 0x30], xmm0
movzx eax, byte [0x14006e4a8]
mov byte [r14 + 0x38], al
mov byte [r14 + 0x39], 0
xor eax, eax
mov dword [rdi], eax
cmp dword [rdi + 4], 2
je 0x140020f82
mov dword [rdi + 4], eax
lea rax, [rbp + 0x58]
lea rcx, [rdi + 0x68]
cmp rcx, rax
je 0x140020fa1
mov r8d, 0x39
mov rdx, r14
call fcn.140001f10
mov r14, qword [rbp + 0x58]
lea rax, [rbp + 0x18]
lea rcx, [rdi + 0x88]
cmp rcx, rax
je 0x140020fcc
mov r8d, SafeArrayUnaccessData
mov rdx, r15
call fcn.140001f10
mov rax, qword [rbp + 0x30]
mov qword [rsp + 0x50], rax
mov r15, qword [rbp + 0x18]
lea rcx, [rbp + 0x38]
lea rax, [rdi + 0xa8]
cmp rax, rcx
je 0x140020ff5
mov r8d, 0x113
mov rdx, rbx
mov rcx, rax
call fcn.140001f10
mov r12, qword [rbp + 0x50]
mov rbx, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x70]
cmp rdx, 0xf
jbe 0x140021030
inc rdx
mov rax, r14
cmp rdx, 0x1000
jb 0x140021027
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002140a
mov rcx, r14
call fcn.140033920
nop
mov rax, qword [rsp + 0x50]
cmp rax, 0xf
jbe 0x14002106d
lea rdx, [rax + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x140021064
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021410
mov rcx, r15
call fcn.140033920
nop
cmp r12, 0xf
jbe 0x1400210a5
lea rdx, [r12 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14002109d
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021416
mov rcx, rbx
call fcn.140033920
movabs r14, 0x7ff729230400
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], 2
mov qword [rsp + 0x70], reloc.OLEAUT32.dll_SafeArrayDestroy
mov eax, 0x3173
mov word [rsp + 0x58], ax
mov byte [rsp + 0x5a], 0
mov dword [rsp + 0x28], 0x7fffffff
mov dword [rsp + 0x20], 0x80000000
mov r9d, 4
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0x78]
call fcn.140020920
nop
lea rax, [rbp + 0x78]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x78]
call fcn.140029a10
mov r9b, 1
mov r8, rax
mov rdx, rdi
lea r15, [r13 + 0xf0]
mov rcx, r15
call fcn.14002f210
movzx ebx, al
lea r9, [fcn.140001d50]
mov r8, rsi
mov edx, 0x30
lea rcx, [rbp + 0x78]
call fcn.140033be0
test bl, bl
jne 0x140021164
jmp 0x14002138e
lea r15, [r13 + 0xf0]
mov r9b, 1
mov rdx, 0xffffffffffffffff
mov r8d, 0x800
mov rcx, r15
call fcn.14002e7f0
mov qword [rdi + 0x18], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
movdqa xmm1, xmmword [reloc.OLEAUT32.dll_SysStringLen]
movdqu xmmword [rbp - 0x78], xmm1
mov eax, dword [str._iMove]
mov dword [rsp + 0x78], eax
movzx eax, word [0x14006e4b0]
mov word [rsp + 0x7c], ax
mov byte [rsp + 0x7e], 0
lea rdx, [rsp + 0x78]
mov rcx, r13
call fcn.140029b60
mov r9, qword [rax + 0x18]
add r9, 0x400
mov r8, r14
lea rdx, [rdi + 0xa8]
call fcn.1400038a0
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 0xf
jbe 0x140021214
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002120f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002141c
call fcn.140033920
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
movdqa xmm1, xmmword [0x1400702e0]
movdqu xmmword [rsp + 0x68], xmm1
mov word [rsp + 0x58], 0x31
mov rbx, qword [rdi + 0x18]
add rbx, 0x200
lea rdx, [rsp + 0x58]
mov rcx, r13
call fcn.140029b60
mov qword [rax + 0x10], rbx
mov dword [rax + 0x3c], esi
mov ecx, dword [rax + 0x4c]
mov edx, esi
cmp ecx, 0x7fffffff
je 0x140021266
cmp ecx, esi
jge 0x140021266
mov dword [rax + 0x3c], ecx
mov edx, ecx
mov r8d, dword [rax + 0x50]
cmp r8d, 0x80000000
je 0x14002127b
cmp edx, ecx
jge 0x14002127b
mov dword [rax + 0x3c], r8d
xor r14d, r14d
mov dword [rax + 0x40], r14d
mov byte [rax + 0x60], 1
mov byte [rax + 0x5e], r14b
mov dword [rax], 2
mov rdx, qword [rsp + 0x70]
cmp rdx, 0xf
jbe 0x1400212cd
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400212c8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021422
call fcn.140033920
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
movdqa xmm1, xmmword [0x1400702e0]
movdqu xmmword [rsp + 0x68], xmm1
mov word [rsp + 0x58], 0x30
mov rbx, qword [rdi + 0x18]
add rbx, 0x204
lea rdx, [rsp + 0x58]
mov rcx, r13
call fcn.140029b60
mov qword [rax + 0x10], rbx
mov dword [rax + 0x3c], esi
mov ecx, dword [rax + 0x4c]
cmp ecx, 0x7fffffff
je 0x14002131e
cmp ecx, 1
jge 0x14002131e
mov dword [rax + 0x3c], ecx
mov esi, ecx
mov edx, dword [rax + 0x50]
cmp edx, 0x80000000
je 0x140021330
cmp esi, ecx
jge 0x140021330
mov dword [rax + 0x3c], edx
mov dword [rax + 0x40], r14d
mov byte [rax + 0x60], 1
mov byte [rax + 0x5e], 0
mov dword [rax], 2
mov rdx, qword [rsp + 0x70]
cmp rdx, 0xf
jbe 0x14002137f
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002137a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021428
call fcn.140033920
lea rdx, [rbp - 0x68]
mov rcx, r13
call fcn.140026000
movzx ebx, al
mov rdx, qword [rbp - 0x50]
cmp rdx, 0xf
jbe 0x1400213c5
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400213c0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400213f8
call fcn.140033920
movzx eax, bl
mov rcx, qword [rbp + 0xa8]
xor rcx, rsp
call fcn.140033900
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14003a9f4
nop
call fcn.14003a9f4
nop
call fcn.14003a9f4
nop
call fcn.14003a9f4
nop
call fcn.14003a9f4
nop
call fcn.14003a9f4
int3
call fcn.14003a9f4
int3
call fcn.14003a9f4
int3
call fcn.14003a9f4
int3