Function at 0x140021ee0
Capabilities:
Create thread
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 r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0xe0
mov rax, qword [0x140077048]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rsi, rcx
xor r15d, r15d
xorps xmm0, xmm0
movups xmmword [rbp + 0x17], xmm0
mov qword [rbp + 0x27], 7
mov qword [rbp + 0x2f], reloc.OLEAUT32.dll_SafeArrayDestroy
mov rax, qword [str.iWeapon]
mov dword [rbp + 0x17], eax
movzx eax, word [0x14006b8bc]
mov word [rbp + 0x1b], ax
movzx eax, byte [0x14006b8be]
mov byte [rbp + 0x1d], al
mov byte [rbp + 0x1e], r15b
lea rdx, [rbp + 0x17]
call fcn.140004220
mov rdi, rax
cmp byte [rax + 0xe8], r15b
je 0x140021fef
lea ecx, [r15 + 0x30]
call fcn.1400333c4
mov rbx, rax
mov qword [rbp - 0x59], rax
lea rdx, [rbp + 0x17]
mov rcx, rax
call fcn.140001ea0
mov qword [rbx + 0x20], rsi
lea rax, [0x140023e80]
mov qword [rbx + 0x28], rax
mov qword [rbp - 0x29], rbx
lea rax, [rbp - 0x41]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r15d
mov r9, rbx
lea r8, [0x140029ed0]
xor edx, edx
xor ecx, ecx
call fcn.14003e3d8
mov qword [rbp - 0x49], rax
test rax, rax
je 0x140022758
cmp dword [rbp - 0x41], r15d
je 0x14002274d
movaps xmm0, xmmword [rbp - 0x49]
movdqa xmmword [rbp - 0x29], xmm0
lea rcx, [rbp - 0x29]
call fcn.14003296c
test eax, eax
jne 0x14002274d
mov bl, 1
jmp 0x1400226e4
mov qword [rax + 0x10], r15
mov dword [rax], r15d
mov dword [rax + 4], 2
mov word [rax + 0xec], 0x100
mov byte [rax + 0xe9], 1
mov byte [rax + 0xeb], 1
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
mov ecx, 0x120
call fcn.1400333c4
mov qword [rbp - 9], rax
mov qword [rbp + 7], 0x110
mov qword [rbp + 0xf], 0x11f
mov rcx, rax
lea rbx, str.8B_0D_FA_01_00_00_83_F9_00_0F_8E_0D_00_00_00_89_4A_28_C7_05_E4_01_00_00_00_00_00_00_8B_0D_E2_01_00_00_83_F9_00_0F_8E_0D_00_00_00_89_4A_2C_C7_05_CC_01_00_00_00_00_00_00_8B_0D_CA_01_00_00_83_F9_00_0F_8E_0D_00_00_00_89_4A_30_C7_05_B4_01_00_00_00_00_00_00_48_8B_02_48_8B_48_F0
mov rdx, rbx
mov r8d, 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 r8, 1
jne 0x140022050
movups xmm0, xmmword [rdx]
movups xmmword [rcx], xmm0
mov byte [rax + 0x110], r8b
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
lea ecx, [r8 + 0x20]
call fcn.1400333c4
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x19], SafeArrayUnaccessData
mov qword [rbp - 0x11], 0x1f
movups xmm0, xmmword [str.48_8B_02_48_8B_48_F0]
movups xmmword [rax], xmm0
mov ecx, dword [0x14006b9e8]
mov dword [rax + 0x10], ecx
mov byte [rax + 0x14], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
mov ecx, 0x40
call fcn.1400333c4
mov rcx, rax
mov qword [rbp - 0x49], rax
mov qword [rbp - 0x39], 0x3c
mov qword [rbp - 0x31], 0x3f
movups xmm0, xmmword [str.48_8B_02_48_8B_48_F0_48_8B_41_30____48_8B__24__48_83_C4]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x14006ba00]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x14006ba10]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x14006ba20]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x14006ba28]
mov dword [rcx + 0x38], eax
mov byte [rcx + 0x3c], 0
lea r9, [rbp - 9]
lea r8, [rbp - 0x29]
lea rdx, [rbp - 0x49]
mov rcx, rdi
call fcn.140003c70
nop
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x14002219d
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022197
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140022767
call fcn.140033390
nop
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x1400221d9
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400221d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002276d
call fcn.140033390
nop
mov rdx, qword [rbp + 0xf]
cmp rdx, 0x10
jb 0x140022214
inc rdx
mov rcx, qword [rbp - 9]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002220f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002277f
call fcn.140033390
mov dword [rdi + 0x88], 0x1388
mov dword [rsp + 0x38], 0xf0
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsi + 0xf8]
call fcn.14002e790
test al, al
jne 0x14002247c
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov ecx, 0x120
call fcn.1400333c4
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x19], 0x110
mov qword [rbp - 0x11], 0x11f
mov rcx, rax
mov edx, 2
movups xmm0, xmmword [rbx]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rbx + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rbx + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rbx + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rbx + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rbx + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rbx, [rbx + 0x80]
sub rdx, 1
jne 0x140022282
movups xmm0, xmmword [rbx]
movups xmmword [rcx], xmm0
mov byte [rax + 0x110], dl
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
lea ecx, [rdx + 0x20]
call fcn.1400333c4
mov qword [rbp - 0x49], rax
mov qword [rbp - 0x39], SafeArrayUnaccessData
mov qword [rbp - 0x31], 0x1f
movups xmm0, xmmword [str.48_8B_02_48_8B_48_F0]
movups xmmword [rax], xmm0
mov ecx, dword [0x14006b9e8]
mov dword [rax + 0x10], ecx
mov byte [rax + 0x14], 0
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
mov ecx, 0x40
call fcn.1400333c4
mov qword [rbp - 9], rax
mov qword [rbp + 7], 0x38
mov qword [rbp + 0xf], 0x3f
movups xmm0, xmmword [str.48_8B_02_48_8B_48_F0_48_8B_41_38____FF__44_8B___8B]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x14006ba40]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x14006ba50]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x14006ba60]
movsd qword [rax + 0x30], xmm0
mov byte [rax + 0x38], 0
lea r9, [rbp - 0x29]
lea r8, [rbp - 0x49]
lea rdx, [rbp - 9]
mov rcx, rdi
call fcn.140003c70
nop
mov rdx, qword [rbp + 0xf]
cmp rdx, 0x10
jb 0x1400223c1
inc rdx
mov rcx, qword [rbp - 9]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400223bb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140022773
call fcn.140033390
nop
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x1400223fd
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400223f7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140022779
call fcn.140033390
nop
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x140022438
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022433
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002277f
call fcn.140033390
mov dword [rdi + 0x88], 0x1388
mov dword [rsp + 0x38], 0xf0
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 1
xor r9d, r9d
mov r8b, 1
mov rdx, rdi
lea rcx, [rsi + 0xf8]
call fcn.14002e790
test al, al
jne 0x14002247c
xor bl, bl
jmp 0x1400226e4
mov rax, qword [rdi + 0x18]
cmp rax, 0x10000
jae 0x14002249f
mov rdx, 0xffffffffffffffff
lea rcx, [rsi + 0xf8]
call fcn.14002dad0
mov qword [rdi + 0x18], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], 2
mov qword [rbp - 0x31], reloc.OLEAUT32.dll_SafeArrayDestroy
movzx ecx, word [0x14006ba6c]
mov word [rbp - 0x49], cx
mov byte [rbp - 0x47], 0
lea rbx, [rax + 0x200]
lea rdx, [rbp - 0x49]
mov rcx, rsi
call fcn.1400292b0
mov qword [rax + 0x10], rbx
mov dword [rax + 0x44], 1
mov ecx, dword [rax + 0x4c]
mov edx, 1
cmp ecx, 0x7fffffff
je 0x1400224fc
cmp ecx, edx
jge 0x1400224fc
mov dword [rax + 0x44], ecx
mov edx, ecx
mov r8d, dword [rax + 0x50]
cmp r8d, 0x80000000
je 0x140022511
cmp edx, ecx
jge 0x140022511
mov dword [rax + 0x44], r8d
mov dword [rax], 3
mov dword [rax + 8], 1
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x140022559
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022554
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140022785
call fcn.140033390
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], 2
mov qword [rbp - 0x31], reloc.OLEAUT32.dll_SafeArrayDestroy
movzx eax, word [0x14006ba70]
mov word [rbp - 0x49], ax
mov byte [rbp - 0x47], 0
mov rbx, qword [rdi + 0x18]
add rbx, 0x204
lea rdx, [rbp - 0x49]
mov rcx, rsi
call fcn.1400292b0
mov qword [rax + 0x10], rbx
mov dword [rax + 0x44], 1
mov ecx, dword [rax + 0x4c]
mov edx, 1
cmp ecx, 0x7fffffff
je 0x1400225ba
cmp ecx, edx
jge 0x1400225ba
mov dword [rax + 0x44], ecx
mov edx, ecx
mov r8d, dword [rax + 0x50]
cmp r8d, 0x80000000
je 0x1400225cf
cmp edx, ecx
jge 0x1400225cf
mov dword [rax + 0x44], r8d
mov dword [rax], 3
mov dword [rax + 8], 1
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x140022617
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022612
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002278b
call fcn.140033390
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], 2
mov qword [rbp - 0x31], reloc.OLEAUT32.dll_SafeArrayDestroy
movzx eax, word [0x14006ba74]
mov word [rbp - 0x49], ax
mov byte [rbp - 0x47], 0
mov rbx, qword [rdi + 0x18]
add rbx, 0x208
lea rdx, [rbp - 0x49]
mov rcx, rsi
call fcn.1400292b0
mov qword [rax + 0x10], rbx
mov dword [rax + 0x44], 1
mov ecx, dword [rax + 0x4c]
mov edx, 1
cmp ecx, 0x7fffffff
je 0x140022678
cmp ecx, edx
jge 0x140022678
mov dword [rax + 0x44], ecx
mov edx, ecx
mov r8d, dword [rax + 0x50]
cmp r8d, 0x80000000
je 0x14002268d
cmp edx, ecx
jge 0x14002268d
mov dword [rax + 0x44], r8d
mov dword [rax], 3
mov dword [rax + 8], 1
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x1400226d5
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400226d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140022791
call fcn.140033390
lea rdx, [rbp + 0x17]
mov rcx, rsi
call fcn.140022b80
movzx ebx, al
mov rdx, qword [rbp + 0x2f]
cmp rdx, 0x10
jb 0x14002271b
inc rdx
mov rcx, qword [rbp + 0x17]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022716
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140022747
call fcn.140033390
movzx eax, bl
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.140033370
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.140039de4
nop
mov ecx, 1
call fcn.1400328d0
nop
mov dword [rbp - 0x41], r15d
mov ecx, 6
call fcn.1400328d0
nop
call fcn.140039de4
nop
call fcn.140039de4
nop
call fcn.140039de4
nop
call fcn.140039de4
nop
call fcn.140039de4
int3
call fcn.140039de4
int3
call fcn.140039de4
int3
call fcn.140039de4
int3