Function at 0x4a1220
Capabilities:
Resolve function by parsing pe exports

Disassembly:
lea r12, [rsp - 0x290]
cmp r12, qword [r14 + 0x10]
jbe 0x4a1c4a
push rbp
mov rbp, rsp
sub rsp, 0x308
mov qword [rsp + 0x318], rax
mov dword [rsp + 0x320], ebx
mov byte [rsp + 0x23], 0
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
cmp byte [rcx + 0xb3], 0
jne 0x4a1266
jmp 0x4a1279
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
cmp dword [rsp + 0x320], 0x77
je 0x4a1288
jmp 0x4a1382
movups xmmword [rsp + 0x288], xmm15
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rbx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
test rbx, rbx
jne 0x4a12aa
jmp 0x4a12cb
mov qword [rsp + 0x160], rcx
lea rax, [0x00556bc0]
call fcn.0040a260
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4a12cd
jmp 0x4a12cd
mov qword [rsp + 0x288], rbx
mov qword [rsp + 0x290], rcx
test rbx, rbx
setne byte [rsp + 0x26]
mov rcx, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x290]
mov qword [rsp + 0x1d0], rcx
mov qword [rsp + 0x1d8], rdx
movzx ecx, byte [rsp + 0x26]
mov byte [rsp + 0x25], cl
mov byte [rsp + 0x22], cl
mov edx, ecx
xor ecx, 1
mov byte [rsp + 0x26], cl
test dl, dl
jne 0x4a1322
nop
jmp 0x4a133c
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
movzx ecx, byte [rcx + 0xb4]
xor ecx, 1
mov byte [rsp + 0x26], cl
jmp 0x4a133e
jmp 0x4a133e
cmp byte [rsp + 0x26], 0
jne 0x4a1347
jmp 0x4a1373
mov ebx, dword [rsp + 0x320]
mov rax, qword [rsp + 0x318]
call fcn.0049d240
mov byte [rsp + 0x23], 1
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
mov dword [rsp + 0x320], 0x76
nop
jmp 0x4a1384
jmp 0x4a1384
movups xmmword [rsp + 0x278], xmm15
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rbx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
nop
test rbx, rbx
jne 0x4a13a7
jmp 0x4a13c8
mov qword [rsp + 0x160], rcx
lea rax, [0x00556be0]
call fcn.0040a260
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4a13ca
jmp 0x4a13ca
mov qword [rsp + 0x278], rbx
mov qword [rsp + 0x280], rcx
test rbx, rbx
setne byte [rsp + 0x26]
mov rcx, qword [rsp + 0x278]
mov rdx, qword [rsp + 0x280]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rdx
movzx ecx, byte [rsp + 0x26]
mov byte [rsp + 0x24], cl
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rdx
movzx ecx, byte [rsp + 0x24]
mov byte [rsp + 0x21], cl
test cl, cl
jne 0x4a143d
jmp 0x4a15a6
mov byte [rsp + 0x23], 1
mov rcx, qword [rsp + 0x318]
mov qword [rsp + 0x300], rcx
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x2f0], rdx
mov qword [rsp + 0x2f8], rcx
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x3c], ecx
movups xmmword [rsp + 0x228], xmm15
movups xmmword [rsp + 0x230], xmm15
movups xmmword [rsp + 0x240], xmm15
lea rcx, [rsp + 0x228]
mov qword [rsp + 0x250], rcx
test byte [rcx], al
lea rdx, [0x004a1e00]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x300]
cmp dword [0x005e24d0], 0
je 0x4a14cb
jmp 0x4a14cd
jmp 0x4a14df
call fcn.0045e960
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4a14df
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2f8]
mov rbx, qword [rsp + 0x2f0]
mov qword [rcx + 0x10], rbx
cmp dword [0x005e24d0], 0
je 0x4a1504
jmp 0x4a1506
jmp 0x4a1518
call fcn.0045e960
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4a1518
mov qword [rcx + 0x18], rdx
mov ecx, dword [rsp + 0x3c]
mov rdx, qword [rsp + 0x250]
test byte [rdx], al
mov dword [rdx + 0x20], ecx
mov rcx, qword [rsp + 0x250]
mov qword [rsp + 0xe8], rcx
lea rax, [rsp + 0xd0]
call fcn.00431120
test eax, eax
jne 0x4a1593
jmp 0x4a1550
mov edi, dword [rsp + 0x320]
mov rdx, qword [rsp + 0x140]
test byte [rdx], al
mov rdx, qword [rdx + 0x18]
mov rax, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x318]
lea rbx, [0x004e9920]
call rdx
nop
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
cmp byte [rcx + 0x50], 0
jne 0x4a15bb
jmp 0x4a180b
movups xmmword [rsp + 0x268], xmm15
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rbx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
test rbx, rbx
jne 0x4a15dd
jmp 0x4a1600
mov qword [rsp + 0x160], rcx
lea rax, [0x00556c00]
call fcn.0040a260
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4a1602
jmp 0x4a1602
mov qword [rsp + 0x268], rbx
mov qword [rsp + 0x270], rcx
test rbx, rbx
setne byte [rsp + 0x26]
mov rcx, qword [rsp + 0x268]
mov rdx, qword [rsp + 0x270]
mov qword [rsp + 0x2e0], rcx
mov qword [rsp + 0x2e8], rdx
movzx ecx, byte [rsp + 0x26]
mov byte [rsp + 0x27], cl
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2e8]
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rdx
movzx ecx, byte [rsp + 0x27]
mov byte [rsp + 0x20], cl
test cl, cl
jne 0x4a1675
jmp 0x4a1806
mov byte [rsp + 0x23], 1
mov rcx, qword [rsp + 0x318]
mov qword [rsp + 0x2d8], rcx
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x2c8], rdx
mov qword [rsp + 0x2d0], rcx
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x38], ecx
movups xmmword [rsp + 0x1f8], xmm15
movups xmmword [rsp + 0x200], xmm15
movups xmmword [rsp + 0x210], xmm15
lea rcx, [rsp + 0x1f8]
mov qword [rsp + 0x220], rcx
test byte [rcx], al
lea rdx, [0x004a1d80]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2d8]
cmp dword [0x005e24d0], 0
nop
je 0x4a1704
jmp 0x4a1706
jmp 0x4a1718
call fcn.0045e960
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4a1718
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2d0]
mov rbx, qword [rsp + 0x2c8]
mov qword [rcx + 0x10], rbx
cmp dword [0x005e24d0], 0
je 0x4a173d
jmp 0x4a1740
jmp 0x4a1752
call fcn.0045e960
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4a1752
mov qword [rcx + 0x18], rdx
mov ecx, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x220]
test byte [rdx], al
mov dword [rdx + 0x20], ecx
mov rcx, qword [rsp + 0x220]
mov qword [rsp + 0xb8], rcx
lea rax, [rsp + 0xa0]
nop
call fcn.00431120
test eax, eax
jne 0x4a17f3
jmp 0x4a178b
mov rcx, qword [rsp + 0x130]
test byte [rcx], al
mov rcx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x138]
call rcx
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], rbx
mov rax, qword [rsp + 0x318]
test byte [rax], al
add rax, 0x40
mov qword [rsp + 0x1f0], rax
mov rcx, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x258]
call fcn.0049a420
nop
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
jmp 0x4a1c32
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x2c], ecx
cmp ecx, 0x71
jle 0x4a1820
jmp 0x4a1839
cmp ecx, 0x58
je 0x4a1827
jmp 0x4a1829
jmp 0x4a1859
cmp ecx, 0x71
je 0x4a1830
jmp 0x4a1832
jmp 0x4a1859
jmp 0x4a1834
jmp 0x4a1c2e
cmp ecx, 0x73
je 0x4a1842
nop
jmp 0x4a1844
jmp 0x4a1859
cmp ecx, 0x76
je 0x4a184b
jmp 0x4a184d
jmp 0x4a1859
cmp ecx, 0x78
je 0x4a1857
jmp 0x4a1c28
jmp 0x4a1859
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x1e0], rdx
mov qword [rsp + 0x1e8], rcx
nop dword [rax + rax]
test rdx, rdx
jne 0x4a188a
jmp 0x4a1c24
mov ecx, dword [rdx + 0x10]
mov dword [rsp + 0x28], ecx
mov rbx, qword [rsp + 0x1e0]
lea rax, [0x00556e00]
call fcn.0040a620
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x1c8], rbx
mov rcx, qword [rsp + 0x108]
mov qword [rsp + 0x100], rcx
test rcx, rcx
je 0x4a18cf
jmp 0x4a1a74
jmp 0x4a18d1
jmp 0x4a18d3
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x128], rcx
mov byte [rsp + 0x23], 1
mov rcx, qword [rsp + 0x318]
mov qword [rsp + 0x2c0], rcx
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x2b0], rdx
mov qword [rsp + 0x2b8], rcx
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x34], ecx
movups xmmword [rsp + 0x198], xmm15
movups xmmword [rsp + 0x1a0], xmm15
movups xmmword [rsp + 0x1b0], xmm15
lea rcx, [rsp + 0x198]
mov qword [rsp + 0x1c0], rcx
test byte [rcx], al
lea rdx, [0x004a1d00]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2c0]
cmp dword [0x005e24d0], 0
je 0x4a1979
jmp 0x4a1980
jmp 0x4a1992
call fcn.0045e960
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4a1992
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2b8]
mov rbx, qword [rsp + 0x2b0]
mov qword [rcx + 0x10], rbx
cmp dword [0x005e24d0], 0
je 0x4a19b7
jmp 0x4a19b9
jmp 0x4a19cb
call fcn.0045e960
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4a19cb
mov qword [rcx + 0x18], rdx
mov ecx, dword [rsp + 0x34]
mov rdx, qword [rsp + 0x1c0]
test byte [rdx], al
mov dword [rdx + 0x20], ecx
mov rcx, qword [rsp + 0x1c0]
mov qword [rsp + 0x88], rcx
lea rax, [rsp + 0x70]
call fcn.00431120
test eax, eax
jne 0x4a1a61
nop
jmp 0x4a1a02
mov rcx, qword [rsp + 0x120]
test byte [rcx], al
mov rcx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x128]
call rcx
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], rbx
mov edi, dword [rsp + 0x320]
mov rcx, qword [rsp + 0x318]
mov rdx, rax
mov rax, rcx
mov rsi, rbx
mov rbx, rdx
mov rcx, rsi
call fcn.0049e9c0
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
nop
ret
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
cmp rcx, 1
je 0x4a1a80
jmp 0x4a1c1c
jmp 0x4a1a82
jmp 0x4a1a84
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0x118], rcx
mov byte [rsp + 0x23], 1
mov rcx, qword [rsp + 0x318]
mov qword [rsp + 0x2a8], rcx
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x298], rdx
mov qword [rsp + 0x2a0], rcx
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x30], ecx
movups xmmword [rsp + 0x168], xmm15
movups xmmword [rsp + 0x170], xmm15
movups xmmword [rsp + 0x180], xmm15
lea rcx, [rsp + 0x168]
mov qword [rsp + 0x190], rcx
test byte [rcx], al
lea rdx, [0x004a1c80]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2a8]
cmp dword [0x005e24d0], 0
je 0x4a1b2a
jmp 0x4a1b2c
jmp 0x4a1b3e
call fcn.0045e960
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4a1b3e
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2a0]
mov rbx, qword [rsp + 0x298]
mov qword [rcx + 0x10], rbx
cmp dword [0x005e24d0], 0
nop
je 0x4a1b64
jmp 0x4a1b66
jmp 0x4a1b78
call fcn.0045e960
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4a1b78
mov qword [rcx + 0x18], rdx
mov ecx, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x190]
test byte [rdx], al
mov dword [rdx + 0x20], ecx
mov rcx, qword [rsp + 0x190]
mov qword [rsp + 0x58], rcx
lea rax, [rsp + 0x40]
nop
call fcn.00431120
test eax, eax
jne 0x4a1c09
jmp 0x4a1bab
mov rcx, qword [rsp + 0x110]
test byte [rcx], al
mov rcx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x118]
call rcx
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], rbx
mov edi, dword [rsp + 0x320]
mov rcx, qword [rsp + 0x318]
mov rdx, rax
mov rax, rcx
mov rsi, rbx
mov rbx, rdx
mov rcx, rsi
call fcn.0049e9c0
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
jmp 0x4a1c20
jmp 0x4a1c22
jmp 0x4a1c26
jmp 0x4a1c26
jmp 0x4a1c30
jmp 0x4a1c2a
jmp 0x4a1c2c
jmp 0x4a1c2e
jmp 0x4a1c30
jmp 0x4a1c32
mov byte [rsp + 0x23], 0
call fcn.00431440
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
mov qword [rsp + 8], rax
mov dword [rsp + 0x10], ebx
call fcn.0045ca20
mov rax, qword [rsp + 8]
mov ebx, dword [rsp + 0x10]
jmp fcn.004a1220