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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x178
mov r8d, edx
mov r15, rcx
mov dword [rsp + 0x3c], edx
lea rax, [rsp + 0x60]
and qword [rax], 0
and qword [rsp + 0x30], 0
mov qword [rsp + 0x20], rax
and dword [rsp + 0x28], 0
mov ecx, 0x1300
xor edx, edx
mov r9d, 0x400
call sub.kernel32.dll_FormatMessageW
test eax, eax
je 0x4c2acd
movabs r12, 0x8000000000000000
mov rsi, qword [rsp + 0x60]
test rsi, rsi
je 0x4c2ad9
movsxd rbx, eax
lea rdx, [r12 - 1]
and rdx, rbx
lea rcx, [rbx + rbx]
xor eax, eax
test rcx, rcx
je 0x4c2aea
cmp word [rsi + rax*2], 0
je 0x4c2ae7
inc rax
add rcx, 0xfffffffffffffffe
jmp 0x4c2ab8
call sub.kernel32.dll_GetLastError
mov edi, eax
jmp 0x4c2df8
mov word [rsp + 0xa0], 2
xor ecx, ecx
jmp 0x4c2b62
mov rdx, rax
inc rdx
lea rdi, [rsp + 0xf0]
mov rcx, rdi
call fcn.004c2717
mov rcx, rdi
call fcn.004c27a0
add rdx, rdx
add rbx, rbx
xor ecx, ecx
cmp rbx, rcx
je 0x4c2b2d
movzx r8d, word [rsi + rcx]
test r8w, r8w
je 0x4c2b2d
cmp rdx, rcx
je 0x4c2b2d
mov word [rax + rcx], r8w
add rcx, 2
jmp 0x4c2b0d
movups xmm0, xmmword [rsp + 0xf0]
movups xmm1, xmmword [rsp + 0x100]
movups xmm2, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0xc0], xmm2
movaps xmmword [rsp + 0xb0], xmm1
movaps xmmword [rsp + 0xa0], xmm0
mov rcx, qword [rsp + 0x60]
lea rax, [rcx + 1]
cmp rax, 2
jb 0x4c2b71
call sub.kernel32.dll_LocalFree
lea rax, [rsp + 0x68]
and qword [rax], 0
mov qword [rax + 8], 1
and qword [rax + 0x10], 0
mov qword [rsp + 0x120], 0x20
mov byte [rsp + 0x128], 3
and qword [rsp + 0xf0], 0
and qword [rsp + 0x100], 0
mov qword [rsp + 0x110], rax
lea rax, [0x006c9778]
mov qword [rsp + 0x118], rax
movzx eax, word [rsp + 0xa0]
test eax, eax
je 0x4c2bf4
cmp eax, 1
jne 0x4c2d44
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xb0]
mov cx, 1
call fcn.004c24b1
jmp 0x4c2c01
mov eax, 0x14
lea rsi, [rsp + 0xa2]
lea rax, [rsi + rax*2]
lea rcx, [rsp + 0xd8]
mov qword [rcx], rsi
mov qword [rcx + 8], rax
mov byte [rcx + 0x10], 0
call fcn.004c245c
test ax, ax
je 0x4c2d50
mov ebx, edx
mov ecx, 2
mov edx, 8
call fcn.004c2487
test rax, rax
je 0x4c2f45
mov rdi, rax
mov qword [rsp + 0xd0], r15
mov word [rax], bx
mov rax, qword [rsp + 0xe8]
lea r12, [rsp + 0x160]
mov qword [r12 + 0x10], rax
movups xmm0, xmmword [rsp + 0xd8]
movaps xmmword [r12], xmm0
mov esi, 4
mov ebx, 1
xor eax, eax
mov qword [rsp + 0x58], rax
lea r13, [rsp + 0x40]
lea rbp, [rsp + 0x80]
mov r14d, 4
mov rcx, r12
call fcn.004c245c
cmp ax, 1
jne 0x4c2d30
mov r15d, edx
cmp rbx, r14
jne 0x4c2d23
mov r14, rbx
inc r14
je 0x4c2ee1
lea rcx, [rbx + rbx]
cmp rcx, r14
cmova r14, rcx
xor edx, edx
mov rax, r14
shr rax, 0x3e
sete al
cmp r14, 5
cmovb r14, rsi
test rbx, rbx
je 0x4c2cf5
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x90], rcx
mov ecx, 2
jmp 0x4c2cf7
xor ecx, ecx
lea r8, [r14 + r14]
mov dl, al
add edx, edx
mov qword [rsp + 0x88], rcx
mov rcx, r13
mov r9, rbp
call fcn.004724c9
cmp qword [rsp + 0x40], 0
jne 0x4c2ee3
mov rdi, qword [rsp + 0x48]
mov word [rdi + rbx*2], r15w
inc rbx
jmp 0x4c2c94
mov r15, qword [rsp + 0xd0]
movabs r12, 0x8000000000000000
jmp 0x4c2d5a
mov edi, 1
xor r8d, r8d
xor ebx, ebx
jmp 0x4c2d99
mov edi, 2
xor ebx, ebx
xor r14d, r14d
lea rcx, [rsp + 0x80]
mov rdx, rdi
mov r8, rbx
call fcn.0042d8a0
mov rcx, r14
mov rdx, rdi
call fcn.004c2440
mov rbx, qword [rsp + 0x80]
cmp rbx, r12
je 0x4c2f1a
mov rdi, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0xf0]
mov rdx, rdi
call fcn.0045da10
mov ebp, eax
mov rcx, rbx
mov rdx, rdi
call fcn.00433101
test bpl, bpl
jne 0x4c2efe
mov rsi, qword [rsp + 0x68]
mov edi, dword [rsp + 0x70]
mov rax, qword [rsp + 0x74]
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0x48], eax
movzx ecx, word [rsp + 0xa0]
mov rdx, qword [rsp + 0xb0]
call fcn.004c23f1
cmp rsi, r12
jne 0x4c2eb5
lea rax, [rsp + 0x160]
mov dword [rax], edi
lea rcx, [rsp + 0x3c]
lea r8, [rsp + 0x80]
mov qword [r8], rcx
lea rcx, [0x00462120]
mov qword [r8 + 8], rcx
mov qword [r8 + 0x10], rax
lea rax, [0x004c30d0]
mov qword [r8 + 0x18], rax
mov eax, 2
lea rcx, [rsp + 0xf0]
mov qword [rcx], rax
and qword [rcx + 0x10], 0
mov edx, 6
mov qword [rcx + 0x18], rdx
and qword [rcx + 0x20], 0
movabs r9, 0xc00000020
mov qword [rcx + 0x28], r9
mov r10b, 3
mov byte [rcx + 0x30], r10b
mov qword [rcx + 0x38], rax
and qword [rcx + 0x48], 0
mov qword [rcx + 0x50], rdx
mov qword [rcx + 0x58], 1
mov qword [rcx + 0x60], r9
mov byte [rcx + 0x68], r10b
lea r9, [0x006c9a20]
lea rdx, [rsp + 0xa0]
mov qword [rdx], r9
mov qword [rdx + 8], 3
mov qword [rdx + 0x20], rcx
mov qword [rdx + 0x28], rax
mov qword [rdx + 0x10], r8
mov qword [rdx + 0x18], rax
mov rcx, r15
call fcn.0042d500
jmp 0x4c2ecd
mov qword [r15], rsi
mov dword [r15 + 8], edi
mov rax, qword [rsp + 0x40]
mov qword [r15 + 0xc], rax
mov eax, dword [rsp + 0x48]
mov dword [r15 + 0x14], eax
add rsp, 0x178
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jmp 0x4c2ef2
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x58]
call fcn.0042cfb0
jmp 0x4c2f54
lea rax, [0x006c9830]
lea r9, [0x006c9848]
mov edx, 0x37
lea rcx, str.a_Display_implementation_returned_an_error_unexpectedly_rustc_3f5fd8dd41153bc5fdca9427e9e05be2c767ba23library_alloc_src_string.rs
jmp 0x4c2f34
lea rax, [0x006c9ac8]
lea r9, [0x006c98b8]
mov edx, 0x2b
lea rcx, str.called__Result::unwrap____on_an__Err__value
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x40]
call fcn.0045ed80
jmp 0x4c2f54
mov ecx, 2
mov edx, 8
call fcn.0042cfb0
ud2