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

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x551074
push eax
mov eax, 0x12bc
mov dword fs:[0], esp
call fcn.00540a20
push ebx
push ebp
mov ebp, ecx
push esi
push edi
mov edi, dword [esp + 0x12dc]
lea eax, [ebp + 0x3f4]
lea ecx, [ebp + 0x2f4]
push eax
lea edx, [esp + 0x43c]
push ecx
lea eax, [esp + 0x340]
push edx
push eax
push edi
mov bl, 1
mov dword [esp + 0x34], 0
call fcn.004b7d50
add esp, 0x14
test eax, eax
jge 0x51c839
push str.NULL_file_name
push str.dcDICOMFile::LoadDICOMFile
push 0x108
push str.F:NuVisionApiTSCDICOMDataDicom3.0Part3_5_10dcDICOMFile.cpp
push 2
call fcn.004aa860
add esp, 0x14
mov eax, 3
jmp 0x51cdd3
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp + 0xf4]
mov eax, ecx
mov esi, edi
mov edi, edx
mov dword [esp + 0x14], edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x38]
push ecx
push edx
call fcn.004e2980
add esp, 8
mov byte [esp + 0x13], al
test al, al
je 0x51c8b1
mov esi, dword [esp + 0x14]
lea edx, [esp + 0x38]
push edx
push esi
call fcn.004c0250
add esp, 8
test eax, eax
jne 0x51c911
lea edi, [esp + 0x38]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x14]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x14]
push 0x57f938
push ecx
call dword [0x553b04]
mov esi, eax
add esp, 8
test esi, esi
mov dword [esp + 0x18], esi
jne 0x51c93a
mov edx, dword [esp + 0x14]
push edx
push str.Failed_to_open_file__s_for_read
push str.dcDICOMFile::LoadDICOMFile
push 0x125
push str.F:NuVisionApiTSCDICOMDataDicom3.0Part3_5_10dcDICOMFile.cpp
push 2
call fcn.004aa860
mov al, byte [esp + 0x2b]
add esp, 0x18
test al, al
je 0x51c907
lea eax, [esp + 0x38]
push eax
call dword [0x553ad8]
add esp, 4
mov eax, 4
jmp 0x51cdd3
push esi
push str.Failed_to_uncompress_file__s
push str.dcDICOMFile::LoadDICOMFile
push 0x11b
push str.F:NuVisionApiTSCDICOMDataDicom3.0Part3_5_10dcDICOMFile.cpp
push 2
call fcn.004aa860
add esp, 0x18
mov eax, 4
jmp 0x51cdd3
mov edi, dword [esp + 0x12e0]
test edi, edi
jne 0x51c9a8
mov eax, dword [esp + 0x12e4]
test eax, eax
jne 0x51c9a8
mov eax, dword [ebp + 0xa0]
test eax, eax
jne 0x51c993
push 0xd9c
call fcn.0053ff1e
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
mov dword [esp + 0x12d4], edi
je 0x51c980
push ebp
mov ecx, eax
call fcn.00531e80
jmp 0x51c982
xor eax, eax
mov dword [esp + 0x12d4], 0xffffffff
mov dword [ebp + 0xa0], eax
mov ecx, dword [ebp + 0xa0]
push esi
call fcn.00532310
test eax, eax
je 0x51c9f5
cmp eax, 6
je 0x51c9f5
push str.Not_a_DICOM_Part_10_file.
push str.dcDICOMFile::LoadDICOMFile
push 0x13f
push str.F:NuVisionApiTSCDICOMDataDicom3.0Part3_5_10dcDICOMFile.cpp
push 3
call fcn.004aa860
add esp, 0x14
test edi, edi
je 0x51ca27
push edi
mov ecx, ebp
call fcn.004fa930
push edi
push str.User_user_specified_transfer_syntax__s.
push str.dcDICOMFile::LoadDICOMFile
push 0x146
push str.F:NuVisionApiTSCDICOMDataDicom3.0Part3_5_10dcDICOMFile.cpp
push 4
call fcn.004aa860
add esp, 0x18
xor bl, bl
jmp 0x51ca27
mov ecx, dword [ebp + 0xa0]
test ecx, ecx
je 0x51ca27
push 0
call fcn.005320b0
mov edi, eax
test edi, edi
je 0x51ca16
push edi
mov ecx, ebp
call fcn.004fa930
xor bl, bl
mov ecx, dword [ebp + 0xa0]
call fcn.004070d0
mov dword [ebp + 0xa4], eax
mov ecx, dword [ebp + 0xa4]
push 0
push ecx
push esi
call dword [0x553b50]
push esi
push 8
lea edx, [esp + 0x3c]
push 1
push edx
call dword [0x553af8]
add esp, 0x1c
cmp eax, 5
mov dword [esp + 0x24], eax
jle 0x51cb22
lea eax, [esp + 0x2c]
push eax
call fcn.004ff3e0
add esp, 4
test bl, bl
je 0x51ca7e
test al, al
je 0x51cb27
push str.1.2.840.10008.1.2.1
mov ecx, ebp
call fcn.004fa930
jmp 0x51cace
test edi, edi
je 0x51cace
test al, al
je 0x51cae1
mov esi, 0x584500
mov eax, edi
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x51cab5
test cl, cl
je 0x51cab1
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x51cab5
add eax, 2
add esi, 2
test cl, cl
jne 0x51ca8d
xor eax, eax
jmp 0x51caba
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x51caca
push str.1.2.840.10008.1.2.1
mov ecx, ebp
call fcn.004fa930
mov esi, dword [esp + 0x18]
mov eax, dword [ebp + 0xa4]
test eax, eax
je 0x51cb30
push 0
mov dword [esp + 0x24], eax
push eax
jmp 0x51cb50
mov esi, str.1.2.840.10008.1.2.1
mov eax, edi
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x51cb10
test cl, cl
je 0x51cb0c
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x51cb10
add eax, 2
add esi, 2
test cl, cl
jne 0x51cae8
xor eax, eax
jmp 0x51cb15
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x51caca
mov ecx, ebp
call fcn.004fa9c0
jmp 0x51caca
cmp bl, 1
jne 0x51cace
mov ecx, ebp
call fcn.004fa9c0
jmp 0x51cace
mov eax, dword [esp + 0x12e4]
test eax, eax
je 0x51cb44
push 0
mov dword [esp + 0x24], eax
push eax
jmp 0x51cb50
mov eax, dword [esp + 0x24]
test eax, eax
je 0x51cb5a
push 0
push 0
push esi
call dword [0x553b50]
add esp, 0xc
mov eax, dword [ebp + 0xa4]
test eax, eax
jne 0x51cb7e
mov ecx, dword [ebp + 0xa0]
test ecx, ecx
je 0x51cb7e
mov eax, dword [ecx]
push 1
call dword [eax]
mov dword [ebp + 0xa0], 0
mov edx, dword [ebp]
push 0
push esi
mov ecx, ebp
call dword [edx + 0x78]
mov edi, dword [ebp + 0x94]
mov ecx, dword [esp + 0x18]
mov esi, eax
mov eax, dword [esp + 0x20]
add edi, eax
push ecx
mov dword [ebp + 0x94], edi
call dword [0x553af4]
mov al, byte [esp + 0x17]
add esp, 4
test al, al
je 0x51cbc1
lea edx, [esp + 0x38]
push edx
call dword [0x553ad8]
add esp, 4
push 0
mov ecx, ebp
call fcn.004dd180
push eax
lea ecx, [esp + 0x20]
call fcn.0053ffba
test esi, esi
mov dword [esp + 0x12d4], 1
je 0x51cc3e
cmp esi, 3
je 0x51cc3e
cmp esi, 9
je 0x51cc3e
cmp esi, 5
je 0x51cc3e
cmp esi, 7
je 0x51cc3e
cmp esi, 1
je 0x51cc3e
mov eax, dword [esp + 0x14]
push esi
push eax
push str.Failed_to_load_file__s___status___d
push str.dcDICOMFile::LoadDICOMlFile
push 0x1b0
push str.F:NuVisionApiTSCDICOMDataDicom3.0Part3_5_10dcDICOMFile.cpp
push 2
call fcn.004aa860
add esp, 0x1c
lea ecx, [esp + 0x1c]
mov dword [esp + 0x12d4], 0xffffffff
call fcn.0053feb8
mov eax, 8
jmp 0x51cdd3
push 0
mov ecx, ebp
call fcn.004fc660
test eax, eax
jne 0x51cda7
push eax
mov ecx, ebp
call fcn.004dda70
test eax, eax
je 0x51cda7
mov eax, dword [ebp + 0x44]
cmp eax, 0x7fef0010
ja 0x51cc72
cmp eax, 0xffffffff
jne 0x51cda7
lea ecx, [esp + 0x638]
call fcn.0051c480
push 0
mov ecx, ebp
mov byte [esp + 0x12d8], 2
call fcn.004dda70
lea ecx, [esp + 0x438]
push eax
push ecx
lea edx, [esp + 0x240]
push 0x582c80
push edx
call dword [0x553ae8]
add esp, 0x10
lea eax, [esp + 0x238]
lea ecx, [esp + 0x638]
push 0
push 0
push eax
call fcn.0051c7b0
mov edi, eax
test edi, edi
je 0x51cd1e
cmp esi, 5
je 0x51cd1e
push str.Failed_to_load_pixel_file
push str.dcDICOMFile::LoadDICOMlFile
push 0x1c7
push str.F:NuVisionApiTSCDICOMDataDicom3.0Part3_5_10dcDICOMFile.cpp
push 2
call fcn.004aa860
add esp, 0x14
lea ecx, [esp + 0x638]
mov byte [esp + 0x12d4], 1
call fcn.0051c4c0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x12d4], 0xffffffff
call fcn.0053feb8
mov eax, edi
jmp 0x51cdd3
push 0x10
push 0x7fe0
lea ecx, [esp + 0x640]
call fcn.004fa650
test eax, eax
jne 0x51cd8b
push str.Pixel_data_element_missing.
push str.dcDICOMFile::LoadDICOMlFile
push 0x1cd
push str.F:NuVisionApiTSCDICOMDataDicom3.0Part3_5_10dcDICOMFile.cpp
push 2
call fcn.004aa860
add esp, 0x14
mov ecx, ebp
push 1
call fcn.004fc660
lea ecx, [esp + 0x638]
mov byte [esp + 0x12d4], 1
call fcn.0051c4c0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x12d4], 0xffffffff
call fcn.0053feb8
mov eax, 0xa
jmp 0x51cdd3
push eax
mov ecx, ebp
call fcn.004fa400
lea ecx, [esp + 0x638]
mov byte [esp + 0x12d4], 1
call fcn.0051c4c0
mov ecx, dword [esp + 0x14]
push ecx
push 0x1029
push 0x7fdd
mov ecx, ebp
call fcn.004dfd70
lea ecx, [esp + 0x1c]
mov dword [esp + 0x12d4], 0xffffffff
call fcn.0053feb8
xor eax, eax
mov ecx, dword [esp + 0x12cc]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x12c8
ret 0xc