joyce8/EMBER2024-capa huggingface dataset:
Function at 0x6706c5f0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x6715808b
mov eax, dword fs:[0]
push eax
push ecx
push ebp
push esi
push edi
mov eax, dword [0x672699e0]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x24]
mov dword [esi], eax
mov dword [esi + 4], sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov ecx, sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov edx, 1
lock xadd dword [ecx], edx
mov eax, dword [esp + 0x30]
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x1c], 0
mov dword [esi + 8], ebp
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], 0
test eax, eax
je 0x6706c669
cmp dword [esp + 0x34], edi
jb 0x6706c669
and dword [esi + 0x14], 0xfffffffe
mov dword [esi + 0x18], eax
jmp 0x6706c683
push edi
call dword [sym.imp.MSVCR100.dll_malloc]
add esp, 4
mov dword [esi + 0x18], eax
test eax, eax
jne 0x6706c67f
call sym.QtCore4.dll_void___cdecl_qBadAlloc_void_
or dword [esi + 0x14], 1
mov eax, dword [esi + 0x18]
mov ecx, dword [esi]
push eax
push edi
push ebp
push ecx
call fcn.6706c310
add esp, 0x10
mov eax, esi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
add esp, 0x10
ret 0x14

Function at 0x6706d920
Capabilities:
Get geographical location

Disassembly:
sub esp, 0x2c
mov eax, dword [0x672699e0]
xor eax, esp
mov dword [esp + 0x28], eax
push esi
mov esi, ecx
cmp dword [esi + 8], 0
push edi
jne 0x6706da0a
mov ecx, dword [esi + 4]
mov edi, dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push 8
lea eax, [esp + 0xc]
push eax
push 0x1014
push ecx
call edi
test eax, eax
jne 0x6706d971
mov eax, 3
pop edi
mov dword [esi + 8], eax
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.671509a6
add esp, 0x2c
ret
mov ax, word [esp + 8]
cmp ax, 0x31
jne 0x6706d997
mov dword [esi + 8], 3
mov eax, dword [esi + 8]
pop edi
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.671509a6
add esp, 0x2c
ret
cmp ax, 0x30
jne 0x6706d9b8
mov dword [esi + 8], 1
mov eax, dword [esi + 8]
pop edi
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.671509a6
add esp, 0x2c
ret
cmp ax, 0x32
jne 0x6706d9d9
mov dword [esi + 8], 2
mov eax, dword [esi + 8]
pop edi
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.671509a6
add esp, 0x2c
ret
mov eax, dword [esi + 4]
push 0xb
lea edx, [esp + 0x1c]
push edx
push 0x13
push eax
call edi
test eax, eax
je 0x6706d958
movzx ecx, word [esp + 0x18]
movzx edx, word [esp + 8]
add ecx, 2
xor eax, eax
cmp edx, ecx
setne al
add eax, 2
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x30]
pop edi
pop esi
xor ecx, esp
call fcn.671509a6
add esp, 0x2c
ret
Function at 0x6706db20
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x67158178
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push esi
push edi
mov eax, dword [0x672699e0]
xor eax, esp
push eax
lea eax, [esp + 0x18]
mov dword fs:[0], eax
push 2
lea eax, [esp + 0x14]
push eax
xor esi, esi
mov dword [esp + 0x1c], esi
mov ecx, dword [ecx + 4]
push 0xd
push ecx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6706dbdb
or edi, 0xffffffff
push edi
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push eax
call sym.QtCore4.dll_public:_static_class_QString___cdecl_QString::fromUcs2_unsigned_short_int_const___int_
add esp, 0xc
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x10]
mov dword [esp + 0x24], esi
mov dword [esp + 0x18], str.11234567_abcdef__._0DEFGHIJKLMNO89:_____ABC
call sym.QtCore4.dll_public:_bool___thiscall_QString::operator_class_QLatin1String_const__const
test al, al
je 0x6706dbc0
mov esi, dword [esp + 0x28]
push 1
mov ecx, esi
call sym.QtCore4.dll_public:_void___thiscall_QVariant::constructor_int_
mov edx, dword [esp + 0xc]
mov dword [esp + 0x20], edi
lock xadd dword [edx], edi
jne 0x6706dbe7
mov eax, dword [esp + 0xc]
push eax
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
jmp 0x6706dbe7
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x20], edi
lock xadd dword [ecx], edi
jne 0x6706dbdb
mov edx, dword [esp + 0xc]
push edx
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
push esi
mov esi, dword [esp + 0x2c]
mov ecx, esi
call sym.QtCore4.dll_public:_void___thiscall_QVariant::constructor_int_
mov eax, esi
mov ecx, dword [esp + 0x18]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x18
ret 4

