Function at 0x180202b60
Capabilities:
Parse pe header

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x250
lea rdi, [rsp + 0x20]
mov ecx, 0x8c
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x260]
mov rax, qword [0x180493728]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov rax, qword [rsp + 0x260]
mov rax, qword [rax + 0xa0]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x260]
mov rax, qword [rax + 0x98]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x260]
mov qword [rax + 0xd8], 0
cmp dword [rsp + 0x268], 0
jge 0x180202bf3
mov eax, dword [rsp + 0x268]
neg eax
mov dword [rsp + 0x238], eax
jmp 0x180202c01
mov eax, dword [rsp + 0x268]
mov dword [rsp + 0x238], eax
mov eax, dword [rsp + 0x238]
and eax, 0xffff
mov dword [rsp + 0x64], eax
xor edx, edx
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x180202c49
lea r8, [rsp + 0x54]
lea rdx, [0x180389148]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x180202c4e
jmp 0x1802035f1
mov dword [rsp + 0x24], 2
movzx eax, word [rsp + 0x54]
cmp eax, 0x5a4d
jne 0x1802035dd
xor eax, eax
test eax, eax
jne 0x180202c66
movzx eax, word [rsp + 0x56]
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x180202ca9
lea r8, [rsp + 0x74]
lea rdx, [0x180389160]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x180202cae
jmp 0x1802035f1
mov dword [rsp + 0x24], 2
movzx eax, word [rsp + 0x74]
cmp eax, 0x454e
jne 0x180202fb3
movzx eax, word [rsp + 0x56]
movzx ecx, word [rsp + 0x76]
add eax, ecx
mov dword [rsp + 0x84], eax
xor eax, eax
mov word [rsp + 0x8c], ax
mov dword [rsp + 0x90], 0
xor eax, eax
test eax, eax
jne 0x180202cee
mov edx, dword [rsp + 0x84]
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x180202d33
movzx eax, word [rsp + 0x78]
movzx ecx, word [rsp + 0x76]
sub eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1750
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x180202d38
jmp 0x1802035f1
mov rcx, qword [rsp + 0x38]
call fcn.1801a1cf0
mov word [rsp + 0x88], ax
movzx eax, word [rsp + 0x88]
cmp eax, 0x10
jle 0x180202d6a
xor eax, eax
test eax, eax
jne 0x180202d57
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
mov rcx, qword [rsp + 0x38]
call fcn.1801a1cf0
mov word [rsp + 0x94], ax
movzx eax, word [rsp + 0x94]
test eax, eax
jne 0x180202d8d
jmp 0x180202e11
mov rcx, qword [rsp + 0x38]
call fcn.1801a1cf0
mov word [rsp + 0x98], ax
movzx eax, word [rsp + 0x94]
cmp eax, 0x8008
jne 0x180202dea
movzx eax, word [rsp + 0x98]
mov word [rsp + 0x8c], ax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1520
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x38]
mov rdx, qword [rdx + 0x40]
mov rcx, qword [rcx + 0x38]
sub rcx, rdx
lea eax, [rax + rcx + 4]
mov dword [rsp + 0x90], eax
jmp 0x180202e11
movzx eax, word [rsp + 0x98]
imul eax, eax, 0xc
add eax, 4
cdqe
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x38]
mov rcx, qword [rsp + 0x38]
mov qword [rcx + 0x38], rax
jmp 0x180202d6a
mov rcx, qword [rsp + 0x38]
call fcn.1801a1930
movzx eax, word [rsp + 0x8c]
test eax, eax
je 0x180202e31
cmp dword [rsp + 0x90], 0
jne 0x180202e44
xor eax, eax
test eax, eax
jne 0x180202e31
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
movzx eax, word [rsp + 0x8c]
imul eax, eax, 0x76
mov rcx, qword [rsp + 0x38]
cmp eax, dword [rcx + 8]
jbe 0x180202e6c
xor eax, eax
test eax, eax
jne 0x180202e59
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
movzx eax, word [rsp + 0x8c]
mov rcx, qword [rsp + 0x260]
mov dword [rcx], eax
cmp dword [rsp + 0x268], 0
jge 0x180202e8d
jmp 0x1802035f1
movzx eax, word [rsp + 0x8c]
cmp dword [rsp + 0x64], eax
jl 0x180202ea8
mov dword [rsp + 0x24], 6
jmp 0x1802035f1
lea r8, [rsp + 0x24]
mov edx, 0xb8
mov rcx, qword [rsp + 0x40]
call fcn.18019b860
mov rcx, qword [rsp + 0x260]
mov qword [rcx + 0xd8], rax
cmp dword [rsp + 0x24], 0
je 0x180202ed7
jmp 0x1802035f1
imul eax, dword [rsp + 0x64], 0xc
mov ecx, dword [rsp + 0x90]
add ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x180202f18
mov edx, 0xc
mov rcx, qword [rsp + 0x38]
call fcn.1801a1750
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x180202f1d
jmp 0x1802035dd
mov rcx, qword [rsp + 0x38]
call fcn.1801a1cf0
movzx eax, ax
movzx ecx, word [rsp + 0x88]
shl eax, cl
mov rcx, qword [rsp + 0x260]
mov rcx, qword [rcx + 0xd8]
mov dword [rcx], eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1cf0
movzx eax, ax
movzx ecx, word [rsp + 0x88]
shl eax, cl
mov rcx, qword [rsp + 0x260]
mov rcx, qword [rcx + 0xd8]
mov dword [rcx + 0xa8], eax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x38]
add rax, 8
mov rcx, qword [rsp + 0x38]
mov qword [rcx + 0x38], rax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1930
mov rdx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x260]
mov rcx, qword [rax + 0xd8]
call fcn.180202980
mov dword [rsp + 0x24], eax
jmp 0x1802035a6
movzx eax, word [rsp + 0x74]
cmp eax, 0x4550
jne 0x1802035a6
xor eax, eax
test eax, eax
jne 0x180202fc3
movzx eax, word [rsp + 0x56]
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x180203009
lea r8, [rsp + 0xa8]
lea rdx, [0x180389178]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x18020300e
jmp 0x1802035f1
xor eax, eax
test eax, eax
jne 0x18020300e
cmp dword [rsp + 0xa8], 0x4550
jne 0x18020304e
movzx eax, word [rsp + 0xac]
cmp eax, 0x14c
jne 0x18020304e
movzx eax, word [rsp + 0xb0]
cmp eax, 0xe0
jne 0x18020304e
movzx eax, word [rsp + 0xb2]
cmp eax, 0x10b
je 0x180203061
xor eax, eax
test eax, eax
jne 0x18020304e
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
mov rax, qword [rsp + 0x260]
mov dword [rax], 0
xor eax, eax
mov word [rsp + 0x220], ax
jmp 0x18020308e
movzx eax, word [rsp + 0x220]
inc ax
mov word [rsp + 0x220], ax
movzx eax, word [rsp + 0x220]
movzx ecx, word [rsp + 0xae]
cmp eax, ecx
jge 0x1802030e5
lea r8, [rsp + 0xd8]
lea rdx, [0x1803891b0]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x1802030cb
jmp 0x1802035f1
xor eax, eax
test eax, eax
jne 0x1802030cb
mov eax, dword [rsp + 0xe0]
cmp dword [rsp + 0xb4], eax
jne 0x1802030e3
jmp 0x1802030f8
jmp 0x18020307b
xor eax, eax
test eax, eax
jne 0x1802030e5
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
xor eax, eax
test eax, eax
jne 0x1802030f8
mov edx, dword [rsp + 0xe8]
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x18020313e
lea r8, [rsp + 0x108]
lea rdx, [0x1803891d0]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x180203143
jmp 0x1802035f1
mov eax, dword [rsp + 0xe8]
mov dword [rsp + 0x214], eax
xor eax, eax
mov word [rsp + 0x220], ax
jmp 0x180203170
movzx eax, word [rsp + 0x220]
inc ax
mov word [rsp + 0x220], ax
movzx eax, word [rsp + 0x220]
movzx ecx, word [rsp + 0x114]
movzx edx, word [rsp + 0x116]
add ecx, edx
cmp eax, ecx
jge 0x1802035a6
movzx eax, word [rsp + 0x220]
mov ecx, dword [rsp + 0x214]
lea eax, [rcx + rax*8 + 0x10]
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x1802031e0
lea r8, [rsp + 0x198]
lea rdx, [0x1803891f0]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x1802031e5
jmp 0x1802035f1
mov eax, dword [rsp + 0x19c]
and eax, 0x80000000
test eax, eax
jne 0x180203202
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
mov eax, dword [rsp + 0x19c]
btr eax, 0x1f
mov dword [rsp + 0x19c], eax
mov eax, dword [rsp + 0x19c]
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x218], eax
mov eax, dword [rsp + 0x19c]
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x18020327a
lea r8, [rsp + 0x138]
lea rdx, [0x1803891d0]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x18020327f
jmp 0x1802035f1
xor eax, eax
mov word [rsp + 0x224], ax
jmp 0x18020329e
movzx eax, word [rsp + 0x224]
inc ax
mov word [rsp + 0x224], ax
movzx eax, word [rsp + 0x224]
movzx ecx, word [rsp + 0x144]
movzx edx, word [rsp + 0x146]
add ecx, edx
cmp eax, ecx
jge 0x1802035a1
movzx eax, word [rsp + 0x224]
mov ecx, dword [rsp + 0x218]
lea eax, [rcx + rax*8 + 0x10]
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x18020330e
lea r8, [rsp + 0x1b8]
lea rdx, [0x1803891f0]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x180203313
jmp 0x1802035f1
mov eax, dword [rsp + 0x1bc]
and eax, 0x80000000
test eax, eax
jne 0x180203330
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
mov eax, dword [rsp + 0x1bc]
btr eax, 0x1f
mov dword [rsp + 0x1bc], eax
mov eax, dword [rsp + 0x1bc]
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x21c], eax
mov eax, dword [rsp + 0x1bc]
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x1802033a8
lea r8, [rsp + 0x168]
lea rdx, [0x1803891d0]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x1802033ad
jmp 0x1802035f1
xor eax, eax
mov word [rsp + 0x228], ax
jmp 0x1802033cc
movzx eax, word [rsp + 0x228]
inc ax
mov word [rsp + 0x228], ax
movzx eax, word [rsp + 0x228]
movzx ecx, word [rsp + 0x174]
movzx edx, word [rsp + 0x176]
add ecx, edx
cmp eax, ecx
jge 0x18020359c
movzx eax, word [rsp + 0x228]
mov ecx, dword [rsp + 0x21c]
lea eax, [rcx + rax*8 + 0x10]
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x18020343c
lea r8, [rsp + 0x1d8]
lea rdx, [0x1803891f0]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x180203441
jmp 0x1802035f1
mov eax, dword [rsp + 0x1bc]
and eax, 0x80000000
test eax, eax
je 0x18020345e
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
cmp dword [rsp + 0x198], 8
jne 0x180203597
mov eax, dword [rsp + 0x1dc]
mov ecx, dword [rsp + 0x214]
add ecx, eax
mov eax, ecx
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.1801a1450
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x1802034b9
lea r8, [rsp + 0x1f8]
lea rdx, [0x180389200]
mov rcx, qword [rsp + 0x38]
call fcn.1801a2640
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x1802034be
jmp 0x1802035f1
xor eax, eax
test eax, eax
jne 0x1802034be
mov rax, qword [rsp + 0x260]
mov eax, dword [rax]
cmp dword [rsp + 0x64], eax
jne 0x180203581
lea r8, [rsp + 0x24]
mov edx, 0xb8
mov rcx, qword [rsp + 0x40]
call fcn.18019b860
mov rcx, qword [rsp + 0x260]
mov qword [rcx + 0xd8], rax
cmp dword [rsp + 0x24], 0
je 0x180203507
jmp 0x1802035f1
mov eax, dword [rsp + 0x1f8]
mov ecx, dword [rsp + 0xe8]
add ecx, eax
mov eax, ecx
sub eax, dword [rsp + 0xe0]
mov rcx, qword [rsp + 0x260]
mov rcx, qword [rcx + 0xd8]
mov dword [rcx], eax
mov rax, qword [rsp + 0x260]
mov rax, qword [rax + 0xd8]
mov ecx, dword [rsp + 0x1fc]
mov dword [rax + 0xa8], ecx
mov rdx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x260]
mov rcx, qword [rax + 0xd8]
call fcn.180202980
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
je 0x18020357b
xor eax, eax
test eax, eax
jne 0x180203571
jmp 0x1802035dd
xor eax, eax
test eax, eax
jne 0x18020357b
mov rax, qword [rsp + 0x260]
mov eax, dword [rax]
inc eax
mov rcx, qword [rsp + 0x260]
mov dword [rcx], eax
jmp 0x1802033b9
jmp 0x18020328b
jmp 0x18020315d
mov rax, qword [rsp + 0x260]
cmp dword [rax], 0
jne 0x1802035c3
xor eax, eax
test eax, eax
jne 0x1802035b3
mov dword [rsp + 0x24], 3
jmp 0x1802035f1
mov rax, qword [rsp + 0x260]
mov eax, dword [rax]
cmp dword [rsp + 0x64], eax
jl 0x1802035dd
mov dword [rsp + 0x24], 6
jmp 0x1802035f1
cmp dword [rsp + 0x24], 0
je 0x1802035f1
mov rcx, qword [rsp + 0x260]
call fcn.1802028a0
mov eax, dword [rsp + 0x24]
mov edi, eax
mov rcx, rsp
lea rdx, [0x180389700]
call fcn.180259f60
mov eax, edi
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.180258fa0
add rsp, 0x250
pop rdi
ret