joyce8/EMBER2024-capa huggingface dataset:
Function at 0x100084dc
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 1
pop eax
test eax, eax
je 0x100089fd
lea eax, [ebp - 0x230]
mov dword [ebp - 0x3a0], eax
cmp dword [ebp - 0x6fc], 0
jne 0x100084d2
and byte [ebp - 0x77c], 0
and byte [ebp - 0x77b], 0
mov byte [ebp - 0x77a], 4
and byte [ebp - 0x779], 0
mov byte [ebp - 0x778], 0xb8
test dword [eax - 0x47000008], ecx
cmp dword [ebp - 0x6fc], 1
jne 0x10008583
add byte [eax], al
invalid
and byte [ebp - 0x78c], 0
and byte [ebp - 0x78b], 0
mov byte [ebp - 0x78a], 0xa0
and byte [ebp - 0x789], 0
mov byte [ebp - 0x788], 3
mov byte [ebp - 0x787], 0x3b
mov byte [ebp - 0x786], 0x33
mov byte [ebp - 0x785], 0x3c
mov byte [ebp - 0x784], 0x30
push dword [eax]
mov byte [ebp - 0x783], 0x3a
mov byte [ebp - 0x782], 0x2d
mov byte [ebp - 0x781], 0x71
mov byte [ebp - 0x780], 0x3b
mov byte [ebp - 0x77f], 0x33
mov byte [ebp - 0x77e], 0x33
mov byte [ebp - 0x77d], 0x5f
push 0xc
lea eax, [ebp - 0x78c]
push eax
call fcn.10006967
in al, 0xff
call [ecx + 0x50]
mov eax, dword [ebp - 0x28]
lea eax, [ebp + eax - 0x12c]
push eax
call fcn.100068c8
add esp, 0xc
lea eax, [ebp - 0x12c]
mov dword [ebp - 0x3a0], eax
jmp 0x100088cf
cmp dword [ebp - 0x6fc], 2
jne 0x10008640
and byte [ebp - 0x79c], 0
and byte [ebp - 0x79b], 0
cmp dword [ebp - 0x6fc], 3
jne 0x100086e1
and byte [ebp - 0x7ac], 0
and byte [ebp - 0x7ab], 0
cmp dword [ebp - 0x6fc], 4
jne 0x1000878b
and byte [ebp - 0x7bc], 0
and byte [ebp - 0x7bb], 0
mov byte [ebp - 0x7ba], 2
test dword [esi - 8], eax
invalid
inc dword [edx]
and byte [ebp - 0x7b9], 0
mov byte [ebp - 0x7b8], 0xa1
mov byte [ebp - 0x7b7], 0xb2
clc
invalid
push dword [edx - 0x7b57a3a]
invalid
push dword [ecx - 0x7b47a3a]
invalid
invalid
mov eax, 0xf84c85c6
invalid
dec edi
mov byte [ebp - 0x7b3], 0xce
test dword [ebp - 8], ecx
invalid
dec esi
mov byte [ebp - 0x7b2], 0xd3
mov byte [ebp - 0x7b1], 0x99
mov byte [ebp - 0x7b0], 0x91
xchg ecx, eax
cmp dword [ebp - 0x6fc], 5
jne 0x1000882c
invalid
and byte [ebp - 0x7cc], 0
cmp dword [ebp - 0x6fc], 6
jne 0x100088ca
and byte [ebp - 0x7dc], 0
and byte [ebp - 0x7db], 0
mov byte [ebp - 0x7da], 0x11
and byte [ebp - 0x7d9], 0
mov byte [ebp - 0x7d8], 0xb2
mov byte [ebp - 0x7d7], 0x8b
mov byte [ebp - 0x7d6], 0x9c
mov byte [ebp - 0x7d5], 0x9c
mov byte [ebp - 0x7d4], 0x81
clc
invalid
inc dword [ecx - 0x7d27a3a]
invalid
call [esi + eax*8 - 0x7d17b]
inc eax
mov byte [ebp - 0x7d1], 0x82
mov byte [ebp - 0x7d0], 0x81
mov byte [ebp - 0x7cf], 0x89
mov byte [ebp - 0x7ce], 0xee
push 0xb
lea eax, [ebp - 0x7dc]
push eax
call fcn.10006967
pop ecx
push eax
mov eax, dword [ebp - 0x338]
lea eax, [ebp + eax - 0x230]
push eax
call fcn.100068c8
add esp, 0xc
jmp 0x100088cf
jmp 0x100089fd
cmp dword [ebp - 0x37c], 0
je 0x100089f8
jmp 0x100089fd
jmp 0x100082f9
cmp dword [ebp - 0x37c], 0
jne 0x10008aa7
push dword [ebp + 0x1c]
push dword [ebp - 0xc]
push dword [ebp - 0x540]
push dword [ebp - 0x684]
push dword [ebp - 0x688]
push dword [ebp - 0x3ac]
push dword [ebp - 0x400]
push dword [ebp - 0x54c]
push dword [ebp - 0x678]
lea eax, [ebp - 0x334]
push eax
push dword [ebp - 4]
push dword [ebp + 8]
call dword [ebp - 0x37c]
pop edi
pop esi
pop ebx
leave
ret
Function at 0x1000865b
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov byte [ebp - 0x7aa], 0xed
and byte [ebp - 0x7a9], 0
mov byte [ebp - 0x7a8], 0x4e
mov byte [ebp - 0x7a7], 0x55
invalid
test dword [edx - 8], ebx
Function at 0x100089ed
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 1
pop eax
test eax, eax
je 0x100089fd
lea eax, [ebp - 0x230]
mov dword [ebp - 0x3a0], eax
cmp dword [ebp - 0x6fc], 0
jne 0x100084d2
and byte [ebp - 0x77c], 0
and byte [ebp - 0x77b], 0
mov byte [ebp - 0x77a], 4
and byte [ebp - 0x779], 0
mov byte [ebp - 0x778], 0xb8
test dword [eax - 0x47000008], ecx
cmp dword [ebp - 0x6fc], 1
jne 0x10008583
add byte [eax], al
invalid
and byte [ebp - 0x78c], 0
and byte [ebp - 0x78b], 0
mov byte [ebp - 0x78a], 0xa0
and byte [ebp - 0x789], 0
mov byte [ebp - 0x788], 3
mov byte [ebp - 0x787], 0x3b
mov byte [ebp - 0x786], 0x33
mov byte [ebp - 0x785], 0x3c
mov byte [ebp - 0x784], 0x30
push dword [eax]
mov byte [ebp - 0x783], 0x3a
mov byte [ebp - 0x782], 0x2d
mov byte [ebp - 0x781], 0x71
mov byte [ebp - 0x780], 0x3b
mov byte [ebp - 0x77f], 0x33
mov byte [ebp - 0x77e], 0x33
mov byte [ebp - 0x77d], 0x5f
push 0xc
lea eax, [ebp - 0x78c]
push eax
call fcn.10006967
in al, 0xff
call [ecx + 0x50]
mov eax, dword [ebp - 0x28]
lea eax, [ebp + eax - 0x12c]
push eax
call fcn.100068c8
add esp, 0xc
lea eax, [ebp - 0x12c]
mov dword [ebp - 0x3a0], eax
jmp 0x100088cf
cmp dword [ebp - 0x6fc], 2
jne 0x10008640
and byte [ebp - 0x79c], 0
and byte [ebp - 0x79b], 0
cmp dword [ebp - 0x6fc], 3
jne 0x100086e1
and byte [ebp - 0x7ac], 0
and byte [ebp - 0x7ab], 0
cmp dword [ebp - 0x6fc], 4
jne 0x1000878b
and byte [ebp - 0x7bc], 0
and byte [ebp - 0x7bb], 0
mov byte [ebp - 0x7ba], 2
test dword [esi - 8], eax
invalid
inc dword [edx]
and byte [ebp - 0x7b9], 0
mov byte [ebp - 0x7b8], 0xa1
mov byte [ebp - 0x7b7], 0xb2
clc
invalid
push dword [edx - 0x7b57a3a]
invalid
push dword [ecx - 0x7b47a3a]
invalid
invalid
mov eax, 0xf84c85c6
invalid
dec edi
mov byte [ebp - 0x7b3], 0xce
test dword [ebp - 8], ecx
invalid
dec esi
mov byte [ebp - 0x7b2], 0xd3
mov byte [ebp - 0x7b1], 0x99
mov byte [ebp - 0x7b0], 0x91
xchg ecx, eax
cmp dword [ebp - 0x6fc], 5
jne 0x1000882c
invalid
and byte [ebp - 0x7cc], 0
cmp dword [ebp - 0x6fc], 6
jne 0x100088ca
and byte [ebp - 0x7dc], 0
and byte [ebp - 0x7db], 0
mov byte [ebp - 0x7da], 0x11
and byte [ebp - 0x7d9], 0
mov byte [ebp - 0x7d8], 0xb2
mov byte [ebp - 0x7d7], 0x8b
mov byte [ebp - 0x7d6], 0x9c
mov byte [ebp - 0x7d5], 0x9c
mov byte [ebp - 0x7d4], 0x81
clc
invalid
inc dword [ecx - 0x7d27a3a]
invalid
call [esi + eax*8 - 0x7d17b]
inc eax
mov byte [ebp - 0x7d1], 0x82
mov byte [ebp - 0x7d0], 0x81
mov byte [ebp - 0x7cf], 0x89
mov byte [ebp - 0x7ce], 0xee
push 0xb
lea eax, [ebp - 0x7dc]
push eax
call fcn.10006967
pop ecx
push eax
mov eax, dword [ebp - 0x338]
lea eax, [ebp + eax - 0x230]
push eax
call fcn.100068c8
add esp, 0xc
jmp 0x100088cf
jmp 0x100089fd
cmp dword [ebp - 0x37c], 0
je 0x100089f8
jmp 0x100089fd
jmp 0x100082f9
cmp dword [ebp - 0x37c], 0
jne 0x10008aa7
push dword [ebp + 0x1c]
push dword [ebp - 0xc]
push dword [ebp - 0x540]
push dword [ebp - 0x684]
push dword [ebp - 0x688]
push dword [ebp - 0x3ac]
push dword [ebp - 0x400]
push dword [ebp - 0x54c]
push dword [ebp - 0x678]
lea eax, [ebp - 0x334]
push eax
push dword [ebp - 4]
push dword [ebp + 8]
call dword [ebp - 0x37c]
pop edi
pop esi
pop ebx
leave
ret
Function at 0x100093fe
Capabilities:
Check for time delay via gettickcount