Function at 0x6706dc00
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x671581a8
mov eax, dword fs:[0]
push eax
sub esp, 0x28
mov eax, dword [0x672699e0]
xor eax, esp
mov dword [esp + 0x24], eax
push esi
mov eax, dword [0x672699e0]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov esi, dword [esp + 0x40]
push 0xf
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x10], 0
mov ecx, dword [ecx + 4]
push 0x28
push ecx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6706dc9a
push 0xffffffffffffffff
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x10]
push eax
call sym.QtCore4.dll_public:_static_class_QString___cdecl_QString::fromUcs2_unsigned_short_int_const___int_
add esp, 0xc
push eax
mov ecx, esi
mov dword [esp + 0x3c], 0
call sym.QtCore4.dll_public:_void___thiscall_QVariant::constructor_class_QString_const__
mov ecx, dword [esp + 8]
mov dword [esp + 0x38], 0xffffffff
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x6706dca7
mov eax, dword [esp + 8]
push eax
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
jmp 0x6706dca7
mov dword [esi + 8], 0x80000000
mov dword [esi], 0
mov eax, esi
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.671509a6
add esp, 0x34
ret 4
Function at 0x6706dcd0
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x671581a8
mov eax, dword fs:[0]
push eax
sub esp, 0x28
mov eax, dword [0x672699e0]
xor eax, esp
mov dword [esp + 0x24], eax
push esi
mov eax, dword [0x672699e0]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
mov esi, dword [esp + 0x40]
push 0xf
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x10], 0
mov ecx, dword [ecx + 4]
push 0x29
push ecx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6706dd6a
push 0xffffffffffffffff
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x10]
push eax
call sym.QtCore4.dll_public:_static_class_QString___cdecl_QString::fromUcs2_unsigned_short_int_const___int_
add esp, 0xc
push eax
mov ecx, esi
mov dword [esp + 0x3c], 0
call sym.QtCore4.dll_public:_void___thiscall_QVariant::constructor_class_QString_const__
mov ecx, dword [esp + 8]
mov dword [esp + 0x38], 0xffffffff
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x6706dd77
mov eax, dword [esp + 8]
push eax
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
jmp 0x6706dd77
mov dword [esi + 8], 0x80000000
mov dword [esi], 0
mov eax, esi
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.671509a6
add esp, 0x34
ret 4

