Function at 0x140001690
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1e0]
sub rsp, 0x2e0
mov rax, qword [0x14002a590]
xor rax, rsp
mov qword [rbp + 0x1d8], rax
mov r13, r8
mov qword [rbp + 0xf0], rdx
mov r15, rcx
mov qword [rbp + 0x140], rcx
xor ecx, ecx
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x110], rcx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rcx
mov dword [rbp + 0x184], ecx
mov dword [rbp + 0x1a8], ecx
mov dword [rbp + 0x180], ecx
mov dword [rbp + 0x160], ecx
mov qword [rsp + 0x70], rcx
mov qword [rbp + 0x188], rcx
mov qword [rbp + 0x198], rcx
mov qword [rbp + 0x1a0], 0xf
mov byte [rbp + 0x188], cl
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x168], xmm0
mov qword [rbp + 0x178], rcx
mov ecx, 1
call fcn.14000affc
mov rcx, rax
mov qword [rbp + 0x168], rax
inc rax
mov qword [rbp + 0x178], rax
mov byte [rcx], 0
mov qword [rbp + 0x170], rax
mov al, 0xa6
mov cl, 0x1f
mov dl, 0x36
mov r8b, 0x85
mov r9b, 0xb5
mov r10b, 0x7f
mov r11b, 8
mov bl, 0x5e
mov dil, 0xa
mov sil, 0x96
mov r14b, 0xa7
xor r12d, r12d
mov byte [rbp + 0x14f], r12b
mov byte [rbp + 0x14f], r12b
mov dword [rbp + 0x140], 0x4ccc92c4
xor al, 0xc4
mov byte [rbp + 0x144], al
xor cl, 0x7c
mov byte [rbp + 0x145], cl
xor dl, 0x44
mov byte [rbp + 0x146], dl
xor r8b, 0xfc
mov byte [rbp + 0x147], r8b
xor r9b, 0xc5
mov byte [rbp + 0x148], r9b
xor r10b, 0xb
mov byte [rbp + 0x149], r10b
xor r11b, 0x26
mov byte [rbp + 0x14a], r11b
xor bl, 0x3a
mov byte [rbp + 0x14b], bl
xor dil, 0x66
mov byte [rbp + 0x14c], dil
xor sil, 0xfa
mov byte [rbp + 0x14d], sil
xor r14b, r14b
mov byte [rbp + 0x14e], r14b
movaps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x140], xmm0
xor esi, esi
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x68], 0xf
lea rax, [rbp + 0x144]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x140001841
lea rdx, [rbp + 0x144]
lea rcx, [rbp - 0x80]
call fcn.1400012e0
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 0x10
cmovae rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rdi, rax
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x1400018ad
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400018a8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b09
call fcn.14000b360
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
test rdi, rdi
je 0x140002a7b
mov dword [rbp + 0x118], 0x4ccc92c5
movdqa xmm0, xmmword [0x140026aa0]
movdqu xmmword [rbp + 0x11c], xmm0
mov dword [rbp + 0x12c], 0x506d6874
mov dword [rbp + 0x130], 0x69766f72
mov dword [rbp + 0x134], 0x726564
movups xmm0, xmmword [rbp + 0x118]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [rbp + 0x128]
movups xmmword [rbp + 0xe0], xmm1
mov qword [rbp + 0x40], rsi
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], 0xf
lea rax, [rbp + 0xd4]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x140001934
lea rdx, [rbp + 0xd4]
lea rcx, [rbp + 0x40]
call fcn.1400012e0
lea rdx, [rbp + 0x40]
cmp qword [rbp + 0x58], 0x10
cmovae rdx, qword [rbp + 0x40]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x60], rax
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x1400019a4
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000199f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b0f
call fcn.14000b360
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], 0xf
mov byte [rbp + 0x40], 0
mov dword [rbp + 0x118], 0x4ccc92c6
movdqa xmm0, xmmword [0x140026a70]
movdqu xmmword [rbp + 0x11c], xmm0
mov byte [rbp + 0x12c], 0x37
xor eax, eax
mov word [rbp + 0x12d], ax
mov byte [rbp + 0x12f], al
mov r8d, 0x4ccc92c6
lea rdx, [rbp + 0x11c]
lea rcx, [rsp + 0x50]
call fcn.140002b70
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x118], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x128], xmm1
mov qword [rbp + 0x20], rsi
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x38], 0xf
lea rax, [rbp + 0x11c]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140001a30
lea rdx, [rbp + 0x11c]
lea rcx, [rbp + 0x20]
call fcn.1400012e0
lea rdx, [rbp + 0x20]
cmp qword [rbp + 0x38], 0x10
cmovae rdx, qword [rbp + 0x20]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x68], rax
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x140001aa0
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001a9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b15
call fcn.14000b360
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], 0
movdqa xmm1, xmmword [0x140026a60]
mov byte [rbp + 0x153], 0
mov dword [rbp + 0x140], 0x4ccc92c7
movd eax, xmm1
xor al, 0xc7
mov byte [rbp + 0x144], al
movdqa xmm0, xmm1
psrldq xmm0, 1
movd eax, xmm0
xor al, 0x29
mov byte [rbp + 0x145], al
movdqa xmm0, xmm1
psrldq xmm0, 2
movd eax, xmm0
xor al, 0xe8
mov byte [rbp + 0x146], al
movdqa xmm0, xmm1
psrldq xmm0, 3
movd eax, xmm0
xor al, 0x98
mov byte [rbp + 0x147], al
movdqa xmm0, xmm1
psrldq xmm0, 4
movd eax, xmm0
xor al, 0xe8
mov byte [rbp + 0x148], al
movdqa xmm0, xmm1
psrldq xmm0, 5
movd eax, xmm0
xor al, 0x99
mov byte [rbp + 0x149], al
movdqa xmm0, xmm1
psrldq xmm0, 6
movd eax, xmm0
xor al, 0x77
mov byte [rbp + 0x14a], al
movdqa xmm0, xmm1
psrldq xmm0, 7
movd eax, xmm0
xor al, 0x7a
mov byte [rbp + 0x14b], al
movdqa xmm0, xmm1
psrldq xmm0, 8
movd eax, xmm0
xor al, 0x27
mov byte [rbp + 0x14c], al
movdqa xmm0, xmm1
psrldq xmm0, 9
movd eax, xmm0
xor al, 0xc9
mov byte [rbp + 0x14d], al
movdqa xmm0, xmm1
psrldq xmm0, 0xa
movd eax, xmm0
xor al, 0x48
mov byte [rbp + 0x14e], al
movdqa xmm0, xmm1
psrldq xmm0, 0xb
movd eax, xmm0
xor al, 0x38
mov byte [rbp + 0x14f], al
movdqa xmm0, xmm1
psrldq xmm0, 0xc
movd eax, xmm0
xor al, 0x48
mov byte [rbp + 0x150], al
movdqa xmm0, xmm1
psrldq xmm0, 0xd
movd eax, xmm0
xor al, 0x38
mov byte [rbp + 0x151], al
psrldq xmm1, 0xe
movd eax, xmm1
xor al, 0x48
mov byte [rbp + 0x152], al
movups xmm0, xmmword [rbp + 0x140]
movups xmmword [rsp + 0x50], xmm0
mov eax, dword [rbp + 0x150]
mov dword [rsp + 0x60], eax
mov qword [rbp], rsi
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], 0xf
lea rax, [rsp + 0x54]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x140001c25
lea rdx, [rsp + 0x54]
lea rcx, [rbp]
call fcn.1400012e0
lea rdx, [rbp]
cmp qword [rbp + 0x18], 0x10
cmovae rdx, qword [rbp]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x70], rax
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x140001c93
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001c8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b1b
call fcn.14000b360
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], 0xf
mov byte [rbp], 0
mov dword [rbp + 0x118], 0x4ccc92c0
movdqa xmm0, xmmword [0x140026ad0]
movdqu xmmword [rbp + 0x11c], xmm0
mov dword [rbp + 0x12c], 0x81e8
mov r8d, 0x4ccc92c0
lea rdx, [rbp + 0x11c]
lea rcx, [rsp + 0x50]
call fcn.140002e70
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x118], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x128], xmm1
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], 0xf
lea rax, [rbp + 0x11c]
mov r8, rbx
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140001d10
lea rdx, [rbp + 0x11c]
lea rcx, [rbp - 0x20]
call fcn.1400012e0
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 0x10
cmovae rdx, qword [rbp - 0x20]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x140], rax
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x140001d83
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001d7e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b21
call fcn.14000b360
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
lea rdx, [rbp + 0xd0]
call fcn.1400031a0
cmp qword [rax + 0x18], 0x10
jb 0x140001da9
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x80], rax
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x140001dfd
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001df8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b27
call fcn.14000b360
mov qword [rbp + 0xe0], rsi
mov qword [rbp + 0xe8], 0xf
mov byte [rbp + 0xd0], 0
mov dword [rbp + 0x118], 0x4ccc92c2
movdqa xmm0, xmmword [0x140026ac0]
movdqu xmmword [rbp + 0x11c], xmm0
mov byte [rbp + 0x12c], 0x30
xor eax, eax
mov word [rbp + 0x12d], ax
mov byte [rbp + 0x12f], al
mov r8d, 0x4ccc92c2
lea rdx, [rbp + 0x11c]
lea rcx, [rsp + 0x50]
call fcn.140002b70
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x118], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x128], xmm1
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x30], rsi
mov qword [rbp - 0x28], 0xf
lea rax, [rbp + 0x11c]
mov r8, rbx
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140001e90
lea rdx, [rbp + 0x11c]
lea rcx, [rbp - 0x40]
call fcn.1400012e0
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 0x10
cmovae rdx, qword [rbp - 0x40]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x78], rax
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x140001f00
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001efb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b2d
call fcn.14000b360
mov qword [rbp - 0x30], rsi
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], 0
movdqa xmm1, xmmword [0x140026a50]
mov word [rsp + 0x62], si
mov dword [rsp + 0x50], 0x4ccc92c3
movd eax, xmm1
xor al, 0xc3
mov byte [rsp + 0x54], al
movdqa xmm0, xmm1
psrldq xmm0, 1
movd eax, xmm0
xor al, 0xed
mov byte [rsp + 0x55], al
movdqa xmm0, xmm1
psrldq xmm0, 2
movd eax, xmm0
xor al, 0x64
mov byte [rsp + 0x56], al
movdqa xmm0, xmm1
psrldq xmm0, 3
movd eax, xmm0
xor al, 0xdc
mov byte [rsp + 0x57], al
movdqa xmm0, xmm1
psrldq xmm0, 4
movd eax, xmm0
xor al, 0xe5
mov byte [rsp + 0x58], al
movdqa xmm0, xmm1
psrldq xmm0, 5
movd eax, xmm0
xor al, 0xec
mov byte [rsp + 0x59], al
movdqa xmm0, xmm1
psrldq xmm0, 6
movd eax, xmm0
xor al, 0xd4
mov byte [rsp + 0x5a], al
movdqa xmm0, xmm1
psrldq xmm0, 7
movd eax, xmm0
xor al, 0x6d
mov byte [rsp + 0x5b], al
movdqa xmm0, xmm1
psrldq xmm0, 8
movd eax, xmm0
xor al, 0xe4
mov byte [rsp + 0x5c], al
movdqa xmm0, xmm1
psrldq xmm0, 9
movd eax, xmm0
xor al, 0x5d
mov byte [rsp + 0x5d], al
movdqa xmm0, xmm1
psrldq xmm0, 0xa
movd eax, xmm0
xor al, 0xf3
mov byte [rsp + 0x5e], al
movdqa xmm0, xmm1
psrldq xmm0, 0xb
movd eax, xmm0
xor al, 0xbe
mov byte [rsp + 0x5f], al
movdqa xmm0, xmm1
psrldq xmm0, 0xc
movd eax, xmm0
xor al, 0x23
mov byte [rsp + 0x60], al
psrldq xmm1, 0xd
movd eax, xmm1
xor al, 0x8e
mov byte [rsp + 0x61], al
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp + 0x118], xmm0
mov eax, dword [rsp + 0x60]
mov dword [rbp + 0x128], eax
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x48], 0xf
lea rax, [rbp + 0x11c]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x140002052
lea rdx, [rbp + 0x11c]
lea rcx, [rbp - 0x60]
call fcn.1400012e0
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rdx, qword [rbp - 0x60]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbp + 0x88], rax
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x1400020c5
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400020c0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b33
call fcn.14000b360
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
mov dword [rbp + 0x118], 0x4ccc92cc
movdqa xmm0, xmmword [0x140026ae0]
movdqu xmmword [rbp + 0x11c], xmm0
mov dword [rbp + 0x12c], 0x2354
mov r8d, 0x4ccc92cc
lea rdx, [rbp + 0x11c]
lea rcx, [rsp + 0x50]
call fcn.140002e70
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x118], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x128], xmm1
mov qword [rbp + 0x90], rsi
mov qword [rbp + 0xa0], rsi
mov qword [rbp + 0xa8], 0xf
lea rax, [rbp + 0x11c]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140002150
lea rdx, [rbp + 0x11c]
lea rcx, [rbp + 0x90]
call fcn.1400012e0
lea rdx, [rbp + 0x90]
cmp qword [rbp + 0xa8], 0x10
cmovae rdx, qword [rbp + 0x90]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
mov rdx, qword [rbp + 0xa8]
cmp rdx, 0x10
jb 0x1400021d1
inc rdx
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400021cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b39
call fcn.14000b360
mov qword [rbp + 0xa0], rsi
mov qword [rbp + 0xa8], 0xf
mov byte [rbp + 0x90], 0
mov dword [rbp + 0x118], 0x4ccc92cd
movdqa xmm0, xmmword [0x140026a80]
movdqu xmmword [rbp + 0x11c], xmm0
mov byte [rbp + 0x12c], 0x2f
xor eax, eax
mov word [rbp + 0x12d], ax
mov byte [rbp + 0x12f], al
mov r8d, 0x4ccc92cd
lea rdx, [rbp + 0x11c]
lea rcx, [rsp + 0x50]
call fcn.140002b70
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x118], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x128], xmm1
mov qword [rbp + 0xb0], rsi
mov qword [rbp + 0xc0], rsi
mov qword [rbp + 0xc8], 0xf
lea rax, [rbp + 0x11c]
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x140002270
mov r8, rbx
lea rdx, [rbp + 0x11c]
lea rcx, [rbp + 0xb0]
call fcn.1400012e0
lea rdx, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 0x10
cmovae rdx, qword [rbp + 0xb0]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r12, rax
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0x10
jb 0x1400022f3
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400022ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b3f
call fcn.14000b360
mov qword [rbp + 0xc0], rsi
mov qword [rbp + 0xc8], 0xf
mov byte [rbp + 0xb0], 0
lea rdx, [rbp + 0x118]
call fcn.1400033e0
cmp qword [rax + 0x18], 0x10
jb 0x140002322
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
mov rdx, qword [rbp + 0x130]
cmp rdx, 0x10
jb 0x140002372
inc rdx
mov rcx, qword [rbp + 0x118]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000236d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b45
call fcn.14000b360
xor ebx, ebx
mov qword [rbp + 0x128], rbx
mov qword [rbp + 0x130], 0xf
mov byte [rbp + 0x118], bl
cmp qword [rbp + 0x60], rbx
je 0x140002a38
cmp qword [rbp + 0x68], rbx
je 0x140002a38
cmp qword [rbp + 0x70], rbx
je 0x140002a38
cmp qword [rbp + 0x140], rbx
je 0x140002a38
cmp qword [rbp + 0x80], rbx
je 0x140002a38
cmp qword [rbp + 0x78], rbx
je 0x140002a38
cmp qword [rbp + 0x88], rbx
je 0x140002a38
test r14, r14
je 0x140002a38
test r12, r12
je 0x140002a38
test rsi, rsi
je 0x140002a38
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1b0], xmm1
mov qword [rbp + 0x1c0], rbx
mov rbx, qword [rbp + 0xf0]
sub r13, rbx
je 0x14000248d
movabs rax, 0x7fffffffffffffff
cmp r13, rax
ja 0x140002b4b
cmp r13, 0x1000
jb 0x14000245c
lea rcx, [r13 + 0x27]
cmp rcx, r13
jbe 0x140002b51
call fcn.14000affc
mov rcx, rax
test rax, rax
je 0x140002b5d
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140002464
mov rcx, r13
call fcn.14000affc
mov qword [rbp + 0x1b0], rax
lea rdi, [rax + r13]
mov qword [rbp + 0x1c0], rdi
mov r8, r13
mov rdx, rbx
mov rcx, rax
call fcn.140010620
mov qword [rbp + 0x1b8], rdi
jmp 0x140002494
mov rdi, qword [rbp + 0x1b8]
sub rdi, qword [rbp + 0x1b0]
lea rcx, [rbp - 0x80]
call fcn.140001490
mov rbx, rax
lea rax, [rbp + 0x188]
cmp rax, rbx
je 0x140002531
mov rdx, qword [rbp + 0x1a0]
cmp rdx, 0x10
jb 0x1400024f4
inc rdx
mov rcx, qword [rbp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400024ef
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b57
call fcn.14000b360
xor eax, eax
mov qword [rbp + 0x198], rax
mov qword [rbp + 0x1a0], 0xf
mov byte [rbp + 0x188], al
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x188], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x198], xmm1
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 0xf
mov byte [rbx], al
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14000256c
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002567
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b57
call fcn.14000b360
lea r8, [0x14002b000]
cmp qword [0x14002b018], 0x10
cmovae r8, qword [0x14002b000]
mov r9, qword [0x14002b010]
lea rcx, [rbp + 0x188]
call fcn.140009eb0
lea rcx, [rbp + 0x188]
cmp rcx, rax
je 0x1400025bf
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1400025b0
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0x188]
call fcn.1400012e0
xor r9d, r9d
xor r8d, r8d
lea rdx, str.SHA256
lea rcx, [rbp + 0xf8]
mov r13, qword [rbp + 0x60]
call r13
test eax, eax
js 0x140002857
mov dword [rsp + 0x28], 0
lea rax, [rbp + 0x1a8]
mov qword [rsp + 0x20], rax
mov r9d, 4
lea r8, [rbp + 0x184]
lea rdx, str.ObjectLength
mov rcx, qword [rbp + 0xf8]
call r14
test eax, eax
js 0x140002857
mov ebx, dword [rbp + 0x184]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x28], 0
lea rax, [rbp + 0x1a8]
mov qword [rsp + 0x20], rax
mov r9d, 4
lea r8, [rbp + 0x180]
lea rdx, str.HashDigestLength
mov rcx, qword [rbp + 0xf8]
call r14
test eax, eax
js 0x14000284b
mov ebx, dword [rbp + 0x180]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, rax
mov qword [rsp + 0x70], rax
xor eax, eax
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp + 0x184]
mov r14, qword [rsp + 0x78]
mov r8, r14
lea rdx, [rbp + 0x100]
mov rcx, qword [rbp + 0xf8]
call qword [rbp + 0x68]
test eax, eax
js 0x14000285f
lea rdx, [rbp + 0x188]
cmp qword [rbp + 0x1a0], 0x10
cmovae rdx, qword [rbp + 0x188]
xor r9d, r9d
mov r8d, dword [rbp + 0x198]
mov rcx, qword [rbp + 0x100]
call qword [rbp + 0x70]
test eax, eax
js 0x14000285f
xor r9d, r9d
mov r8d, dword [rbp + 0x180]
mov rdx, rbx
mov rcx, qword [rbp + 0x100]
call qword [rbp + 0x78]
test eax, eax
js 0x14000285f
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x1c8], xmm0
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x1400269d8]
lea rcx, [rbp + 0x110]
call r13
xor r13d, r13d
test eax, eax
js 0x140002862
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x28], 0x10
lea rax, [rbp + 0x1c8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x108]
mov rcx, qword [rbp + 0x110]
call qword [rbp + 0x80]
test eax, eax
js 0x140002862
mov dword [rsp + 0x48], 1
lea rax, [rbp + 0x160]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
xor r9d, r9d
mov r8d, edi
mov rdx, qword [rbp + 0x1b0]
mov rcx, qword [rbp + 0x108]
mov rbx, qword [rbp + 0x88]
call rbx
test eax, eax
js 0x140002844
mov ecx, dword [rbp + 0x160]
mov edx, ecx
mov rax, qword [rbp + 0x178]
mov r8, qword [rbp + 0x168]
sub rax, r8
cmp rcx, rax
jbe 0x140002807
lea rcx, [rbp + 0x168]
call fcn.140009c30
mov ecx, dword [rbp + 0x160]
mov r8, qword [rbp + 0x168]
mov dword [rsp + 0x48], 1
lea rax, [rbp + 0x160]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], ecx
mov qword [rsp + 0x30], r8
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
xor r9d, r9d
mov r8d, edi
mov rdx, qword [rbp + 0x1b0]
mov rcx, qword [rbp + 0x108]
call rbx
mov rbx, qword [rsp + 0x70]
jmp 0x140002862
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
jmp 0x14000285f
mov rbx, qword [rsp + 0x70]
mov r14, rbx
xor r13d, r13d
mov rcx, qword [rbp + 0xf8]
test rcx, rcx
je 0x140002872
xor edx, edx
call rsi
mov rcx, qword [rbp + 0x110]
test rcx, rcx
je 0x140002882
xor edx, edx
call rsi
mov rcx, qword [rbp + 0x108]
test rcx, rcx
je 0x140002891
call r12
mov rcx, qword [rbp + 0x100]
test rcx, rcx
je 0x1400028a3
call qword [rbp + 0x140]
test r14, r14
je 0x1400028bc
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, r14
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rbx, rbx
je 0x1400028d5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, rbx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [rbp + 0x160]
mov r8, qword [rbp + 0x168]
add rcx, r8
mov rdx, qword [rbp + 0x170]
cmp rcx, rdx
cmovne rdx, rcx
mov rax, qword [rbp + 0x178]
mov r9, r13
mov qword [rbp + 0x178], r13
mov qword [rbp + 0x170], r13
mov rcx, r13
mov qword [rbp + 0x168], rcx
mov qword [r15], r8
mov qword [r15 + 8], rdx
mov qword [r15 + 0x10], rax
mov r8, qword [rbp + 0x1b0]
test r8, r8
je 0x140002983
mov rdx, qword [rbp + 0x1c0]
sub rdx, r8
mov rax, r8
cmp rdx, 0x1000
jb 0x14000295b
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b5d
mov rcx, r8
call fcn.14000b360
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1b0], xmm0
mov qword [rbp + 0x1c0], r13
mov r9, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x168]
test rcx, rcx
je 0x1400029ca
sub r9, rcx
mov rax, rcx
cmp r9, 0x1000
jb 0x1400029b0
add r9, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002afd
mov rdx, r9
call fcn.14000b360
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x168], xmm0
mov qword [rbp + 0x178], r13
mov rdx, qword [rbp + 0x1a0]
cmp rdx, 0x10
jb 0x140002a0b
inc rdx
mov rcx, qword [rbp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002a06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b03
call fcn.14000b360
mov rax, r15
mov rcx, qword [rbp + 0x1d8]
xor rcx, rsp
call fcn.14000ad40
mov rbx, qword [rsp + 0x338]
add rsp, 0x2e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rdx, qword [rbp + 0x178]
mov qword [rbp + 0x178], rbx
mov rcx, qword [rbp + 0x170]
mov qword [rbp + 0x170], rbx
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x168], rbx
mov qword [r15], rax
mov qword [r15 + 8], rcx
mov qword [r15 + 0x10], rdx
jmp 0x1400029ca
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rdx, qword [rbp + 0x178]
mov qword [rbp + 0x178], rsi
mov rcx, qword [rbp + 0x170]
mov qword [rbp + 0x170], rsi
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x168], rsi
mov qword [r15], rax
mov qword [r15 + 8], rcx
mov qword [r15 + 0x10], rdx
mov rdx, qword [rbp + 0x1a0]
cmp rdx, 0x10
jb 0x140002a0b
inc rdx
mov rcx, qword [rbp + 0x188]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002a06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002b03
jmp 0x140002a06
call fcn.140011a2c
nop
call fcn.140011a2c
nop
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140011a2c
int3
call fcn.140009c10
int3
call fcn.140001140
nop
call fcn.140011a2c
nop
call fcn.140011a2c
int3