Function at 0x140030530
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10d0]
mov eax, 0x11d0
call fcn.140045820
sub rsp, rax
mov rax, qword [0x14008d040]
xor rax, rsp
mov qword [rbp + 0x10c0], rax
mov r15, rdx
mov r14, rcx
mov qword [rbp - 0x68], rdx
xor r12d, r12d
mov dword [rsp + 0x30], r12d
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x20], xmm0
movups xmmword [rbp + 0x30], xmm0
mov ebx, r12d
xorps xmm1, xmm1
movups xmmword [rdx], xmm1
mov qword [rdx], r12
mov qword [rdx + 8], r12
mov qword [rdx + 0x10], r12
mov esi, 1
mov dword [rsp + 0x30], esi
mov ecx, 0x10000
mov edi, 0x5a4d
mov r13d, 0x20b
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r14]
lea r8, [rbp + 0x10]
mov rdx, rcx
mov rcx, r14
call qword [rax + 0x30]
cmp eax, 0xc000000d
je 0x140030d7e
cmp eax, 0xc0000022
je 0x140030d7e
cmp eax, 0xc000010a
je 0x140030d7e
test eax, eax
jne 0x140030d63
cmp dword [rbp + 0x30], 0x1000
jne 0x140030d63
mov eax, dword [rbp + 0x20]
cmp eax, 1
je 0x140030d63
bt eax, 8
jb 0x140030d63
mov rdx, qword [rbp + 0x18]
cmp rbx, rdx
je 0x140030d63
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], 7
mov word [rbp - 0x48], r12w
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 7
mov word [rbp - 0x28], r12w
mov rax, qword [r14]
mov qword [rsp + 0x20], r12
mov r9d, 0x1000
lea r8, [rbp + 0xc0]
mov rcx, r14
call qword [rax + 0x18]
test eax, eax
je 0x140030713
mov rdx, qword [rbp - 0x10]
cmp rdx, 7
jbe 0x1400306b9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
cmp rdx, 0x1000
mov rax, rcx
jb 0x1400306b4
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030db7
call fcn.140044c8c
mov rdx, qword [rbp - 0x30]
cmp rdx, 7
mov word [rbp - 0x28], r12w
mov qword [rbp - 0x10], 7
mov qword [rbp - 0x18], r12
jbe 0x140030d63
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x48]
cmp rdx, 0x1000
mov rax, rcx
jb 0x140030709
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030db7
call fcn.140044c8c
jmp 0x140030d63
movsxd rax, dword [rbp + 0xfc]
lea rax, [rbp + rax + 0xc0]
cmp word [rbp + 0xc0], di
jne 0x140030679
cmp dword [rax], 0x4550
jne 0x140030679
movzx ecx, word [rax + 0x18]
mov edx, 0x10b
cmp cx, dx
jne 0x14003074f
mov dword [rbp - 4], r12d
jmp 0x14003075c
cmp cx, r13w
jne 0x140030762
mov dword [rbp - 4], 1
mov eax, dword [rax + 0x50]
mov dword [rbp - 8], eax
mov rdx, qword [rbp + 0x18]
mov qword [rbp - 0x50], rdx
mov qword [rbp], r12
mov byte [rbp + 8], 0
mov rax, qword [r14]
mov qword [rsp + 0x20], 0x1000
lea r9, [rbp + 0xc0]
mov r8d, 2
mov rcx, r14
call qword [rax + 0x28]
xorps xmm0, xmm0
test eax, eax
jne 0x140030aea
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r12
mov r8, 0xffffffffffffffff
movups xmmword [rsp + 0x58], xmm0
cmp byte [r14 + 0x16], 1
jne 0x1400308ac
mov edx, dword [rbp + 0xc4]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400307c3
lea rcx, [rsp + 0x58]
call fcn.140004fd0
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x78]
call fcn.140010700
mov rbx, rax
lea rax, [rbp - 0x28]
cmp rax, rbx
je 0x140030863
mov rdx, qword [rbp - 0x10]
cmp rdx, 7
jbe 0x140030833
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003082e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030db1
call fcn.140044c8c
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 7
mov word [rbp - 0x28], r12w
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x28], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x18], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
mov rdx, qword [rbp - 0x70]
cmp rdx, 7
jbe 0x140030994
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003098f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030db1
jmp 0x14003098f
mov rdx, qword [rbp + 0xc8]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1400308b3
lea rcx, [rsp + 0x58]
call fcn.140004fd0
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x78]
call fcn.140010700
mov rbx, rax
lea rax, [rbp - 0x28]
cmp rax, rbx
je 0x140030953
mov rdx, qword [rbp - 0x10]
cmp rdx, 7
jbe 0x140030923
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003091e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030dbd
call fcn.140044c8c
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 7
mov word [rbp - 0x28], r12w
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x28], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x18], xmm1
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
mov rdx, qword [rbp - 0x70]
cmp rdx, 7
jbe 0x140030994
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003098f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030dbd
call fcn.140044c8c
mov r9, qword [rbp - 0x18]
lea rdx, [rbp - 0x28]
test r9, r9
jne 0x1400309b3
lea rcx, [rsp + 0x38]
call fcn.14000da10
or esi, 4
jmp 0x140030a8f
mov r10, qword [rbp - 0x28]
mov r11, qword [rbp - 0x10]
cmp r11, 7
cmova rdx, r10
lea rax, [r9 - 1]
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovb rcx, rax
lea r8, [rcx + rcx]
lea rax, [r8 + rdx]
cmp word [rax], 0x5c
je 0x1400309f2
cmp rax, rdx
je 0x1400309fe
sub rax, 2
cmp word [rax], 0x5c
jne 0x1400309e3
sub rax, rdx
sar rax, 1
cmp rax, 0xffffffffffffffff
jne 0x140030a42
lea rcx, [rbp - 0x28]
cmp r11, 7
cmova rcx, r10
lea rax, [rcx + r8]
cmp word [rax], 0x2f
je 0x140030a23
cmp rax, rcx
je 0x140030a2f
sub rax, 2
cmp word [rax], 0x2f
jne 0x140030a14
sub rax, rcx
sar rax, 1
cmp rax, 0xffffffffffffffff
jne 0x140030a42
lea rdx, [rbp - 0x28]
lea rcx, [rsp + 0x38]
call fcn.14000da10
or esi, 4
jmp 0x140030a8f
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x50], r12
cmp r9, rcx
jb 0x140030dab
sub r9, rcx
mov r8, 0xffffffffffffffff
cmp r9, r8
cmovb r8, r9
lea rax, [rbp - 0x28]
cmp r11, 7
cmova rax, r10
lea rdx, [rax + rcx*2]
lea rcx, [rsp + 0x38]
call fcn.140004fd0
or esi, 0xc
mov dword [rsp + 0x30], esi
mov rdx, qword [rbp - 0x30]
cmp rdx, 7
jbe 0x140030ad3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030ace
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030dc3
call fcn.140044c8c
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rbp - 0x48], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rbp - 0x38], xmm1
jmp 0x140030bcf
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
mov r8, qword [rbp - 0x50]
lea rdx, str.Unknown_0x_I64x
lea rcx, [rbp + 0x40]
call qword [sym.imp.USER32.dll_wsprintfW]
lea rax, [rbp + 0x40]
mov rdx, 0xffffffffffffffff
inc rdx
cmp word [rax + rdx*2], 0
jne 0x140030b36
mov rax, qword [rbp - 0x10]
cmp rdx, rax
ja 0x140030b74
lea rdi, [rbp - 0x28]
cmp rax, 7
cmova rdi, qword [rbp - 0x28]
mov qword [rbp - 0x18], rdx
lea rbx, [rdx + rdx]
mov r8, rbx
lea rdx, [rbp + 0x40]
mov rcx, rdi
call fcn.1400699b0
mov word [rdi + rbx], r12w
jmp 0x140030b81
lea r9, [rbp + 0x40]
lea rcx, [rbp - 0x28]
call fcn.14000de50
mov rdi, qword [rbp - 0x18]
lea r9, [rbp - 0x28]
cmp qword [rbp - 0x10], 7
cmova r9, qword [rbp - 0x28]
mov rax, qword [rbp - 0x30]
cmp rdi, rax
ja 0x140030bc3
lea rbx, [rbp - 0x48]
cmp rax, 7
cmova rbx, qword [rbp - 0x48]
mov qword [rbp - 0x38], rdi
lea r8, [rdi + rdi]
mov rdx, r9
mov rcx, rbx
call fcn.1400699b0
mov word [rbx + rdi*2], r12w
jmp 0x140030bcf
mov rdx, rdi
lea rcx, [rbp - 0x48]
call fcn.14000de50
mov ecx, 0x70
call fcn.140044a10
mov rdi, rax
mov qword [rbp - 0x60], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_obj2_struct_blackbone::ModuleData_const__.0
mov qword [rdi], rax
lea rbx, [rdi + 0x10]
mov qword [rsp + 0x38], rbx
mov rax, qword [rbp - 0x50]
mov qword [rbx], rax
lea rcx, [rbx + 8]
lea rdx, [rbp - 0x48]
call fcn.14000da10
nop
lea rcx, [rbx + 0x28]
lea rdx, [rbp - 0x28]
call fcn.14000da10
mov eax, dword [rbp - 8]
mov dword [rbx + 0x48], eax
mov eax, dword [rbp - 4]
mov dword [rbx + 0x4c], eax
mov rax, qword [rbp]
mov qword [rbx + 0x50], rax
movzx eax, byte [rbp + 8]
mov byte [rbx + 0x58], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
or esi, 2
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rdi
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 0x10]
je 0x140030c7b
mov qword [rdx], rbx
mov qword [rdx + 8], rdi
movdqu xmmword [rsp + 0x38], xmm0
add qword [r15 + 8], 0x10
jmp 0x140030c89
lea r8, [rsp + 0x38]
mov rcx, r15
call fcn.140029120
nop
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x140030ccd
mov eax, 0xffffffff
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x140030cc9
mov rbx, qword [rsp + 0x40]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140030cc9
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
call qword [rax + 8]
mov esi, dword [rsp + 0x30]
mov rbx, qword [rbp + 0x18]
mov rdx, qword [rbp - 0x10]
cmp rdx, 7
jbe 0x140030d11
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030d0c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030db7
call fcn.140044c8c
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], 7
mov word [rbp - 0x28], r12w
mov rdx, qword [rbp - 0x30]
cmp rdx, 7
jbe 0x140030d5e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140030d59
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030db7
call fcn.140044c8c
mov edi, 0x5a4d
mov rcx, qword [rbp + 0x10]
add rcx, qword [rbp + 0x28]
movabs rax, 0x7ffffffeffff
cmp rcx, rax
jb 0x1400305c0
mov rax, r15
mov rcx, qword [rbp + 0x10c0]
xor rcx, rsp
call fcn.1400449f0
mov rbx, qword [rsp + 0x1220]
add rsp, 0x11d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400049f0
int3
call fcn.14004fe58
nop
call fcn.14004fe58
nop
call fcn.14004fe58
int3
call fcn.14004fe58
int3