Function at 0x6706dda0
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x671581d8
mov eax, dword fs:[0]
push eax
sub esp, 0x10
mov eax, dword [0x672699e0]
xor eax, esp
mov dword [esp + 0xc], eax
push esi
mov eax, dword [0x672699e0]
xor eax, esp
push eax
lea eax, [esp + 0x18]
mov dword fs:[0], eax
mov esi, dword [esp + 0x28]
push 4
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x10], 0
mov ecx, dword [ecx + 4]
push 0x100c
push ecx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6706de49
push 0xffffffffffffffff
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x10]
push eax
call sym.QtCore4.dll_public:_static_class_QString___cdecl_QString::fromUcs2_unsigned_short_int_const___int_
add esp, 0xc
push 0xa
push 0
mov ecx, eax
mov dword [esp + 0x28], 0
call sym.QtCore4.dll_public:_unsigned_int___thiscall_QString::toUInt_bool___int_const
inc eax
push eax
mov ecx, esi
call sym.QtCore4.dll_public:_void___thiscall_QVariant::constructor_unsigned_int_
mov ecx, dword [esp + 8]
mov dword [esp + 0x20], 0xffffffff
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x6706de52
mov eax, dword [esp + 8]
push eax
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
jmp 0x6706de52
push 1
mov ecx, esi
call sym.QtCore4.dll_public:_void___thiscall_QVariant::constructor_int_
mov eax, esi
mov ecx, dword [esp + 0x18]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [esp + 0xc]
xor ecx, esp
call fcn.671509a6
add esp, 0x1c
ret 4
Function at 0x6706dea0
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x6715822a
mov eax, dword fs:[0]
push eax
sub esp, 0xa0
push ebx
push ebp
push esi
push edi
mov eax, dword [0x672699e0]
xor eax, esp
push eax
lea eax, [esp + 0xb4]
mov dword fs:[0], eax
mov ebp, ecx
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x14], 0
test eax, eax
jne 0x6706dee7
mov eax, 0x40
mov ecx, eax
mov dword [esp + 0x20], ecx
cmp eax, 0x40
jle 0x6706df18
add eax, eax
push eax
call sym.QtCore4.dll_void____cdecl_qMalloc_unsigned_int_
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
jne 0x6706df0e
call sym.QtCore4.dll_void___cdecl_qBadAlloc_void_
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x1c], ecx
jmp 0x6706df28
lea eax, [esp + 0x2c]
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], 0x40
mov esi, dword [esp + 0xc8]
mov edi, dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push ecx
mov ecx, dword [ebp + 4]
push eax
push esi
mov ebx, 1
push ecx
mov dword [esp + 0xcc], ebx
call edi
test eax, eax
jne 0x6706df6b
mov esi, dword [esp + 0xc4]
mov dword [esi], sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov edx, sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov eax, ebx
lock xadd dword [edx], eax
jmp 0x6706e012
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x6706dffb
mov edx, dword [ebp + 4]
push 0
push 0
push esi
push edx
call edi
test eax, eax
jne 0x6706dfad
mov esi, dword [esp + 0xc4]
mov dword [esi], sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov eax, sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov ecx, ebx
lock xadd dword [eax], ecx
mov eax, dword [esp + 0x24]
lea edx, [esp + 0x2c]
cmp eax, edx
jmp 0x6706e01c
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x1c]
cmp eax, dword [esp + 0x1c]
jl 0x6706dfbf
lea ecx, [esp + 0x18]
mov ecx, dword [ecx]
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.67127560
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov ecx, dword [ebp + 4]
push edx
push eax
push esi
push ecx
call edi
test eax, eax
jne 0x6706dffb
mov esi, dword [esp + 0xc4]
mov dword [esi], sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov edx, sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov eax, ebx
lock xadd dword [edx], eax
jmp 0x6706e012
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0xc4]
push 0xffffffffffffffff
push edx
push esi
call sym.QtCore4.dll_public:_static_class_QString___cdecl_QString::fromUcs2_unsigned_short_int_const___int_
add esp, 0xc
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x2c]
cmp eax, ecx
mov byte [esp + 0xbc], 0
mov dword [esp + 0x14], ebx
je 0x6706e033
push eax
call sym.QtCore4.dll_void___cdecl_qFree_void__
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0xb4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xac
ret 0xc
Function at 0x6706f660
Capabilities:
Get geographical location

Disassembly:
push 0xffffffffffffffff
push 0x67158562
mov eax, dword fs:[0]
push eax
sub esp, 0x210
mov eax, dword [0x672699e0]
xor eax, esp
mov dword [esp + 0x20c], eax
mov eax, dword [0x672699e0]
xor eax, esp
push eax
lea eax, [esp + 0x214]
mov dword fs:[0], eax
xor eax, eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
mov dword [esi], sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov ecx, sym.QtCore4.dll_struct_QString::Data_QString::shared_null
mov edx, 1
lock xadd dword [ecx], edx
mov ecx, dword [esp + 0x224]
push 0xff
mov dword [esp + 0x220], eax
lea eax, [esp + 0x14]
push eax
push 0x5a
push ecx
mov dword [esp + 0x18], 1
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x6706f718
push 0xffffffffffffffff
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0xc]
push eax
call sym.QtCore4.dll_public:_static_class_QString___cdecl_QString::fromUcs2_unsigned_short_int_const___int_
mov edx, dword [eax]
mov ecx, dword [esi]
mov dword [esi], edx
mov dword [eax], ecx
mov eax, dword [esp + 0x10]
add esp, 0xc
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x6706f718
mov edx, dword [esp + 4]
push edx
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x214]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [esp + 0x20c]
xor ecx, esp
call fcn.671509a6
add esp, 0x21c
ret
Function at 0x67071940
Capabilities:
Hash data with crc32