Disassembly:
push esi
mov esi, ecx
mov ecx, dword [esi + 0x6c]
test ecx, ecx
je 0x1000945f
push ebx
mov bl, byte [esp + 0xc]
push ebp
push edi
and bl, 0x1f
mov byte [esp + 0x14], bl
push dword [esp + 0x14]
push 8
call fcn.100127d6
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov ebp, eax
jmp 0x10009440
call edi
sub eax, ebp
cmp eax, 0x7d0
jae 0x10009450
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [esi + 0x6c]
push 8
call fcn.10012596
and al, 0x9f
cmp al, bl
jne 0x1000942d
mov ecx, dword [esi + 0x6c]
push 0xc
call fcn.1001241d
pop edi
pop ebp
pop ebx
jmp 0x10009461
xor eax, eax
pop esi
ret 4

Function at 0x100095c1
Capabilities:
Check for time delay via gettickcount

Disassembly:
push esi
mov esi, ecx
mov ecx, dword [esi + 0x6c]
test ecx, ecx
je 0x10009627
push ebx
mov bl, byte [esp + 0xc]
push ebp
and bl, 0x3f
push edi
or bl, 0x80
mov byte [esp + 0x14], bl
push dword [esp + 0x14]
push 8
call fcn.100127d6
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov ebp, eax
jmp 0x10009606
call edi
sub eax, ebp
cmp eax, 0x7d0
jae 0x10009616
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [esi + 0x6c]
push 8
call fcn.10012596
and al, 0xbf
cmp al, bl
jne 0x100095f3
push dword [esp + 0x18]
mov ecx, dword [esi + 0x6c]
push 0xc
call fcn.10012651
pop edi
pop ebp
pop ebx
pop esi
ret 8
Function at 0x10009a0c
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebx
push ebp
push esi
push edi
xor ebp, ebp
mov esi, ecx
mov eax, dword [esi]
push ebp
push 0x7e40
call dword [eax + 0x74]
mov eax, dword [esi]
push ebp
push 0x7e50
mov ecx, esi
call dword [eax + 0x74]
mov eax, dword [esi]
push ebp
push 0x7e60
mov ecx, esi
call dword [eax + 0x74]
mov eax, dword [esi]
push 0x1101
push 0x7d34
mov ecx, esi
call dword [eax + 0x74]
mov edi, dword [esi]
mov ebx, 0x7d38
push ebx
mov ecx, esi
call dword [edi + 0x68]
or eax, 0x2222
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov ebx, dword [esi]
mov edi, 0x7d30
push edi
mov ecx, esi
call dword [ebx + 0x68]
mov ecx, dword [esp + 0x24]
shl ecx, 8
and eax, 0xfffff8ff
or eax, ecx
push eax
push edi
mov ecx, esi
call dword [ebx + 0x74]
mov eax, dword [esp + 0x24]
sub eax, ebp
je 0x10009acf
dec eax
je 0x10009ab1
dec eax
jne 0x10009af0
mov ebx, dword [esi]
push 0x7d60
mov ecx, esi
call dword [ebx + 0x68]
and eax, 0xff007c
or eax, 0x28000083
push eax
push 0x7d60
jmp 0x10009aeb
mov ebx, dword [esi]
push 0x7d58
mov ecx, esi
call dword [ebx + 0x68]
and eax, 0xff007c
or eax, 0x28000083
push eax
push 0x7d58
jmp 0x10009aeb
mov ebx, dword [esi]
push 0x7d50
mov ecx, esi
call dword [ebx + 0x68]
and eax, 0xff007c
or eax, 0x28000083
push eax
push 0x7d50
mov ecx, esi
call dword [ebx + 0x74]
mov ebx, dword [esi]
push edi
mov ecx, esi
call dword [ebx + 0x68]
and eax, 0xffcfffff
push eax
push edi
mov ecx, esi
call dword [ebx + 0x74]
mov eax, dword [esp + 0x1c]
shl eax, 0x10
or eax, 1
cmp dword [esp + 0x28], ebp
je 0x10009b1b
or eax, 0x1000
jmp 0x10009b20
and eax, 0xffffefff
cmp dword [esp + 0x2c], ebp
je 0x10009b2d
or eax, 0x2000
jmp 0x10009b32
and eax, 0xffffdfff
mov edx, dword [esi]
push eax
push 0x7d64
mov ecx, esi
call dword [edx + 0x74]
mov ecx, dword [esp + 0x14]
mov eax, dword [esi]
or ecx, 0xff800000
shl ecx, 8
push ecx
mov ebp, 0x7d74
push ebp
mov ecx, esi
call dword [eax + 0x74]
mov ebx, dword [esi]
push edi
mov ecx, esi
call dword [ebx + 0x68]
or eax, 1
push eax
push edi
mov ecx, esi
call dword [ebx + 0x74]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov dword [esp + 0x24], eax
lea ebx, [ebp - 0x38]
mov eax, dword [esi]
push ebx
mov ecx, esi
call dword [eax + 0x68]
test al, 4
jne 0x10009b94
call edi
sub eax, dword [esp + 0x24]
cmp eax, 0x7d0
jb 0x10009b7b
mov eax, dword [esi]
push ebx
mov ecx, esi
call dword [eax + 0x68]
test eax, 0x1000
je 0x10009ba7
xor eax, eax
jmp 0x10009be4
mov eax, dword [esi]
push ebx
mov ecx, esi
call dword [eax + 0x68]
test al, 0x20
jne 0x10009ba3
mov eax, dword [esi]
push 0x80010001
push ebp
mov ecx, esi
call dword [eax + 0x74]
xor edi, edi
cmp dword [esp + 0x1c], edi
jbe 0x10009be1
mov eax, dword [esi]
push ebp
mov ecx, esi
call dword [eax + 0x68]
mov ecx, dword [esp + 0x18]
shr eax, 8
mov byte [edi + ecx], al
inc edi
cmp edi, dword [esp + 0x1c]
jb 0x10009bc8
xor eax, eax
inc eax
pop edi
pop esi
pop ebp
pop ebx
ret 0x1c
Function at 0x10009beb
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, ecx
mov eax, dword [esi]
push 0
push 0x7e40
call dword [eax + 0x74]
mov eax, dword [esi]
push 0
push 0x7e50
mov ecx, esi
call dword [eax + 0x74]
mov edi, dword [esi]
mov ebx, 0x7d34
push ebx
mov ecx, esi
call dword [edi + 0x68]
and eax, 0xffffffcd
or eax, 0x1101
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov edi, dword [esi]
add ebx, 4
push ebx
mov ecx, esi
call dword [edi + 0x68]
or eax, 0x2222
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov ebx, dword [esi]
mov edi, 0x7d30
push edi
mov ecx, esi
call dword [ebx + 0x68]
mov ecx, dword [ebp + 0x18]
shl ecx, 8
and eax, 0xfffff8ff
or eax, ecx
push eax
push edi
mov ecx, esi
call dword [ebx + 0x74]
mov eax, dword [ebp + 0x18]
sub eax, 0
je 0x10009ca7
dec eax
je 0x10009c8b
dec eax
jne 0x10009cc6
mov ebx, dword [esi]
push 0x7d60
mov ecx, esi
call dword [ebx + 0x68]
and eax, 0x7c
or eax, 0x28010083
push eax
push 0x7d60
jmp 0x10009cc1
mov ebx, dword [esi]
push 0x7d58
mov ecx, esi
call dword [ebx + 0x68]
and eax, 0x7c
or eax, 0x28010083
push eax
push 0x7d58
jmp 0x10009cc1
mov ebx, dword [esi]
push 0x7d50
mov ecx, esi
call dword [ebx + 0x68]
and eax, 0x7c
or eax, 0x28010083
push eax
push 0x7d50
mov ecx, esi
call dword [ebx + 0x74]
mov ebx, dword [esi]
push edi
mov ecx, esi
call dword [ebx + 0x68]
and eax, 0xffcfffff
push eax
push edi
mov ecx, esi
call dword [ebx + 0x74]
mov eax, dword [ebp + 0x10]
shl eax, 0x10
cmp dword [ebp + 0x1c], 0
je 0x10009ced
or eax, 0x1000
jmp 0x10009cf2
and eax, 0xffffefff
cmp dword [ebp + 0x20], 0
je 0x10009cff
or eax, 0x2000
jmp 0x10009d04
and eax, 0xffffdfff
mov edx, dword [esi]
push eax
push 0x7d64
mov ecx, esi
call dword [edx + 0x74]
mov ecx, dword [ebp + 8]
mov eax, dword [esi]
or ecx, 0xff800000
shl ecx, 8
push ecx
mov ebx, 0x7d74
push ebx
mov ecx, esi
call dword [eax + 0x74]
and dword [ebp + 0x18], 0
cmp dword [ebp + 0x10], 0
jbe 0x10009d56
mov edx, dword [ebp + 0x18]
mov ecx, dword [ebp + 0xc]
movzx ecx, byte [edx + ecx]
mov eax, dword [esi]
shl ecx, 8
push ecx
push ebx
mov ecx, esi
call dword [eax + 0x74]
inc dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp + 0x10]
jb 0x10009d35
mov ebx, dword [esi]
push edi
mov ecx, esi
call dword [ebx + 0x68]
or eax, 1
push eax
push edi
mov ecx, esi
call dword [ebx + 0x74]
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
call ebx
mov dword [ebp + 0x10], eax
mov edi, 0x7d3c
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x68]
test al, 4
jne 0x10009d90
call ebx
sub eax, dword [ebp + 0x10]
cmp eax, 0x7d0
jb 0x10009d78
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x68]
test eax, 0x1000
je 0x10009da3
xor eax, eax
jmp 0x10009db7
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x68]
movzx eax, al
xor eax, 0xffffffff
shr eax, 5
and eax, 1
pop edi
pop esi
pop ebx
pop ebp
ret 0x1c
Function at 0x1000abbb
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push esi
push dword [ebp + 0x1c]
mov esi, ecx
call sym.RTCore.dll_public:_int___thiscall_CLowLevelHwInterfaceATI::I2CIsBusDisconnected_unsigned_long_int_
test eax, eax
je 0x1000abd4
xor eax, eax
jmp 0x1000ad29
push ebx
push edi
push 0x21c
push dword [ebp + 0x1c]
mov ecx, esi
call sym.RTCore.dll_public:_void___thiscall_CLowLevelHwInterfaceATI::RV8xx_I2CReset_unsigned_long_int__unsigned_long_int_
push 0x300000
push 0
mov ebx, 0x6064
push ebx
mov ecx, esi
call sym.RTCore.dll_public:_void___thiscall_CLowLevelHwInterfaceATI::WriteRegisterUlongMasked_unsigned_long_int__unsigned_long_int__unsigned_long_int_
mov ecx, dword [ebp + 0x14]
mov eax, dword [esi]
inc ecx
shl ecx, 0x10
or ecx, 0x3100
push ecx
push 0x60bc
mov ecx, esi
call dword [eax + 0x74]
mov ecx, dword [ebp + 8]
mov eax, dword [esi]
or ecx, 0xffc00000
shl ecx, 9
push ecx
lea edi, [ebx + 0x68]
push edi
mov ecx, esi
call dword [eax + 0x74]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi]
or ecx, 0xff800100
shl ecx, 8
push ecx
push edi
mov ecx, esi
call dword [eax + 0x74]
and dword [ebp + 8], 0
cmp dword [ebp + 0x14], 0
jle 0x1000ac82
mov dword [ebp + 0xc], 0x20000
mov edx, dword [ebp + 8]
mov ecx, dword [ebp + 0x10]
movzx ecx, byte [edx + ecx]
mov eax, dword [esi]
or ecx, 0xff800000
shl ecx, 8
or ecx, dword [ebp + 0xc]
push ecx
push edi
mov ecx, esi
call dword [eax + 0x74]
inc dword [ebp + 8]
mov eax, dword [ebp + 8]
add dword [ebp + 0xc], 0x10000
cmp eax, dword [ebp + 0x14]
jl 0x1000ac51
push 1
push 1
push ebx
mov ecx, esi
call sym.RTCore.dll_public:_void___thiscall_CLowLevelHwInterfaceATI::WriteRegisterUlongMasked_unsigned_long_int__unsigned_long_int__unsigned_long_int_
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov dword [ebp + 0xc], eax
mov dword [ebp + 0x14], 1
mov eax, dword [esi]
push 0x6070
mov ecx, esi
call dword [eax + 0x68]
mov dword [ebp + 8], eax
test al, 4
jne 0x1000acbd
call edi
sub eax, dword [ebp + 0xc]
cmp eax, dword [esi + 0x78]
jb 0x1000aca0
test byte [ebp + 8], 4
jne 0x1000acd4
push dword [ebp + 0x1c]
mov ecx, esi
call sym.RTCore.dll_public:_void___thiscall_CLowLevelHwInterfaceATI::I2CDisconnectBus_unsigned_long_int_
xor edi, edi
mov dword [ebp + 0x14], edi
jmp 0x1000acd6
xor edi, edi
mov eax, dword [ebp + 8]
test al, 0x10
je 0x1000ace0
mov dword [ebp + 0x14], edi
test al, 0x20
je 0x1000ace7
mov dword [ebp + 0x14], edi
test al, 0x40
je 0x1000acee
mov dword [ebp + 0x14], edi
test al, al
jns 0x1000acf5
mov dword [ebp + 0x14], edi
test eax, 0x100
je 0x1000acff
mov dword [ebp + 0x14], edi
test eax, 0x1000
je 0x1000ad09
mov dword [ebp + 0x14], edi
mov eax, dword [esi]
push 2
push ebx
mov ecx, esi
call dword [eax + 0x7c]
push 1
call fcn.100147a2
mov eax, dword [esi]
pop ecx
push edi
push ebx
mov ecx, esi
call dword [eax + 0x7c]
mov eax, dword [ebp + 0x14]
pop edi
pop ebx
pop esi
pop ebp
ret 0x18
Function at 0x1000ae53
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, ecx
mov edi, dword [esi]
mov ebx, 0x7d84
push ebx
call dword [edi + 0x68]
or eax, 4
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov eax, dword [esi]
push 0x21c0002
push 0x7d8c
mov ecx, esi
call dword [eax + 0x74]
mov edi, dword [esi]
add ebx, 0xc
push ebx
mov ecx, esi
call dword [edi + 0x68]
and eax, 0x78
or eax, 0x28010007
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
push dword [ebp + 0x18]
mov ecx, esi
call sym.RTCore.dll_public:_void___thiscall_CLowLevelHwInterfaceATI::RV6xx_I2CGenericSelectBus_unsigned_long_int_
mov eax, dword [ebp + 0x10]
shl eax, 0x10
or eax, 1
cmp dword [ebp + 0x1c], 0
je 0x1000aebb
or eax, 0x1000
jmp 0x1000aec0
and eax, 0xffffefff
cmp dword [ebp + 0x20], 0
je 0x1000aecd
or eax, 0x2000
jmp 0x1000aed2
and eax, 0xffffdfff
mov edx, dword [esi]
push eax
push 0x7d94
mov ecx, esi
call dword [edx + 0x74]
mov ecx, dword [ebp + 8]
mov eax, dword [esi]
or ecx, 0xff800000
shl ecx, 8
push ecx
push 0x7d98
mov ecx, esi
call dword [eax + 0x74]
mov edi, dword [esi]
mov ebx, 0x7d80
push ebx
mov ecx, esi
call dword [edi + 0x68]
or eax, 1
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov dword [ebp + 0x18], eax
mov eax, dword [esi]
push 0x7d88
mov ecx, esi
call dword [eax + 0x68]
mov ebx, eax
test bl, 0x10
jne 0x1000af40
call edi
sub eax, dword [ebp + 0x18]
cmp eax, dword [esi + 0x78]
jb 0x1000af1a
test bl, 0x10
jne 0x1000af40
xor eax, eax
jmp 0x1000af8d
test bl, 0x20
jne 0x1000af3c
test bl, 0x40
jne 0x1000af3c
test ebx, 0x200
jne 0x1000af3c
test ebx, 0x400
jne 0x1000af3c
mov eax, dword [esi]
push 0x80010001
mov edi, 0x7d98
push edi
mov ecx, esi
call dword [eax + 0x74]
xor ebx, ebx
cmp dword [ebp + 0x10], ebx
jbe 0x1000af8a
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x68]
mov ecx, dword [ebp + 0xc]
shr eax, 8
mov byte [ebx + ecx], al
inc ebx
cmp ebx, dword [ebp + 0x10]
jb 0x1000af73
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
pop ebp
ret 0x1c
Function at 0x1000af94
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, ecx
mov edi, dword [esi]
mov ebx, 0x7d84
push ebx
call dword [edi + 0x68]
or eax, 4
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov eax, dword [esi]
push 0x21c0002
push 0x7d8c
mov ecx, esi
call dword [eax + 0x74]
mov edi, dword [esi]
add ebx, 0xc
push ebx
mov ecx, esi
call dword [edi + 0x68]
and eax, 0x78
or eax, 0x28010007
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
push dword [ebp + 0x18]
mov ecx, esi
call sym.RTCore.dll_public:_void___thiscall_CLowLevelHwInterfaceATI::RV6xx_I2CGenericSelectBus_unsigned_long_int_
mov eax, dword [ebp + 0x10]
xor ebx, ebx
shl eax, 0x10
cmp dword [ebp + 0x1c], ebx
je 0x1000affa
or eax, 0x1000
jmp 0x1000afff
and eax, 0xffffefff
cmp dword [ebp + 0x20], ebx
je 0x1000b00b
or eax, 0x2000
jmp 0x1000b010
and eax, 0xffffdfff
mov edx, dword [esi]
push eax
push 0x7d94
mov ecx, esi
call dword [edx + 0x74]
mov ecx, dword [ebp + 8]
mov eax, dword [esi]
or ecx, 0xff800000
shl ecx, 8
push ecx
mov edi, 0x7d98
push edi
mov ecx, esi
call dword [eax + 0x74]
cmp dword [ebp + 0x10], ebx
jbe 0x1000b055
mov ecx, dword [ebp + 0xc]
movzx ecx, byte [ebx + ecx]
mov eax, dword [esi]
shl ecx, 8
push ecx
push edi
mov ecx, esi
call dword [eax + 0x74]
inc ebx
cmp ebx, dword [ebp + 0x10]
jb 0x1000b03c
mov edi, dword [esi]
mov ebx, 0x7d80
push ebx
mov ecx, esi
call dword [edi + 0x68]
or eax, 1
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov dword [ebp + 0x10], eax
mov eax, dword [esi]
push 0x7d88
mov ecx, esi
call dword [eax + 0x68]
mov ebx, eax
test bl, 0x10
jne 0x1000b09d
call edi
sub eax, dword [ebp + 0x10]
cmp eax, dword [esi + 0x78]
jb 0x1000b077
test bl, 0x10
jne 0x1000b09d
xor eax, eax
jmp 0x1000b0b9
test bl, 0x20
jne 0x1000b099
test bl, 0x40
jne 0x1000b099
test ebx, 0x200
jne 0x1000b099
mov eax, ebx
shr eax, 0xa
not eax
and eax, 1
pop edi
pop esi
pop ebx
pop ebp
ret 0x1c
Function at 0x1000b394
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, ecx
mov edi, dword [esi]
mov ebx, 0x5bd4
push ebx
call dword [edi + 0x68]
or eax, 4
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov eax, dword [esi]
push 0x21c0002
push 0x5bdc
mov ecx, esi
call dword [eax + 0x74]
mov edi, dword [esi]
add ebx, 0xc
push ebx
mov ecx, esi
call dword [edi + 0x68]
and eax, 0x78
or eax, 0x28010007
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
push dword [ebp + 0x18]
mov ecx, esi
call sym.RTCore.dll_public:_void___thiscall_CLowLevelHwInterfaceATI::Tonga_I2CGenericSelectBus_unsigned_long_int_
mov eax, dword [ebp + 0x10]
shl eax, 0x10
or eax, 1
cmp dword [ebp + 0x1c], 0
je 0x1000b3fc
or eax, 0x1000
jmp 0x1000b401
and eax, 0xffffefff
cmp dword [ebp + 0x20], 0
je 0x1000b40e
or eax, 0x2000
jmp 0x1000b413
and eax, 0xffffdfff
mov edx, dword [esi]
push eax
push 0x5be4
mov ecx, esi
call dword [edx + 0x74]
mov ecx, dword [ebp + 8]
mov eax, dword [esi]
or ecx, 0xff800000
shl ecx, 8
push ecx
push 0x5be8
mov ecx, esi
call dword [eax + 0x74]
mov edi, dword [esi]
mov ebx, 0x5bd0
push ebx
mov ecx, esi
call dword [edi + 0x68]
or eax, 1
push eax
push ebx
mov ecx, esi
call dword [edi + 0x74]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov dword [ebp + 0x18], eax
mov eax, dword [esi]
push 0x5bd8
mov ecx, esi
call dword [eax + 0x68]
mov ebx, eax
test bl, 0x10
jne 0x1000b481
call edi
sub eax, dword [ebp + 0x18]
cmp eax, dword [esi + 0x78]
jb 0x1000b45b
test bl, 0x10
jne 0x1000b481
xor eax, eax
jmp 0x1000b4ce
test bl, 0x20
jne 0x1000b47d
test bl, 0x40
jne 0x1000b47d
test ebx, 0x200
jne 0x1000b47d
test ebx, 0x400
jne 0x1000b47d
mov eax, dword [esi]
push 0x80010001
mov edi, 0x5be8
push edi
mov ecx, esi
call dword [eax + 0x74]
xor ebx, ebx
cmp dword [ebp + 0x10], ebx
jbe 0x1000b4cb
mov eax, dword [esi]
push edi
mov ecx, esi
call dword [eax + 0x68]
mov ecx, dword [ebp + 0xc]
shr eax, 8
mov byte [ebx + ecx], al
inc ebx
cmp ebx, dword [ebp + 0x10]
jb 0x1000b4b4
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
pop ebp
ret 0x1c