Function at 0x4cab20
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x98]
nop dword [rax + rax]
cmp rax, qword [rcx + 0x10]
jbe 0x4cb8e8
sub rsp, 0x118
mov qword [rsp + 0x110], rbp
lea rbp, [rsp + 0x110]
lea rax, [0x00506ca0]
mov qword [rsp], rax
call fcn.0040d880
mov rax, qword [rsp + 8]
mov qword [rsp + 0xb8], rax
nop
lea rcx, [0x00503020]
mov qword [rsp], rcx
call fcn.0040d880
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x120]
mov qword [rax], rcx
cmp dword [0x00617e70], 0
jne 0x4cb8b9
mov rcx, qword [rsp + 0x128]
mov qword [rax + 8], rcx
mov qword [rsp + 0xa8], rax
xorps xmm0, xmm0
movups xmmword [rax + 0x10], xmm0
movabs rcx, 0x7fffffffffffffff
mov qword [rax + 0x20], rcx
lea rcx, [0x004f33a0]
mov qword [rsp], rcx
call fcn.0040d880
mov rax, qword [rsp + 8]
mov qword [rsp + 0xc8], rax
mov rcx, qword [rsp + 0x120]
mov rdx, qword [rcx + 0x18]
mov rbx, qword [rsp + 0x128]
mov qword [rsp], rbx
mov qword [rsp + 0x10], 0x60
mov qword [rsp + 0x18], 0x60
mov qword [rsp + 0x20], 0
call rdx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
cmp qword [rsp + 0x30], 0
jne 0x4cb88d
mov rax, qword [rsp + 0xc8]
cmp byte [rax], 0x4d
jne 0x4cac54
cmp byte [rax + 1], 0x5a
je 0x4cb750
xor eax, eax
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
lea rbx, [rax + rdx]
cmp rdx, rbx
jle 0x4cb747
lea rax, [0x005409f8]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
lea rdx, [0x00541b68]
mov qword [rsp + 0x10], rdx
lea rbx, [0x00617e00]
mov qword [rsp + 0x18], rbx
lea rsi, [0x004ec100]
mov qword [rsp + 0x20], rsi
mov rsi, qword [rsp + 0xb8]
mov qword [rsp + 0x28], rsi
call fcn.0048ff80
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
cmp qword [rsp + 0x30], 0
jne 0x4cb71b
mov rax, qword [rsp + 0xb8]
movzx ecx, word [rax]
nop dword [rax + rax]
cmp cx, 0x14c
ja 0x4cb700
test cx, cx
jne 0x4cb653
mov qword [rsp], rax
lea rcx, [0x00540c70]
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0xa8]
mov qword [rsp + 0x10], rdx
call fcn.004cf2e0
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x30]
test rdi, rdi
mov r8, qword [rsp + 0xb8]
mov qword [r8 + 0x78], rcx
mov qword [r8 + 0x80], rdx
cmp dword [0x00617e70], 0
jne 0x4cb63c
mov qword [r8 + 0x70], rax
nop dword [rax + rax]
test rdi, rdi
jne 0x4cb610
mov qword [rsp], r8
lea rax, [0x00540c70]
mov qword [rsp + 8], rax
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 0x10], rcx
call fcn.004cf8e0
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x30]
test rdi, rdi
mov r8, qword [rsp + 0xb8]
mov qword [r8 + 0x60], rcx
mov qword [r8 + 0x68], rdx
cmp dword [0x00617e70], 0
jne 0x4cb5f9
mov qword [r8 + 0x58], rax
test rdi, rdi
jne 0x4cb5cd
mov rbx, qword [r8 + 0x70]
mov rsi, qword [r8 + 0x78]
mov rdi, qword [r8 + 0x80]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], rdi
call fcn.004cfd20
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
test rdi, rdi
mov r8, qword [rsp + 0xb8]
mov qword [r8 + 0x48], rcx
mov qword [r8 + 0x50], rdx
cmp dword [0x00617e70], 0
nop
jne 0x4cb5b1
mov qword [r8 + 0x40], rax
test rdi, rdi
jne 0x4cb585
lea rax, [0x00506dc0]
mov qword [rsp], rax
mov qword [rsp + 8], r8
call fcn.0040ac20
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
nop dword [rax + rax]
call fcn.00491620
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x60]
add rax, rcx
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rcx + 0x10]
add rax, rdx
cmp rdx, rax
jle 0x4cb574
mov rax, qword [0x005d4970]
mov rdx, qword [0x005d4978]
nop dword [rax + rax]
test rax, rax
jne 0x4cb4e5
mov rax, qword [rsp + 0xb8]
movzx edx, word [rax + 0x10]
lea rbx, [0x00540c70]
mov qword [rsp], rbx
mov qword [rsp + 8], rcx
mov word [rsp + 0x10], dx
call fcn.004cba60
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x28]
test rsi, rsi
mov rdi, qword [rsp + 0xb8]
mov qword [rdi + 0x18], rcx
cmp dword [0x00617e70], 0
nop
jne 0x4cb4c7
mov qword [rdi + 0x20], rax
test rsi, rsi
jne 0x4cb49b
movzx eax, word [rdi + 2]
lea rcx, [0x004f8de0]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rax
call fcn.00449a00
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0xb8]
movzx edx, word [rcx + 2]
mov qword [rcx + 0x30], rdx
mov qword [rcx + 0x38], rdx
cmp dword [0x00617e70], 0
jne 0x4cb48d
mov qword [rcx + 0x28], rax
xor eax, eax
jmp 0x4caf85
inc rax
mov rcx, rbx
movzx edx, word [rcx + 2]
cmp rdx, rax
jle 0x4cb354
mov qword [rsp + 0x78], rax
lea rax, [0x00508a20]
mov qword [rsp], rax
call fcn.0040d880
mov rax, qword [rsp + 8]
mov qword [rsp + 0x98], rax
lea rcx, [0x005409f8]
mov qword [rsp], rcx
mov rdx, qword [rsp + 0xa8]
mov qword [rsp + 8], rdx
lea rbx, [0x00541b68]
mov qword [rsp + 0x10], rbx
lea rsi, [0x00617e00]
mov qword [rsp + 0x18], rsi
lea rdi, [0x004f52a0]
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rax
call fcn.0048ff80
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
cmp qword [rsp + 0x30], 0
jne 0x4cb328
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rax + 0x70]
mov rdx, qword [rax + 0x78]
mov rbx, qword [rax + 0x80]
mov rsi, qword [rsp + 0x98]
mov qword [rsp], rsi
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], rbx
call fcn.004ced40
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x28]
cmp qword [rsp + 0x30], 0
jne 0x4cb2fc
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0xb0], rdx
lea rax, [0x00504280]
mov qword [rsp], rax
nop
call fcn.0040d880
mov rax, qword [rsp + 8]
mov qword [rsp + 0xa0], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xe0], xmm0
movups xmmword [rsp + 0xf0], xmm0
movups xmmword [rsp + 0x100], xmm0
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0xe0], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0xe8], rcx
mov rcx, qword [rsp + 0x98]
mov edx, dword [rcx + 8]
mov dword [rsp + 0xf0], edx
mov edx, dword [rcx + 0xc]
mov dword [rsp + 0xf4], edx
mov edx, dword [rcx + 0x10]
mov dword [rsp + 0xf8], edx
mov edx, dword [rcx + 0x14]
mov dword [rsp + 0xfc], edx
mov edx, dword [rcx + 0x18]
mov dword [rsp + 0x100], edx
mov edx, dword [rcx + 0x1c]
mov dword [rsp + 0x104], edx
movzx edx, word [rcx + 0x20]
mov word [rsp + 0x108], dx
movzx edx, word [rcx + 0x22]
mov word [rsp + 0x10a], dx
mov edx, dword [rcx + 0x24]
mov dword [rsp + 0x10c], edx
cmp dword [0x00617e70], 0
jne 0x4cb2c5
movups xmm1, xmmword [rsp + 0xe0]
movups xmmword [rax], xmm1
movups xmm1, xmmword [rsp + 0xf0]
movups xmmword [rax + 0x10], xmm1
movups xmm1, xmmword [rsp + 0x100]
movups xmmword [rax + 0x20], xmm1
mov edx, dword [rax + 0x1c]
mov qword [rsp + 0x90], rdx
mov ebx, dword [rax + 0x18]
mov qword [rsp + 0x88], rbx
mov ecx, dword [rcx + 0x14]
mov dword [rsp + 0x5c], ecx
test ecx, ecx
lea rsi, [0x00503020]
mov qword [rsp], rsi
call fcn.0040d880
mov eax, dword [rsp + 0x5c]
test eax, eax
mov rax, qword [rsp + 0x120]
lea rcx, [0x00540b18]
mov rdx, rax
cmove rax, rcx
mov rbx, qword [rsp + 8]
mov qword [rbx], rax
mov rax, qword [rsp + 0x128]
lea rsi, [0x00617e00]
mov rdi, rax
cmove rax, rsi
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x88]
add r9, r8
cmp dword [0x00617e70], 0
jne 0x4cb2ad
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], r8
mov qword [rbx + 0x18], r8
mov qword [rbx + 0x20], r9
cmp dword [0x00617e70], 0
jne 0x4cb28a
mov r8, qword [rsp + 0xa0]
mov qword [r8 + 0x58], rbx
lea r9, [0x00540a18]
mov qword [r8 + 0x48], r9
cmp dword [0x00617e70], 0
jne 0x4cb272
mov qword [r8 + 0x50], rbx
mov rbx, qword [rsp + 0xb8]
mov r10, qword [rbx + 0x28]
mov r11, qword [rbx + 0x30]
mov rax, qword [rsp + 0x78]
nop
cmp r11, rax
jbe 0x4cb8df
lea r11, [r10 + rax*8]
cmp dword [0x00617e70], 0
jne 0x4cb25f
mov qword [r10 + rax*8], r8
jmp 0x4caf7f
mov r10, rdi
mov rdi, r11
call fcn.00466fe0
mov rdi, r10
jmp 0x4caf7f
lea r10, [r8 + 0x50]
mov rax, rdi
mov rdi, r10
nop dword [rax]
call fcn.00466fa0
mov rdi, rax
jmp 0x4cb22a
mov r8, qword [rsp + 0xa0]
lea r9, [r8 + 0x58]
mov rax, rdi
mov rdi, r9
nop dword [rax]
call fcn.00466fa0
mov rdi, rax
jmp 0x4cb212
lea r10, [rbx + 8]
mov r11, rdi
mov rdi, r10
call fcn.00466e60
mov rdi, r11
nop
jmp 0x4cb1ed
lea rcx, [0x005088c0]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
lea rcx, [rsp + 0xe0]
mov qword [rsp + 0x10], rcx
call fcn.00413580
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x98]
jmp 0x4cb160
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rcx
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rcx
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
mov rdx, qword [rcx + 0x30]
mov qword [rsp + 0x80], rdx
mov rbx, qword [rsp + 0xa8]
xor eax, eax
jmp 0x4cb386
lea rsi, [r11 + 1]
mov rdx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0xa8]
mov rcx, rax
mov rax, rsi
cmp rdx, rax
jle 0x4cb46a
mov rsi, qword [rcx + 0x30]
mov rdi, qword [rcx + 0x28]
nop word [rax + rax]
cmp rsi, rax
jbe 0x4cb8d7
mov qword [rsp + 0x70], rax
mov rcx, qword [rdi + rax*8]
test byte [rcx], al
mov qword [rsp], rcx
lea rcx, [0x00540c70]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rbx
call fcn.004ceea0
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rax + 0x30]
mov rdx, qword [rax + 0x28]
mov rbx, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x30]
test r10, r10
mov r11, qword [rsp + 0x70]
cmp rcx, r11
jbe 0x4cb8cf
mov rdx, qword [rdx + r11*8]
mov qword [rdx + 0x38], rsi
mov qword [rdx + 0x40], rdi
cmp dword [0x00617e70], 0
jne 0x4cb45b
mov qword [rdx + 0x30], rbx
test r10, r10
je 0x4cb36c
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], r8
mov qword [rsp + 0x140], r9
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
lea rdi, [rdx + 0x30]
nop
call fcn.00466fa0
test r10, r10
jmp 0x4cb429
mov qword [rsp + 0x130], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x138], xmm0
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
lea rdi, [rcx + 0x28]
call fcn.00466e60
jmp 0x4caf7b
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rdx
mov qword [rsp + 0x140], rbx
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
lea rcx, [rdi + 0x20]
mov r8, rdi
mov rdi, rcx
call fcn.00466e60
test rsi, rsi
mov rdi, r8
nop dword [rax]
jmp 0x4caf2d
xorps xmm0, xmm0
movups xmmword [rsp + 0xd0], xmm0
je 0x4cb4f6
mov rax, qword [rax + 8]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rdx
lea rax, [0x00519b1c]
mov qword [rsp], rax
mov qword [rsp + 8], 0x28
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 1
mov qword [rsp + 0x20], 1
call fcn.004bac40
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rcx
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
mov qword [rcx + 0x18], rax
xor eax, eax
xor edx, edx
nop dword [rax]
jmp 0x4caec0
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rbx
mov qword [rsp + 0x140], rsi
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
lea rcx, [r8 + 0x40]
mov rdx, rdi
mov rdi, rcx
nop dword [rax + rax]
call fcn.00466e60
test rdx, rdx
jmp 0x4cae4d
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rbx
mov qword [rsp + 0x140], rsi
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
lea r9, [r8 + 0x58]
mov r10, rdi
mov rdi, r9
call fcn.00466e60
test r10, r10
jmp 0x4cadd0
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rbx
mov qword [rsp + 0x140], rsi
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
lea rcx, [r8 + 0x70]
mov rdx, rdi
mov rdi, rcx
call fcn.00466e60
test rdx, rdx
jmp 0x4cad63
cmp cx, 0x14c
je 0x4cacf4
xorps xmm0, xmm0
movups xmmword [rsp + 0xd0], xmm0
movzx eax, word [rax]
mov word [rsp], ax
call fcn.0040a940
mov rax, qword [rsp + 8]
lea rcx, [0x004f1720]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xd8], rax
lea rax, [0x0051b335]
mov qword [rsp], rax
mov qword [rsp + 8], 0x34
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 1
mov qword [rsp + 0x20], 1
call fcn.004bac40
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rcx
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
cmp cx, 0x1c4
je 0x4cacf4
cmp cx, 0x8664
je 0x4cacf4
jmp 0x4cb65e
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rcx
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
mov qword [rcx + 0x18], rbx
jmp 0x4cac74
nop
mov eax, dword [rax + 0x3c]
mov dword [rsp + 0x5c], eax
lea rcx, [0x004f2b60]
mov qword [rsp], rcx
call fcn.0040d880
mov rax, qword [rsp + 8]
mov qword [rsp + 0xc0], rax
mov rcx, qword [rsp + 0x120]
mov rdx, qword [rcx + 0x18]
mov rbx, qword [rsp + 0x128]
mov qword [rsp], rbx
mov qword [rsp + 0x10], 4
mov qword [rsp + 0x18], 4
mov esi, dword [rsp + 0x5c]
mov qword [rsp + 0x20], rsi
call rdx
mov rax, qword [rsp + 0xc0]
cmp byte [rax], 0x50
jne 0x4cb7d6
cmp byte [rax + 1], 0x45
jne 0x4cb7d6
cmp byte [rax + 2], 0
jne 0x4cb7d6
cmp byte [rax + 3], 0
jne 0x4cb7d6
mov ecx, dword [rsp + 0x5c]
lea rax, [rcx + 4]
jmp 0x4cac56
mov eax, dword [rax]
mov dword [rsp + 0x58], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0xd0], xmm0
lea rax, [0x004f2b60]
mov qword [rsp], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 8], rax
nop dword [rax]
call fcn.0040ac20
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rcx
lea rax, [0x005192c6]
mov qword [rsp], rax
mov qword [rsp + 8], 0x25
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 1
mov qword [rsp + 0x20], 1
call fcn.004bac40
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rcx
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rcx
mov rbp, qword [rsp + 0x110]
add rsp, 0x118
ret
lea rdi, [rax + 8]
mov rcx, qword [rsp + 0x128]
call fcn.00466f60
jmp 0x4cabb8
mov rax, r11
call fcn.00467300
mov rcx, rsi
call fcn.00467300
mov rcx, r11
call fcn.00467300
nop
call fcn.00465120
jmp fcn.004cab20