Disassembly:
sub esp, 0x104
mov eax, dword [0x672699e0]
xor eax, esp
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x108]
push ebx
mov ebx, ecx
test ebx, ebx
jle 0x67071ab0
mov edx, 1
mov dword [esp + 4], 0xedb88320
mov ecx, edx
mov dword [esp + ecx*4 + 4], edx
inc ecx
add edx, edx
cmp ecx, 0x20
jl 0x67071975
push esi
push edi
xor edi, edi
mov ecx, dword [esp + edi + 0xc]
xor esi, esi
lea edx, [esp + 0xc]
test ecx, ecx
je 0x670719a1
test cl, 1
je 0x6707199a
xor esi, dword [edx]
add edx, 4
shr ecx, 1
jne 0x67071993
mov dword [esp + edi + 0x8c], esi
add edi, 4
cmp edi, 0x80
jl 0x67071985
xor edi, edi
jmp 0x670719c0
mov ecx, dword [esp + edi + 0x8c]
xor esi, esi
lea edx, [esp + 0x8c]
test ecx, ecx
je 0x670719e2
test cl, 1
je 0x670719db
xor esi, dword [edx]
add edx, 4
shr ecx, 1
jne 0x670719d4
mov dword [esp + edi + 0xc], esi
add edi, 4
cmp edi, 0x80
jl 0x670719c0
xor edi, edi
mov ecx, dword [esp + edi + 0xc]
xor esi, esi
lea edx, [esp + 0xc]
test ecx, ecx
je 0x67071a0f
test cl, 1
je 0x67071a08
xor esi, dword [edx]
add edx, 4
shr ecx, 1
jne 0x67071a01
mov dword [esp + edi + 0x8c], esi
add edi, 4
cmp edi, 0x80
jl 0x670719f3
test bl, 1
je 0x67071a42
xor edx, edx
lea ecx, [esp + 0x8c]
test eax, eax
je 0x67071a40
test al, 1
je 0x67071a39
xor edx, dword [ecx]
add ecx, 4
shr eax, 1
jne 0x67071a33
mov eax, edx
sar ebx, 1
je 0x67071aa7
xor edi, edi
jmp 0x67071a50
mov ecx, dword [esp + edi + 0x8c]
xor esi, esi
lea edx, [esp + 0x8c]
test ecx, ecx
je 0x67071a72
test cl, 1
je 0x67071a6b
xor esi, dword [edx]
add edx, 4
shr ecx, 1
jne 0x67071a64
mov dword [esp + edi + 0xc], esi
add edi, 4
cmp edi, 0x80
jl 0x67071a50
test bl, 1
je 0x67071a9f
xor edx, edx
lea ecx, [esp + 0xc]
test eax, eax
je 0x67071a9d
test al, 1
je 0x67071a96
xor edx, dword [ecx]
add ecx, 4
shr eax, 1
jne 0x67071a90
mov eax, edx
sar ebx, 1
jne 0x670719f1
xor eax, dword [esp + 0x118]
pop edi
pop esi
mov ecx, dword [esp + 0x104]
pop ebx
xor ecx, esp
call fcn.671509a6
add esp, 0x104
ret
Function at 0x67071b10
Capabilities:
Encode data using xor

Disassembly:
mov ecx, dword [esp + 4]
push ebx
mov ebx, dword [esp + 0x10]
push ebp
push esi
push edi
mov edi, ebx
test ecx, ecx
je 0x67071bf8
mov esi, dword [ecx + 0x1c]
test esi, esi
je 0x67071bf8
mov ebp, dword [esp + 0x18]
test ebp, ebp
je 0x67071bf8
mov eax, dword [esi + 0x18]
cmp eax, 2
je 0x67071bf8
cmp eax, 1
jne 0x67071b58
cmp dword [esi + 4], 0x2a
jne 0x67071bf8
test eax, eax
je 0x67071b71
mov eax, dword [ecx + 0x30]
push ebx
push ebp
push eax
call sym.QtCore4.dll_adler32
mov ecx, dword [esp + 0x20]
add esp, 0xc
mov dword [ecx + 0x30], eax
cmp ebx, 3
jb 0x67071bf1
mov eax, dword [esi + 0x2c]
cmp ebx, eax
jbe 0x67071b83
mov edi, eax
sub ebx, edi
add ebp, ebx
mov edx, dword [esi + 0x38]
push edi
push ebp
push edx
call sub.MSVCR100.dll_memcpy
mov edx, dword [esi + 0x38]
mov ecx, dword [esi + 0x58]
mov dword [esi + 0x6c], edi
mov dword [esi + 0x5c], edi
movzx eax, byte [edx]
mov dword [esi + 0x48], eax
shl eax, cl
movzx ecx, byte [edx + 1]
xor eax, ecx
and eax, dword [esi + 0x54]
add esp, 0xc
xor edx, edx
mov dword [esi + 0x48], eax
add edi, 0xfffffffd
mov ebx, dword [esi + 0x48]
mov ecx, dword [esi + 0x58]
mov eax, dword [esi + 0x38]
movzx eax, byte [eax + edx + 2]
mov ebp, dword [esi + 0x40]
shl ebx, cl
mov ecx, dword [esi + 0x44]
xor eax, ebx
and eax, dword [esi + 0x54]
mov ebx, dword [esi + 0x34]
mov dword [esi + 0x48], eax
mov ax, word [ecx + eax*2]
and ebx, edx
mov word [ebp + ebx*2], ax
mov ecx, dword [esi + 0x48]
mov eax, dword [esi + 0x44]
mov word [eax + ecx*2], dx
inc edx
cmp edx, edi
jbe 0x67071bb6
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffe
pop ebx
ret
Function at 0x67072270
Capabilities:
Encrypt data using rc4 prga

