Function at 0x18006a994
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x20], r9d
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0x90
xor r12d, r12d
mov r14, r8
mov rsi, rdx
mov dword [rbp - 0x39], r12d
mov rbx, rcx
xor edx, edx
lea rcx, [rbp - 0x19]
mov edi, r12d
lea r8d, [r12 + 0x38]
mov r15d, r12d
call sub.msvcrt.dll_memset
lea rdx, [rbp + 7]
mov qword [rbp - 0x19], rbx
mov rcx, rbx
call fcn.18006bd58
test eax, eax
je 0x18006ab46
mov ecx, 0x4000
mov dword [rbp + 0x17], ecx
call fcn.18006a2b8
xor ecx, ecx
mov qword [rbp + 0xf], rax
test rax, rax
jne 0x18006aa25
lea r9, [0x180088230]
xor edx, edx
lea r8, [0x180088230]
call fcn.180069f5c
jmp 0x18006ab46
lea r9, [rbp - 0x19]
mov r8d, 0x40
mov rdx, rsi
call fcn.18006a658
test eax, eax
je 0x18006ab46
mov eax, 0x5a4d
cmp word [rsi], ax
jne 0x18006aa77
cmp dword [rsi + 0x3c], r12d
jle 0x18006aa77
movsxd rcx, dword [rsi + 0x3c]
lea r9, [rbp - 0x19]
mov r8d, 4
lea rdx, [rbp - 0x25]
call fcn.18006a658
test eax, eax
je 0x18006ab46
cmp dword [rbp - 0x25], 0x4550
je 0x18006aa90
xor edx, edx
lea r9, [0x180088230]
xor ecx, ecx
lea r8d, [rdx + 1]
call fcn.180069eb4
jmp 0x18006ab46
movsxd rax, dword [rsi + 0x3c]
mov ebx, 0x80
mov dword [r14 + 0xa0], r12d
mov r15, rax
cmp eax, 0x110
jb 0x18006aad3
lea r9, [rbp - 0x19]
mov rdx, rsi
lea r8d, [rbx + 0x10]
mov ecx, ebx
call fcn.18006a658
test eax, eax
je 0x18006aeb5
cmp dword [rsi], 0x82c8851f
jne 0x18006aad3
mov dword [r14 + 0xa0], ebx
lea r9, [rbp - 0x19]
mov r8d, ILCombine
mov rdx, rsi
lea rcx, [r15 + 4]
call fcn.18006a658
test eax, eax
je 0x18006aeb5
add r15, 0x18
lea r9, [rbp - 0x19]
mov rcx, r15
lea rdx, [rbp + 0x67]
mov r8d, 2
call fcn.18006a658
test eax, eax
je 0x18006aeb5
mov eax, 0x10b
mov edi, 1
cmp word [rbp + 0x67], ax
jne 0x18006ab87
movzx eax, word [rsi + 0x10]
cmp ax, 0x78
jae 0x18006ab7e
lea r9, [0x180088230]
xor edx, edx
xor ecx, ecx
mov r8d, edi
call fcn.180069eb4
mov r15, r12
mov edi, r12d
mov rcx, qword [rbp + 0xf]
test rcx, rcx
je 0x18006ab54
call fcn.18006a2fc
test r15, r15
je 0x18006ab61
mov rcx, r15
call fcn.18006a2fc
mov rbx, qword [rsp + 0xd8]
mov eax, edi
add rsp, 0x90
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ebx, edi
mov ecx, 0xe0
jmp 0x18006aba8
mov eax, 0x20b
cmp word [rbp + 0x67], ax
jne 0x18006ab2d
movzx eax, word [rsi + 0x10]
mov ecx, 0x88
cmp ax, cx
jb 0x18006ab2d
mov ebx, r12d
mov ecx, 0xf0
movzx r12d, word [rsi + 2]
lea r9, [rbp - 0x19]
movzx r13d, ax
mov rdx, rsi
cmp r13d, ecx
cmovae r13d, ecx
mov rcx, r15
mov r8d, r13d
call fcn.18006a658
xor ecx, ecx
test eax, eax
je 0x18006aeab
lea eax, [r15 + 0x40]
mov dword [r14], eax
test ebx, ebx
je 0x18006ac20
lea eax, [r15 + 0x80]
mov dword [r14 + 4], eax
mov eax, dword [rsi + 0x80]
mov dword [r14 + 0xc], eax
mov eax, dword [rsi + 0x84]
mov dword [r14 + 0x14], eax
mov eax, dword [rsi + 0x40]
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x9c], cl
cmp word [rsi + 0x44], di
sete al
mov byte [r14 + 0x9d], al
mov rbx, qword [rsi + 0x70]
jmp 0x18006ac62
lea eax, [r15 + 0x90]
mov dword [r14 + 4], eax
mov eax, dword [rsi + 0x90]
mov dword [r14 + 0xc], eax
mov eax, dword [rsi + 0x94]
mov dword [r14 + 0x14], eax
mov eax, dword [rsi + 0x40]
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x9c], dil
cmp word [rsi + 0x44], di
sete al
mov byte [r14 + 0x9d], al
mov rbx, qword [rsi + 0x80]
mov eax, dword [r14 + 4]
add eax, 4
mov qword [rbp - 0x21], rbx
mov dword [r14 + 8], eax
mov eax, r13d
add r15, rax
mov dword [r14 + 0x18], ecx
mov byte [r14 + 0x9e], cl
mov dword [r14 + 0xb0], r15d
cmp dword [r14 + 0xa0], ecx
je 0x18006aca6
cmp byte [r14 + 0x9c], cl
jne 0x18006aca6
mov eax, edi
cmp byte [r14 + 0x9d], cl
jne 0x18006aca8
mov eax, ecx
mov dword [rbp - 0x29], eax
cmp dword [rbp + 0x7f], ecx
je 0x18006acb4
test ebx, ebx
jne 0x18006acbc
test eax, eax
je 0x18006aea3
mov eax, 0x333
mov word [rbp + 0x67], ax
cmp r12w, ax
jbe 0x18006acce
mov r12d, eax
mov ecx, 0xffff
cmp r12w, cx
lea eax, [rcx - 1]
cmovne ax, r12w
movzx r13d, ax
lea r12d, [r13*4]
add r12d, r13d
shl r12d, 3
mov ecx, r12d
call fcn.18006a2b8
mov qword [rbp - 0x31], rax
test rax, rax
jne 0x18006ad26
lea r9, [0x180088230]
xor edx, edx
lea r8, [0x180088230]
xor ecx, ecx
call fcn.180069f5c
mov r15, qword [rbp - 0x31]
mov edi, dword [rbp - 0x39]
jmp 0x18006ab46
lea r9, [rbp - 0x19]
mov r8d, r12d
mov rdx, rax
mov rcx, r15
call fcn.18006a658
mov r15, qword [rbp - 0x31]
test eax, eax
je 0x18006ad1e
add dword [r14 + 0xb0], r12d
xor r12d, r12d
cmp dword [rbp - 0x29], r12d
je 0x18006ad8a
mov rax, r15
movzx ecx, r12w
cmp r12w, r13w
jae 0x18006ad8a
mov dl, byte [0x18008834c]
mov r8d, dword [str.INIT]
cmp dword [rax], r8d
jne 0x18006ad74
cmp byte [rax + 4], dl
je 0x18006ad83
add rax, 0x28
add cx, di
cmp cx, r13w
jae 0x18006ad8a
jmp 0x18006ad6a
mov byte [r14 + 0x9e], dil
mov edx, dword [rbp - 0x1d]
movzx r9d, r13w
mov r8, r15
mov ecx, ebx
call fcn.18006bc04
mov ebx, eax
test eax, eax
je 0x18006ab46
lea rax, [rbp - 0x19]
mov r9d, 0x8000
mov r8, rsi
mov qword [rsp + 0x20], rax
mov edx, 0xa
mov ecx, ebx
call fcn.18006a830
test rax, rax
je 0x18006ab46
mov ecx, dword [rax + 4]
test ecx, ecx
jns 0x18006ab46
btr ecx, 0x1f
lea rax, [rbp - 0x19]
add ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0x8000
mov r8, rsi
mov edx, 0x360
call fcn.18006a830
test rax, rax
je 0x18006ab46
mov ecx, dword [rax + 4]
test ecx, ecx
jns 0x18006ab46
btr ecx, 0x1f
lea rax, [rbp - 0x19]
add ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0x8000
mov r8, rsi
xor edx, edx
call fcn.18006a830
test rax, rax
je 0x18006ab46
mov eax, dword [rax + 4]
test eax, eax
js 0x18006ab46
lea ecx, [rbx + rax]
mov r8d, ILClone
lea r9, [rbp - 0x19]
mov rdx, rsi
call fcn.18006a658
test eax, eax
je 0x18006ab43
cmp dword [rsi + 4], 0x80
jne 0x18006ab46
mov ecx, dword [rsi]
movzx r9d, r13w
mov r8, r15
mov edx, 0x80
call fcn.18006bc04
lea rdx, [r14 + 0x1c]
mov ecx, eax
lea r9, [rbp - 0x19]
mov r8d, 0x80
call fcn.18006a658
test eax, eax
je 0x18006ab43
mov dword [r14 + 0x18], ebx
jmp 0x18006ab46
mov r15, rcx
jmp 0x18006ab46
mov r15, rcx
mov edi, ecx
jmp 0x18006ab46
mov r15, rdi
jmp 0x18006ab46