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

Disassembly:
sub rsp, 0x108
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x70], 0
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x30], 0x2ad2341d
mov eax, dword [rsp + 0x30]
mov ecx, eax
sub ecx, 0x824e59dd
mov dword [rsp + 0x2c], eax
je 0x2fc4c3719
jmp 0x2fc4c339d
mov eax, dword [rsp + 0x2c]
sub eax, 0x857d3997
je 0x2fc4c375e
jmp 0x2fc4c33b1
mov eax, dword [rsp + 0x2c]
sub eax, 0x904bfb58
je 0x2fc4c36f5
jmp 0x2fc4c33c5
mov eax, dword [rsp + 0x2c]
sub eax, 0x9557f6f7
je 0x2fc4c39cc
jmp 0x2fc4c33d9
mov eax, dword [rsp + 0x2c]
sub eax, 0xa5b49286
je 0x2fc4c3936
jmp 0x2fc4c33ed
mov eax, dword [rsp + 0x2c]
sub eax, 0xa60405e2
je 0x2fc4c39a5
jmp 0x2fc4c3401
mov eax, dword [rsp + 0x2c]
sub eax, 0xb44ee7b9
je 0x2fc4c3630
jmp 0x2fc4c3415
mov eax, dword [rsp + 0x2c]
sub eax, 0xbde87be7
je 0x2fc4c3853
jmp 0x2fc4c3429
mov eax, dword [rsp + 0x2c]
sub eax, 0xc12a4b46
je 0x2fc4c3a13
jmp 0x2fc4c343d
mov eax, dword [rsp + 0x2c]
sub eax, 0xc2de34cd
je 0x2fc4c37f7
jmp 0x2fc4c3451
mov eax, dword [rsp + 0x2c]
sub eax, 0xcfe6483f
je 0x2fc4c36d9
jmp 0x2fc4c3465
mov eax, dword [rsp + 0x2c]
sub eax, 0xe2c7c71c
je 0x2fc4c390f
jmp 0x2fc4c3479
mov eax, dword [rsp + 0x2c]
sub eax, 0xf64cfb63
je 0x2fc4c3943
jmp 0x2fc4c348d
mov eax, dword [rsp + 0x2c]
sub eax, 0xf7543328
je 0x2fc4c367b
jmp 0x2fc4c34a1
mov eax, dword [rsp + 0x2c]
sub eax, 0xffb8ff71
je 0x2fc4c378f
jmp 0x2fc4c34b5
mov eax, dword [rsp + 0x2c]
sub eax, 0x590b615
je 0x2fc4c38da
jmp 0x2fc4c34c9
mov eax, dword [rsp + 0x2c]
sub eax, 0xfdb8679
je 0x2fc4c3929
jmp 0x2fc4c34dd
mov eax, dword [rsp + 0x2c]
sub eax, 0x1caa246b
je 0x2fc4c39b2
jmp 0x2fc4c34f1
mov eax, dword [rsp + 0x2c]
sub eax, 0x1e28e52c
je 0x2fc4c36b9
jmp 0x2fc4c3505
mov eax, dword [rsp + 0x2c]
sub eax, 0x28649690
je 0x2fc4c387a
jmp 0x2fc4c3519
mov eax, dword [rsp + 0x2c]
sub eax, 0x2ad2341d
je 0x2fc4c35fa
jmp 0x2fc4c352d
mov eax, dword [rsp + 0x2c]
sub eax, 0x3434fb56
je 0x2fc4c39e9
jmp 0x2fc4c3541
mov eax, dword [rsp + 0x2c]
sub eax, 0x40110c51
je 0x2fc4c380f
jmp 0x2fc4c3555
mov eax, dword [rsp + 0x2c]
sub eax, 0x4eca436a
je 0x2fc4c3829
jmp 0x2fc4c3569
mov eax, dword [rsp + 0x2c]
sub eax, 0x5e176651
je 0x2fc4c3738
jmp 0x2fc4c357d
mov eax, dword [rsp + 0x2c]
sub eax, 0x681aa154
je 0x2fc4c38bb
jmp 0x2fc4c3591
mov eax, dword [rsp + 0x2c]
sub eax, 0x6cf0b0d1
je 0x2fc4c3985
jmp 0x2fc4c35a5
mov eax, dword [rsp + 0x2c]
sub eax, 0x6d5311f4
je 0x2fc4c3751
jmp 0x2fc4c35b9
mov eax, dword [rsp + 0x2c]
sub eax, 0x6f5275db
je 0x2fc4c369b
jmp 0x2fc4c35cd
mov eax, dword [rsp + 0x2c]
sub eax, 0x727011fc
je 0x2fc4c39f6
jmp 0x2fc4c35e1
mov eax, dword [rsp + 0x2c]
sub eax, 0x7cb3fcb3
je 0x2fc4c37af
jmp 0x2fc4c35f5
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x68]
movsxd rcx, dword [rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x60]
add rax, 0x18
mov qword [rsp + 0x90], rax
mov dword [rsp + 0x30], 0xb44ee7b9
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x90]
add rax, 0x70
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
mov edx, dword [rcx]
mov ecx, edx
add rax, rcx
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x58]
cmp dword [rax + 4], 0
mov edx, 0x5e176651
mov r8d, 0xf7543328
cmove r8d, edx
mov dword [rsp + 0x30], r8d
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x50]
add rax, 0x14
mov qword [rsp + 0x98], rax
mov dword [rsp + 0x30], 0x6f5275db
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x98]
mov ecx, dword [rax]
mov dword [rsp + 0xa4], ecx
mov dword [rsp + 0x30], 0x1e28e52c
jmp 0x2fc4c3a23
mov eax, dword [rsp + 0xa4]
cmp eax, 0
mov eax, 0x5e176651
mov ecx, 0xcfe6483f
cmove ecx, eax
mov dword [rsp + 0x30], ecx
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax + 0x18]
mov dword [rsp + 0xa8], ecx
mov dword [rsp + 0x30], 0x904bfb58
jmp 0x2fc4c3a23
mov eax, dword [rsp + 0xa8]
cmp eax, 0
sete cl
and cl, 1
mov byte [rsp + 0xaf], cl
mov dword [rsp + 0x30], 0x824e59dd
jmp 0x2fc4c3a23
mov al, byte [rsp + 0xaf]
test al, 1
mov ecx, 0x5e176651
mov edx, 0x857d3997
cmovne edx, ecx
mov dword [rsp + 0x30], edx
jmp 0x2fc4c3a23
mov qword [rsp + 0x88], 0
mov dword [rsp + 0x30], 0x6d5311f4
jmp 0x2fc4c3a23
mov dword [rsp + 0x30], 0x727011fc
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x50]
mov edx, dword [rcx + 0x20]
mov ecx, edx
add rax, rcx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0x30], 0xffb8ff71
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x50]
add rax, 0x24
mov qword [rsp + 0xb8], rax
mov dword [rsp + 0x30], 0x7cb3fcb3
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0xb8]
mov ecx, dword [rax]
mov eax, ecx
mov rdx, qword [rsp + 0xb0]
add rdx, rax
mov qword [rsp + 0x48], rdx
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rdx + 0x1c]
mov edx, ecx
add rax, rdx
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x34], 0
mov dword [rsp + 0x30], 0xc2de34cd
jmp 0x2fc4c3a23
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0xc4], eax
mov dword [rsp + 0x30], 0x40110c51
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0xc8], rax
mov dword [rsp + 0x30], 0x4eca436a
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0xc8]
mov ecx, dword [rax + 0x18]
mov edx, dword [rsp + 0xc4]
cmp edx, ecx
mov ecx, 0xbde87be7
mov edx, 0x1caa246b
cmovb edx, ecx
mov dword [rsp + 0x30], edx
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0x30], 0x28649690
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax]
mov eax, ecx
mov rdx, qword [rsp + 0xd8]
add rdx, rax
mov rcx, qword [rsp + 0xd0]
call fcn.2fc4c3ea0
cmp eax, 0
sete r8b
and r8b, 1
mov byte [rsp + 0xe7], r8b
mov dword [rsp + 0x30], 0x681aa154
jmp 0x2fc4c3a23
mov al, byte [rsp + 0xe7]
test al, 1
mov ecx, 0x590b615
mov edx, 0xa5b49286
cmovne edx, ecx
mov dword [rsp + 0x30], edx
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x48]
movzx r8d, word [rdx]
mov edx, r8d
mov r8d, dword [rcx + rdx*4]
mov ecx, r8d
add rax, rcx
mov qword [rsp + 0xe8], rax
mov dword [rsp + 0x30], 0xe2c7c71c
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x30], 0xfdb8679
jmp 0x2fc4c3a23
mov dword [rsp + 0x30], 0x1caa246b
jmp 0x2fc4c3a23
mov dword [rsp + 0x30], 0xf64cfb63
jmp 0x2fc4c3a23
xor eax, eax
mov ecx, dword [rsp + 0x34]
mov edx, eax
sub edx, ecx
mov ecx, eax
sub ecx, 1
add edx, ecx
sub eax, edx
mov dword [rsp + 0x34], eax
mov r8, qword [rsp + 0x40]
add r8, 4
mov qword [rsp + 0x40], r8
mov r8, qword [rsp + 0x48]
mov qword [rsp + 0xf0], r8
mov dword [rsp + 0x30], 0x6cf0b0d1
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0xf0]
add rax, 2
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x30], 0xa60405e2
jmp 0x2fc4c3a23
mov dword [rsp + 0x30], 0xc2de34cd
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xf8], rax
mov dword [rsp + 0x30], 0x9557f6f7
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x30], 0x3434fb56
jmp 0x2fc4c3a23
mov dword [rsp + 0x30], 0x727011fc
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x100], rax
mov dword [rsp + 0x30], 0xc12a4b46
jmp 0x2fc4c3a23
mov rax, qword [rsp + 0x100]
add rsp, 0x108
ret
jmp 0x2fc4c3382