Disassembly:
sub esp, 8
push ebx
push ebp
mov ebp, dword [esi + 0x2c]
push edi
lea esp, [esp]
mov edi, dword [esi + 0x3c]
sub edi, dword [esi + 0x74]
mov eax, dword [esi + 0x6c]
mov ecx, dword [esi + 0x2c]
sub edi, eax
lea edx, [ecx + ebp - 0x106]
mov dword [esp + 0xc], edi
cmp eax, edx
jb 0x670722fd
mov eax, dword [esi + 0x38]
push ebp
lea ecx, [eax + ebp]
push ecx
push eax
call sub.MSVCR100.dll_memcpy
mov edx, dword [esi + 0x4c]
mov eax, dword [esi + 0x44]
sub dword [esi + 0x70], ebp
sub dword [esi + 0x6c], ebp
add esp, 0xc
sub dword [esi + 0x5c], ebp
lea ecx, [eax + edx*2]
movzx eax, word [ecx - 2]
sub ecx, 2
cmp eax, ebp
jb 0x670722cf
sub eax, ebp
jmp 0x670722d1
xor eax, eax
dec edx
mov word [ecx], ax
jne 0x670722c0
mov ecx, dword [esi + 0x40]
mov edx, ebp
lea ecx, [ecx + ebp*2]
nop
movzx eax, word [ecx - 2]
sub ecx, 2
cmp eax, ebp
jb 0x670722ef
sub eax, ebp
jmp 0x670722f1
xor eax, eax
dec edx
mov word [ecx], ax
jne 0x670722e0
add edi, ebp
mov dword [esp + 0xc], edi
mov edi, dword [esi]
cmp dword [edi + 4], 0
je 0x6707242a
mov eax, dword [esi + 0x74]
add eax, dword [esi + 0x6c]
mov ecx, dword [edi + 4]
add eax, dword [esi + 0x38]
mov edx, dword [esp + 0xc]
mov ebx, ecx
mov dword [esp + 0x10], eax
cmp ebx, edx
jbe 0x67072325
mov ebx, edx
test ebx, ebx
je 0x67072376
mov edx, dword [edi + 0x1c]
sub ecx, ebx
mov dword [edi + 4], ecx
mov ecx, dword [edx + 0x18]
cmp ecx, 1
jne 0x67072348
mov eax, dword [edi]
mov ecx, dword [edi + 0x30]
push ebx
push eax
push ecx
call sym.QtCore4.dll_adler32
jmp 0x6707235a
cmp ecx, 2
jne 0x67072364
mov edx, dword [edi]
mov eax, dword [edi + 0x30]
push ebx
push edx
push eax
call sym.QtCore4.dll_crc32
mov dword [edi + 0x30], eax
mov eax, dword [esp + 0x1c]
add esp, 0xc
mov ecx, dword [edi]
push ebx
push ecx
push eax
call sub.MSVCR100.dll_memcpy
add dword [edi], ebx
add esp, 0xc
add dword [edi + 8], ebx
add dword [esi + 0x74], ebx
mov ebx, dword [esi + 0x74]
cmp ebx, 3
jb 0x6707239e
mov edx, dword [esi + 0x6c]
add edx, dword [esi + 0x38]
mov ecx, dword [esi + 0x58]
movzx eax, byte [edx]
mov dword [esi + 0x48], eax
shl eax, cl
movzx ecx, byte [edx + 1]
xor eax, ecx
and eax, dword [esi + 0x54]
mov dword [esi + 0x48], eax
cmp ebx, 0x106
jae 0x670723b2
mov edx, dword [esi]
cmp dword [edx + 4], 0
jne 0x67072280
mov eax, dword [esi + 0x16c0]
mov ecx, dword [esi + 0x3c]
cmp eax, ecx
jae 0x6707242a
mov edi, dword [esi + 0x6c]
add edi, ebx
cmp eax, edi
jae 0x670723f9
sub ecx, edi
mov ebx, ecx
cmp ebx, 0x102
jbe 0x670723d9
mov ebx, 0x102
mov eax, dword [esi + 0x38]
push ebx
add eax, edi
push 0
push eax
call fcn.67150b42
add esp, 0xc
add ebx, edi
pop edi
pop ebp
mov dword [esi + 0x16c0], ebx
pop ebx
add esp, 8
ret
lea edx, [edi + 0x102]
cmp eax, edx
jae 0x6707242a
sub edi, eax
add edi, 0x102
sub ecx, eax
cmp edi, ecx
jbe 0x67072413
mov edi, ecx
mov ecx, dword [esi + 0x38]
push edi
add ecx, eax
push 0
push ecx
call fcn.67150b42
add esp, 0xc
add dword [esi + 0x16c0], edi
pop edi
pop ebp
pop ebx
add esp, 8
ret
Function at 0x670744c0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, dword [sym.imp.MSVCR100.dll__read]
mov dword [esi], 0
lea ecx, [ecx]
mov eax, dword [esi]
mov ecx, edi
sub ecx, eax
add eax, dword [esp + 8]
push ecx
push eax
mov eax, dword [ebx + 4]
push eax
call ebp
add esp, 0xc
test eax, eax
jle 0x670744ef
add dword [esi], eax
cmp dword [esi], edi
jb 0x670744d0
pop ebp
test eax, eax
jns 0x67074513
call dword [sym.imp.MSVCR100.dll__errno]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.MSVCR100.dll_strerror]
push eax
push 0xffffffffffffffff
push ebx
call fcn.67073f20
add esp, 0x10
or eax, 0xffffffff
ret
jne 0x6707451c
mov dword [ebx + 0x28], 1
xor eax, eax
ret
Function at 0x670935b0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x67158ac1
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
mov eax, dword [0x672699e0]
xor eax, esp
push eax
lea eax, [esp + 0x20]
mov dword fs:[0], eax
xor ebx, ebx
mov dword [esp + 0x14], ebx
mov esi, dword [esp + 0x30]
mov dword [esi], sym.QtCore4.dll_struct_QListData::Data_QListData::shared_null
mov eax, sym.QtCore4.dll_struct_QListData::Data_QListData::shared_null
mov edx, 1
lock xadd dword [eax], edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x50]
push ebx
lea edx, [esp + 0x10]
push edx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x1c], 1
call eax
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push ecx
mov dword [ecx], ebx
mov edx, dword [esp + 0x3c]
mov ecx, esp
mov dword [ecx], edx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x18], esp
push ecx
push eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x38], 1
call sym.QtCore4.dll_public:_void___thiscall_QDirIterator::constructor_class_QString_const___class_QStringList_const___class_QFlags_enum_QDir::Filter___class_QFlags_enum_QDirIterator::IteratorFlag__
mov edx, dword [esp + 0xc]
mov bl, 3
mov byte [esp + 0x28], bl
or eax, 0xffffffff
lock xadd dword [edx], eax
jne 0x67093659
mov ecx, dword [esp + 0xc]
push ecx
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
lea ecx, [esp + 0x18]
call sym.QtCore4.dll_public:_bool___thiscall_QDirIterator::hasNext_void_const
test al, al
je 0x670936d4
lea edx, [esp + 0x38]
push edx
lea ecx, [esp + 0x1c]
call sym.QtCore4.dll_public:_class_QString___thiscall_QDirIterator::next_void_
mov eax, dword [esp + 0x38]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x6709368e
mov edx, dword [esp + 0x38]
push edx
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x1c]
call sym.QtCore4.dll_public:_class_QString___thiscall_QDirIterator::fileName_void_
push eax
mov ecx, esi
mov byte [esp + 0x2c], 4
call fcn.670215e0
mov ecx, dword [esp + 0x10]
mov byte [esp + 0x28], bl
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x670936c7
mov eax, dword [esp + 0x10]
push eax
call sym.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__
add esp, 4
lea ecx, [esp + 0x18]
call sym.QtCore4.dll_public:_bool___thiscall_QDirIterator::hasNext_void_const
test al, al
jne 0x67093666
lea ecx, [esp + 0x18]
mov byte [esp + 0x28], 0
call sym.QtCore4.dll_public_virtual:_void___thiscall_QDirIterator::destructor_void_
mov eax, esi
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
add esp, 0x20
ret 0xc