Function at 0x5a6ed4
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0x1b4
mov eax, 0x6d67fe
call fcn.00648b50
mov edi, ecx
mov dword [ebp - 0xc8], edi
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x100]
push str.AtiSdkApi::GetCrossDisplayInfo
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp + 0xc]
push edi
mov dword [ebp - 0xf0], eax
call fcn.005a14e8
xor ebx, ebx
mov dword [ebp - 4], ebx
cmp dword [edi + 0x74], ebx
je 0x5a7212
mov esi, dword [edi + 0x28]
mov esi, dword [esi]
mov dword [ebp - 0xb4], esi
jmp 0x5a7209
xor eax, eax
mov dword [ebp - 0xf8], ebx
mov byte [ebp - 0x78], bl
mov dword [ebp - 0x74], ebx
mov byte [ebp - 0x70], bl
mov dword [ebp - 0x58], 7
mov dword [ebp - 0x5c], ebx
mov word [ebp - 0x6c], ax
mov byte [ebp - 0x54], bl
mov dword [ebp - 0x50], ebx
mov byte [ebp - 0x4c], bl
mov dword [ebp - 0x48], ebx
mov byte [ebp - 0x44], bl
mov dword [ebp - 0x40], ebx
mov byte [ebp - 0x3c], bl
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x34], bl
mov dword [ebp - 0x30], ebx
mov byte [ebp - 0x2c], bl
mov dword [ebp - 0x28], ebx
mov byte [ebp - 0x24], bl
mov dword [ebp - 0x20], ebx
mov byte [ebp - 0x1c], bl
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0xf4], ebx
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xe4], ebx
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xd0], ebx
mov byte [ebp - 4], 3
mov ecx, dword [edi]
push 0x333
call fcn.005adba9
mov eax, dword [esi + 0x14]
lea ecx, [ebp - 0xac]
push ecx
lea ecx, [ebp - 0xd0]
push ecx
lea ecx, [ebp - 0xc4]
push ecx
lea ecx, [ebp - 0xd4]
push ecx
lea ecx, [ebp - 0xf4]
push ecx
lea ecx, [ebp - 0xf8]
push ecx
lea ecx, [ebp - 0xe4]
push ecx
push dword [eax + 0xc]
call dword [edi + 0x74]
mov ecx, dword [ebp - 0xc8]
add esp, 0x20
mov edi, eax
mov ecx, dword [ecx]
call fcn.005adb40
test edi, edi
jns 0x5a706f
call fcn.00515e26
push eax
lea ecx, [ebp - 0xb0]
call fcn.00515c3a
mov byte [ebp - 4], 4
lea eax, [ebp - 0xb0]
push dword [ebp - 0xac]
push str.ATI_SDK:_getting_caps_failed__error_code_status___i
push eax
call fcn.0051647b
add esp, 0xc
call fcn.005a79dd
lea eax, [ebp - 0xb0]
push eax
call fcn.005a4618
mov ecx, dword [ebp - 0xb0]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov byte [ebp - 4], 5
mov esi, dword [ebp - 0xd0]
call fcn.005a79bd
test esi, esi
je 0x5a7066
push esi
call fcn.005adccb
mov byte [ebp - 4], 6
jmp 0x5a71cf
mov eax, dword [esi + 0x14]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0xc0]
mov byte [ebp - 0x78], 1
mov ecx, dword [esi + 0x14]
push eax
call fcn.005186e1
mov edx, eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x90]
call fcn.00590d8b
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 8
cmp ecx, eax
je 0x5a70b0
push 0xffffffffffffffff
push ebx
push eax
call fcn.0052900d
push ebx
push 1
lea ecx, [ebp - 0x90]
mov byte [ebp - 0x70], 1
call fcn.00529114
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0xc0]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xf0]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0xf4]
lea ecx, [ecx + 0x2ec]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x78]
push eax
mov byte [ebp - 0x54], 1
mov byte [ebp - 0x4c], 1
mov byte [ebp - 0x44], 1
mov byte [ebp - 0x3c], 1
call fcn.005a7a41
call fcn.00515e26
push eax
lea ecx, [ebp - 0xcc]
call fcn.00515c3a
lea eax, [ebp - 0xbc]
mov byte [ebp - 4], 9
mov ecx, dword [esi + 0x14]
push eax
call fcn.005186e1
mov ecx, eax
mov byte [ebp - 4], 0xa
push dword [ebp - 0xac]
mov eax, dword [esi + 0x14]
push dword [ebp - 0xc4]
push dword [ebp - 0xf4]
push dword [ebp - 0xf8]
push dword [ebp - 0xe4]
push dword [ecx]
push dword [eax + 0xc]
lea eax, [ebp - 0xcc]
push str.Adapter__i___s__crossfire_caps:_n__cross_display_support___i_n__adapter_role___i_n__num_possible_display_adapters___i_n__num_possible_rendering_adapters___i_n__error_code_status___i_n
push eax
call fcn.0051647b
mov byte [ebp - 4], 9
add esp, 0x24
mov ecx, dword [ebp - 0xbc]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
call fcn.005a79dd
lea eax, [ebp - 0xcc]
push eax
call fcn.005a4618
mov ecx, dword [ebp - 0xcc]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov byte [ebp - 4], 0xb
mov esi, dword [ebp - 0xd0]
call fcn.005a79bd
test esi, esi
je 0x5a71cb
push esi
call fcn.005adccb
mov byte [ebp - 4], 0xc
mov esi, dword [ebp - 0xd4]
call fcn.005a79bd
test esi, esi
je 0x5a71e4
push esi
call fcn.005adccb
push ebx
push 1
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], bl
call fcn.00529114
lea ecx, [ebp - 0xb4]
call fcn.0051a99d
mov esi, dword [ebp - 0xb4]
mov edi, dword [ebp - 0xc8]
cmp esi, dword [edi + 0x28]
jne 0x5a6f2c
cmp dword [edi + 0x78], ebx
jne 0x5a724f
push str.ATI_SDK:_GetAdapterCrossdisplayInfo_not_found
lea ecx, [ebp - 0xb4]
call fcn.00519ebc
mov byte [ebp - 4], 0xd
call fcn.005a79dd
lea eax, [ebp - 0xb4]
push eax
call fcn.005a4618
mov ecx, dword [ebp - 0xb4]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
jmp 0x5a7964
mov eax, ebx
mov dword [ebp - 0xdc], ebx
mov dword [ebp - 0xe0], ebx
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xe8], ebx
mov byte [ebp - 4], 0xf
mov esi, dword [edi + 0x28]
mov esi, dword [esi]
mov dword [ebp - 0xb4], esi
cmp esi, dword [edi + 0x28]
je 0x5a78ff
mov dword [ebp - 0xd0], ebx
or dword [ebp - 0xac], 0xffffffff
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xcc], ebx
mov dword [ebp - 0xe0], ebx
mov dword [ebp - 0xdc], ebx
call fcn.005a79bd
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x5a72c7
push eax
call fcn.005adccb
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xec], ebx
mov dword [ebp - 0xbc], eax
call fcn.005a79bd
mov eax, dword [ebp - 0xbc]
test eax, eax
je 0x5a72ee
push eax
call fcn.005adccb
mov ecx, dword [edi]
push 0x375
mov dword [ebp - 0xe8], ebx
call fcn.005adba9
mov eax, dword [esi + 0x14]
lea ecx, [ebp - 0xcc]
push ecx
lea ecx, [ebp - 0xe8]
push ecx
lea ecx, [ebp - 0xe0]
push ecx
lea ecx, [ebp - 0xec]
push ecx
lea ecx, [ebp - 0xdc]
push ecx
lea ecx, [ebp - 0xac]
push ecx
lea ecx, [ebp - 0xc4]
push ecx
push dword [eax + 0xc]
call dword [edi + 0x78]
mov ecx, dword [ebp - 0xc8]
add esp, 0x20
mov edi, eax
mov ecx, dword [ecx]
call fcn.005adb40
call fcn.00515e26
push eax
test edi, edi
js 0x5a78bd
lea ecx, [ebp - 0xb0]
call fcn.00515c3a
lea eax, [ebp - 0xc0]
mov byte [ebp - 4], 0x13
mov ecx, dword [esi + 0x14]
push eax
call fcn.005186e1
mov ecx, eax
mov byte [ebp - 4], 0x14
push dword [ebp - 0xcc]
mov eax, dword [esi + 0x14]
push dword [ebp - 0xe0]
push dword [ebp - 0xdc]
push dword [ebp - 0xac]
push dword [ebp - 0xc4]
push dword [ecx]
push dword [eax + 0xc]
lea eax, [ebp - 0xb0]
push str.Adapter__i___s__crossfire_info:_n__adapter_role___i_n__crossdisplay_mode___i_n__num_display_adapters___i_n__num_rendering_adapters___i_n__error_code_status___i_n
push eax
call fcn.0051647b
mov byte [ebp - 4], 0x13
add esp, 0x24
mov ecx, dword [ebp - 0xc0]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
call fcn.005a79dd
lea eax, [ebp - 0xb0]
push eax
call fcn.005a4618
mov ecx, dword [ebp - 0xf0]
push 0x64
pop esi
mov eax, dword [ecx + 0x2f0]
sub eax, dword [ecx + 0x2ec]
cdq
idiv esi
mov esi, dword [ebp - 0xd0]
cmp eax, dword [ebp - 0xd4]
jbe 0x5a743d
mov ecx, dword [ecx + 0x2ec]
mov eax, dword [ebp - 0xc4]
add ecx, esi
mov dword [ecx + 0x48], eax
mov byte [ecx + 0x44], 1
mov eax, dword [ebp - 0xac]
mov dword [ecx + 0x50], eax
mov byte [ecx + 0x4c], 1
mov eax, dword [ebp - 0xdc]
mov dword [ecx + 0x58], eax
mov byte [ecx + 0x54], 1
mov eax, dword [ebp - 0xe0]
mov dword [ecx + 0x60], eax
mov byte [ecx + 0x5c], 1
mov edi, dword [ebp - 0xc4]
test edi, edi
jne 0x5a749b
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0xb0]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
lea ecx, [ebp - 0xb4]
call fcn.0051a99d
mov edi, dword [ebp - 0xc8]
inc dword [ebp - 0xd4]
push 0x64
pop eax
add esi, eax
mov dword [ebp - 0xd0], esi
mov esi, dword [ebp - 0xb4]
cmp esi, dword [edi + 0x28]
je 0x5a78ff
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0xe4], eax
jmp 0x5a7293
mov esi, dword [ebp - 0xac]
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0xb0]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
test edi, edi
je 0x5a78ff
sub esi, ebx
je 0x5a74e3
sub esi, 1
jne 0x5a7521
push str.Cross_display_mode.
lea ecx, [ebp - 0xa8]
call fcn.00515719
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x80], ebx
mov byte [ebp - 4], 0x18
jmp 0x5a7500
push 0x75ab80
lea ecx, [ebp - 0xa8]
call fcn.00515719
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x80], ebx
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0xa8]
push eax
call fcn.0054622d
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0xf
call fcn.006c2344
call fcn.00515e26
push eax
lea ecx, [ebp - 0xac]
call fcn.00515c3a
mov byte [ebp - 4], 0x1a
call fcn.00515e26
push eax
lea ecx, [ebp - 0xb0]
call fcn.00515c3a
mov esi, dword [ebp - 0xc8]
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0xdc]
test eax, eax
jle 0x5a7659
mov edi, ebx
mov eax, dword [ebp - 0xec]
mov ecx, esi
push dword [eax + edi*4]
lea eax, [ebp - 0xb8]
push eax
call fcn.005a6e0b
mov byte [ebp - 4], 0x1c
cmp dword [ebp - 0xb8], 0
sete al
test al, al
je 0x5a7593
mov byte [ebp - 4], 0x1d
jmp 0x5a7639
test edi, edi
jle 0x5a75a7
push 0x75ab7c
lea ecx, [ebp - 0xac]
call fcn.00544733
mov ecx, dword [ebp - 0xb8]
lea eax, [ebp - 0xbc]
push eax
call fcn.005186e1
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xac]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.00517d9c
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0xbc]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov ecx, dword [ebp - 0xb8]
lea eax, [ebp - 0xc0]
push eax
call fcn.005186e1
mov edx, eax
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x90]
call fcn.00590d8b
mov ecx, dword [ebp - 0xf0]
push eax
mov byte [ebp - 4], 0x20
lea ecx, [ecx + 0x2f8]
call fcn.005a86c4
push ebx
push 1
lea ecx, [ebp - 0x90]
call fcn.00529114
mov ecx, dword [ebp - 0xc0]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0xb4]
test ecx, ecx
je 0x5a7648
call fcn.0051578b
inc edi
mov byte [ebp - 4], 0x1b
cmp edi, dword [ebp - 0xdc]
jl 0x5a7561
mov eax, dword [ebp - 0xe0]
test eax, eax
jle 0x5a7761
mov edi, ebx
mov eax, dword [ebp - 0xe8]
mov ecx, esi
push dword [eax + edi*4]
lea eax, [ebp - 0xb8]
push eax
call fcn.005a6e0b
mov byte [ebp - 4], 0x22
cmp dword [ebp - 0xb8], 0
sete al
test al, al
je 0x5a769b
mov byte [ebp - 4], 0x23
jmp 0x5a7741
test edi, edi
jle 0x5a76af
push 0x75ab7c
lea ecx, [ebp - 0xb0]
call fcn.00544733
mov ecx, dword [ebp - 0xb8]
lea eax, [ebp - 0xbc]
push eax
call fcn.005186e1
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0xb0]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.00517d9c
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0xbc]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov ecx, dword [ebp - 0xb8]
lea eax, [ebp - 0xc0]
push eax
call fcn.005186e1
mov edx, eax
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x90]
call fcn.00590d8b
mov ecx, dword [ebp - 0xf0]
push eax
mov byte [ebp - 4], 0x26
lea ecx, [ecx + 0x304]
call fcn.005a86c4
push ebx
push 1
lea ecx, [ebp - 0x90]
call fcn.00529114
mov ecx, dword [ebp - 0xc0]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0xb4]
test ecx, ecx
je 0x5a7750
call fcn.0051578b
inc edi
mov byte [ebp - 4], 0x1b
cmp edi, dword [ebp - 0xe0]
jl 0x5a7669
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp - 0x160]
call fcn.006c22ac
lea eax, [ebp - 0xac]
mov byte [ebp - 4], 0x28
push eax
lea ecx, [ebp - 0x130]
call fcn.006c22ac
push ecx
push 0x3ec
lea ecx, [ebp - 0x1c0]
mov byte [ebp - 4], 0x29
call fcn.006c22f9
push eax
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0x2a
call fcn.006c2dad
mov edi, eax
lea eax, [ebp - 0x130]
mov byte [ebp - 4], 0x2b
push eax
lea ecx, [edi + 0x30]
call fcn.0056ed5e
lea eax, [ebp - 0x160]
push eax
lea ecx, [edi + 0x30]
call fcn.0056ed5e
sub esp, 0x40
mov ecx, esp
push edi
call fcn.005414cd
lea ecx, [ebp - 0x98]
call fcn.005448fe
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x2c
push eax
lea ecx, [ebp - 0x190]
call fcn.006c220e
mov byte [ebp - 4], 0x2d
mov ebx, dword [ebp - 0xd8]
mov ecx, ebx
push eax
call fcn.0054622d
lea ecx, [ebp - 0x190]
call fcn.006c2344
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x2e
call fcn.0051f634
lea ecx, [ebp - 0x58]
call fcn.006c2dd3
lea ecx, [ebp - 0x1c0]
call fcn.006c2344
lea ecx, [ebp - 0x130]
call fcn.006c2344
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x1b
call fcn.006c2344
lea eax, [ebp - 0xc0]
mov ecx, ebx
push eax
call fcn.006c22d9
push eax
mov edx, str.ATI_SDK:
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0xbc]
call fcn.00534752
pop ecx
mov esi, eax
mov byte [ebp - 4], 0x30
call fcn.005a79dd
push esi
call fcn.005a4618
mov ecx, dword [ebp - 0xbc]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov ecx, dword [ebp - 0xc0]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov ecx, dword [ebp - 0xb0]
mov bl, 1
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov ecx, dword [ebp - 0xac]
jmp 0x5a792a
lea ecx, [ebp - 0xd8]
call fcn.00515c3a
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0xd8]
push dword [ebp - 0xcc]
push str.ATI_SDK:_getting_role_failed__error_code_status___i
push eax
call fcn.0051647b
add esp, 0xc
call fcn.005a79dd
lea eax, [ebp - 0xd8]
push eax
call fcn.005a4618
mov ecx, dword [ebp - 0xd8]
jmp 0x5a792a
push str.ATI_SDK:_there_are_no_adapters_with_crossfire_role.
lea ecx, [ebp - 0xb4]
call fcn.00519ebc
mov byte [ebp - 4], 0x15
call fcn.005a79dd
lea eax, [ebp - 0xb4]
push eax
call fcn.005a4618
mov ecx, dword [ebp - 0xb4]
lea ecx, [ecx - 0x10]
call fcn.00515ed6
mov byte [ebp - 4], 0x31
mov esi, dword [ebp - 0xe8]
call fcn.005a79bd
test esi, esi
je 0x5a794b
push esi
call fcn.005adccb
mov byte [ebp - 4], 0x32
mov esi, dword [ebp - 0xec]
call fcn.005a79bd
test esi, esi
je 0x5a7964
push esi
call fcn.005adccb
lea ecx, [ebp - 0x100]
call fcn.005a1446
mov al, bl
call fcn.00648afa
ret 8