Function at 0x140031950
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xa0
mov rax, qword [0x140076100]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov rax, qword gs:[0x58]
movabs rsi, 0xdd0fc6a86fd67c33
mov edi, 4
mov ebx, 1
movabs r14, 0x8ad77d973d1270
add rdi, qword [rax]
mov eax, dword [rdi]
cmp dword [0x1400796dc], eax
jle 0x140031a1c
lea rcx, [0x1400796dc]
call fcn.140038438
cmp dword [0x1400796dc], 0xffffffff
jne 0x140031a1c
movabs rax, 0xb161b4c31cb9085d
mov qword [rbp + 0x37], rsi
mov qword [rbp - 0x29], rax
lea rcx, [rbp - 0x29]
movabs rax, 0x8ad77df245775e
mov qword [rbp + 0x3f], r14
mov qword [rbp - 0x21], rax
mov r8d, ebx
movdqa xmm0, xmmword [rbp - 0x29]
xor edx, edx
xorps xmm0, xmmword [rbp + 0x37]
movdqa xmmword [rbp - 0x29], xmm0
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
lea rcx, [0x1400796dc]
mov qword [0x1400795c0], rax
call fcn.1400383cc
mov eax, dword [rdi]
cmp dword [0x1400795f8], eax
jle 0x140031a55
lea rcx, [0x1400795f8]
call fcn.140038438
cmp dword [0x1400795f8], 0xffffffff
jne 0x140031a55
mov rax, qword [0x1400795c0]
lea rcx, [0x1400795f8]
mov qword [0x1400797f0], rax
call fcn.1400383cc
mov rax, qword [0x1400797f0]
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140031d04
mov eax, dword [rdi]
cmp dword [0x1400796f8], eax
jle 0x140031aae
lea rcx, [0x1400796f8]
call fcn.140038438
cmp dword [0x1400796f8], 0xffffffff
jne 0x140031aae
mov rax, qword [0x1400797f0]
lea rcx, [0x1400796f8]
movsxd rdx, dword [rax + 0x3c]
add rdx, qword [0x1400795c0]
mov qword [0x140079650], rdx
call fcn.1400383cc
mov rax, qword [0x140079650]
cmp dword [rax], 0x4550
jne 0x140031d04
mov eax, dword [rdi]
cmp dword [0x140079550], eax
jle 0x140031b00
lea rcx, [0x140079550]
call fcn.140038438
cmp dword [0x140079550], 0xffffffff
jne 0x140031b00
mov rax, qword [0x140079650]
lea rcx, [0x140079550]
add rax, 0x108
mov qword [0x140079768], rax
call fcn.1400383cc
mov eax, dword [rdi]
cmp dword [0x1400796e0], eax
jle 0x140031b39
lea rcx, [0x1400796e0]
call fcn.140038438
cmp dword [0x1400796e0], 0xffffffff
jne 0x140031b39
mov rax, qword [0x140079768]
lea rcx, [0x1400796e0]
mov qword [0x1400797c8], rax
call fcn.1400383cc
mov eax, dword [rdi]
cmp dword [0x140079648], eax
jle 0x140031b76
lea rcx, [0x140079648]
call fcn.140038438
cmp dword [0x140079648], 0xffffffff
jne 0x140031b76
mov rax, qword [0x140079650]
lea rcx, [0x140079648]
movzx edx, word [rax + 6]
mov word [0x14007973c], dx
call fcn.1400383cc
xchg byte [0x140079510], bl
mov r8, qword [0x140079768]
test bl, bl
jne 0x140031c07
movzx eax, word [0x14007973c]
lea rcx, [rax + rax*4]
mov rax, qword [0x1400797c8]
lea r10, [rax + rcx*8]
cmp r8, r10
jae 0x140031c07
mov qword [rbp + 0x37], rsi
movabs r11, 0xdd0fc6a82a913d63
mov qword [rbp + 0x3f], r14
movdqa xmm1, xmmword [rbp + 0x37]
nop dword [rax]
mov qword [rbp - 0x19], r11
lea r9, [rbp - 0x19]
mov qword [rbp - 0x11], r14
mov rax, r8
movdqa xmm0, xmmword [rbp - 0x19]
sub r9, r8
xorps xmm0, xmm1
movdqa xmmword [rbp - 0x19], xmm0
nop
movzx edx, byte [rax]
movzx ecx, byte [rax + r9]
sub edx, ecx
jne 0x140031bf3
inc rax
test ecx, ecx
jne 0x140031be0
test edx, edx
je 0x140031c07
add r8, 0x28
mov qword [0x140079768], r8
cmp r8, r10
jb 0x140031bc0
mov eax, dword [rdi]
cmp dword [0x14007979c], eax
jle 0x140031c51
lea rcx, [0x14007979c]
call fcn.140038438
cmp dword [0x14007979c], 0xffffffff
jne 0x140031c4a
mov rax, qword [0x140079768]
lea rcx, [0x14007979c]
mov edx, dword [rax + 0xc]
add rdx, qword [0x1400795c0]
mov qword [0x140079528], rdx
call fcn.1400383cc
mov r8, qword [0x140079768]
mov ecx, dword [r8 + 0x10]
movdqa xmm0, xmmword [0x14006e2e0]
mov r9, qword [0x140079528]
movdqa xmm1, xmmword [0x14006e270]
mov dword [rbp + 0x27], 0x3f003f00
mov dword [rbp + 0x2b], 0x3f003f00
mov word [rbp + 0x2f], 0x78e8
lea r10, [r9 + rcx]
mov rax, r10
movdqu xmmword [rbp - 9], xmm0
movdqa xmm0, xmmword [0x14006e2f0]
movdqu xmmword [rbp + 7], xmm1
movdqu xmmword [rbp + 0x17], xmm0
cmp rcx, 0x1d
jb 0x140031ce9
lea r11, [r10 - 0x1d]
nop dword [rax + rax]
mov rdx, r9
lea rax, [rbp - 9]
nop word [rax + rax]
movzx r8d, word [rax]
movzx ecx, r8w
shr cx, 8
cmp cl, 0x3f
je 0x140031cd6
cmp byte [rdx], r8b
jne 0x140031cf7
inc rdx
lea rcx, [rbp + 0x31]
add rax, 2
cmp rax, rcx
jne 0x140031cc0
mov rax, r9
xor ecx, ecx
cmp rax, r10
cmovne rcx, rax
mov rax, rcx
jmp 0x140031d06
mov rax, r10
cmp r9, r11
je 0x140031ce9
inc r9
jmp 0x140031cb0
xor eax, eax
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.140038300
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret