joyce8/EMBER2024-capa huggingface dataset:
Function at 0x419db0
Capabilities:
Encode data using xor
Generate random numbers using the delphi lcg

Disassembly:
mov eax, dword [esp + 8]
push ebx
push esi
push edi
mov edi, ecx
xor ebx, ebx
jmp 0x419dc0
mov cx, word [eax + 8]
mov edx, dword [eax]
or cx, 2
movzx ecx, cx
mov esi, ecx
xor esi, 1
imul esi, ecx
movsx ecx, byte [edi + ebx + 0x10]
sar esi, 8
xor esi, ecx
mov ecx, dword [edi + 0x80014]
xor esi, edx
shr edx, 8
and esi, 0xff
mov ecx, dword [ecx + esi*4]
mov esi, dword [eax + 8]
xor ecx, edx
movzx edx, cl
add edx, dword [eax + 4]
mov dword [eax], ecx
imul edx, edx, 0x8088405
inc edx
mov dword [eax + 4], edx
mov ecx, dword [edi + 0x80014]
sar edx, 0x18
xor edx, esi
and edx, 0xff
shr esi, 8
xor esi, dword [ecx + edx*4]
inc ebx
cmp ebx, 0xb
mov dword [eax + 8], esi
jl 0x419dc0
mov dx, si
or dx, 2
movzx ecx, dx
mov esi, dword [eax]
mov ebx, dword [edi + 0x80014]
movzx edx, cx
mov ecx, edx
xor ecx, 1
imul ecx, edx
sar ecx, 8
xor cl, byte [edi + 0x1b]
movsx edx, cl
xor edx, esi
and edx, 0xff
mov edx, dword [ebx + edx*4]
shr esi, 8
xor edx, esi
mov esi, dword [eax + 8]
mov dword [eax], edx
movzx edx, dl
add edx, dword [eax + 4]
imul edx, edx, 0x8088405
inc edx
mov dword [eax + 4], edx
mov edi, dword [edi + 0x80014]
sar edx, 0x18
xor edx, esi
shr esi, 8
and edx, 0xff
xor esi, dword [edi + edx*4]
pop edi
mov dword [eax + 8], esi
mov eax, dword [esp + 0xc]
test byte [eax + 8], 8
pop esi
pop ebx
je 0x419eab
mov al, byte [eax + 0xd]
xor edx, edx
cmp cl, al
sete dl
mov al, dl
ret 8
mov al, byte [eax + 0x13]
xor edx, edx
cmp cl, al
sete dl
mov al, dl
ret 8

Function at 0x419ec0
Capabilities:
Encode data using xor
Generate random numbers using the delphi lcg

Disassembly:
push ebp
push edi
xor edi, edi
cmp dword [esp + 0x14], edi
mov ebp, ecx
jle 0x419f4e
push ebx
mov ebx, dword [esp + 0x14]
push esi
mov esi, dword [esp + 0x14]
lea ebx, [ebx]
mov ax, word [esi + 8]
or ax, 2
movzx eax, ax
mov ecx, eax
xor ecx, 1
imul ecx, eax
sar ecx, 8
xor byte [edi + ebx], cl
mov cl, byte [edi + ebx]
mov eax, dword [esi]
movsx edx, cl
mov ecx, dword [ebp + 0x80014]
xor edx, eax
shr eax, 8
and edx, 0xff
mov edx, dword [ecx + edx*4]
xor edx, eax
movzx eax, dl
add eax, dword [esi + 4]
mov dword [esi], edx
mov edx, dword [esi + 8]
imul eax, eax, 0x8088405
inc eax
mov dword [esi + 4], eax
mov ecx, dword [ebp + 0x80014]
sar eax, 0x18
xor eax, edx
and eax, 0xff
shr edx, 8
xor edx, dword [ecx + eax*4]
inc edi
cmp edi, dword [esp + 0x1c]
mov dword [esi + 8], edx
jl 0x419ee0
pop esi
pop ebx
pop edi
pop ebp
ret 0x10
Function at 0x425510
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x557b1c
mov eax, dword fs:[0]
push eax
sub esp, 0x40
push esi
push edi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x4c]
mov dword fs:[0], eax
mov esi, ecx
lea eax, [esp + 0x5c]
push eax
lea ecx, [esi + 8]
mov dword [esp + 0x58], 0
call fcn.004252b0
lea ecx, [esp + 0x10]
push ecx
mov ecx, esi
call dword [sym.imp.QtCore4.dll_public:_class_QEasingCurve___thiscall_QVariantAnimation::easingCurve_void_]
mov edi, eax
mov ecx, esi
mov byte [esp + 0x54], 1
call dword [sym.imp.QtCore4.dll_public:_int___thiscall_QAbstractAnimation::currentTime_void_const]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
mov ecx, esi
fstp qword [esp + 0x14]
call dword [sym.imp.QtCore4.dll_public:_int___thiscall_QAbstractAnimation::totalDuration_void_const]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
sub esp, 8
mov ecx, edi
fdivr qword [esp + 0x1c]
fstp qword [esp]
call dword [sym.imp.QtCore4.dll_public:_double___thiscall_QEasingCurve::valueForProgress_double_const]
fstp qword [esp + 0x14]
lea ecx, [esp + 0x10]
mov byte [esp + 0x54], 0
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QEasingCurve::destructor_void_]
mov edi, dword [sym.imp.QtCore4.dll_public:_void___thiscall_QVariant::constructor_int_]
push 0
lea ecx, [esp + 0x30]
call edi
push 0
lea ecx, [esp + 0x20]
mov byte [esp + 0x58], 2
call edi
fld qword [esp + 0x14]
mov edx, dword [esi]
mov edx, dword [edx + 0x40]
sub esp, 8
fstp qword [esp]
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x28]
push ecx
lea eax, [esp + 0x4c]
push eax
mov ecx, esi
mov byte [esp + 0x68], 3
call edx
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0x3c]
mov ecx, esi
mov byte [esp + 0x58], 4
call eax
mov esi, dword [sym.imp.QtCore4.dll_public:_void___thiscall_QVariant::destructor_void_]
lea ecx, [esp + 0x3c]
mov byte [esp + 0x54], 3
call esi
lea ecx, [esp + 0x1c]
mov byte [esp + 0x54], 2
call esi
lea ecx, [esp + 0x2c]
mov byte [esp + 0x54], 0
call esi
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x54], 0xffffffff
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x42565f
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0xc]
lea edx, [eax + ecx*4 + 0x14]
mov ecx, dword [eax + 8]
push edx
lea edx, [eax + ecx*4 + 0x14]
push edx
lea ecx, [esp + 0x64]
mov esi, eax
call fcn.00422f10
push esi
call dword [sym.imp.QtCore4.dll_void___cdecl_qFree_void__]
add esp, 4
mov ecx, dword [esp + 0x4c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x4c
ret 4
Function at 0x4339a0
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
push 0xffffffffffffffff
push 0x55981c
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x10], esi
push 0
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QObject::constructor_class_QObject__]
lea ecx, [esi + 8]
mov dword [esp + 0x1c], 0
mov dword [esi], vtable.Log4Qt::Logger.0
call fcn.00435b20
mov ebx, 1
push ebx
lea ecx, [esi + 0xc]
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QReadWriteLock::constructor_enum_QReadWriteLock::RecursionMode_]
mov eax, dword [esp + 0x2c]
lea edi, [esi + 0x10]
push eax
mov ecx, edi
mov byte [esp + 0x20], bl
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QString::constructor_class_QString_const__]
mov ecx, dword [esp + 0x24]
mov dword [esi + 0x14], ecx
mov byte [esi + 0x18], bl
mov edx, dword [sym.imp.QtCore4.dll_struct_QListData::Data_QListData::shared_null]
mov dword [esi + 0x1c], edx
mov eax, edx
lock xadd dword [eax], ebx
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov dword [esi + 0x20], ecx
push edi
mov ecx, esi
mov byte [esp + 0x20], 3
mov dword [esi + 0x24], edx
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QObject::setObjectName_class_QString_const__]
mov eax, esi
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x10
ret 0x10
Function at 0x43ba70
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
push 0xffffffffffffffff
push 0x55a697
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push ebp
push esi
push edi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x18]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x14], esi
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
mov dword [esi + 4], ecx
push edx
lea ecx, [esi + 8]
mov dword [esi], eax
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QString::constructor_class_QString_const__]
lea eax, [esi + 0xc]
push eax
mov dword [esp + 0x24], 0
call fcn.00448110
lea ecx, [esi + 0x10]
push ecx
mov byte [esp + 0x28], 1
call fcn.00447cd0
mov byte [esp + 0x28], 2
call fcn.0043b720
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov edx, dword [sym.imp.QtCore4.dll_struct_QString::Data_QString::shared_null]
mov dword [esi + 0x20], edx
mov eax, edx
mov ecx, 1
lock xadd dword [eax], ecx
lea edx, [esp + 0x30]
push edx
mov byte [esp + 0x2c], 3
call fcn.0043b570
add esp, 0xc
mov edi, eax
lea eax, [esp + 0x30]
push eax
mov ecx, edi
mov byte [esp + 0x24], 4
call dword [sym.imp.QtCore4.dll_public:_class_QTime___thiscall_QDateTime::time_void_]
mov ecx, eax
call dword [sym.imp.QtCore4.dll_public:_int___thiscall_QTime::msec_void_const]
cdq
mov ecx, edi
mov ebp, eax
mov ebx, edx
call dword [sym.imp.QtCore4.dll_public:_unsigned_int___thiscall_QDateTime::toTime_t_void_const]
mov ecx, 0x3e8
mul ecx
add eax, ebp
adc edx, ebx
lea ecx, [esp + 0x28]
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov byte [esp + 0x20], 3
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QDateTime::destructor_void_]
mov ecx, esi
call fcn.0043b490
mov eax, esi
mov ecx, dword [esp + 0x18]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0xc

Function at 0x43c3d0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x55bde9
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0xc]
mov dword fs:[0], eax
mov esi, ecx
lea eax, [esi + 0x10]
push eax
lea ecx, [esp + 0xc]
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QMutexLocker::constructor_class_QMutex__]
mov edx, dword [esi]
mov eax, dword [edx + 0x30]
mov ecx, esi
mov dword [esp + 0x14], 0
call eax
mov ecx, dword [esp + 8]
mov esi, eax
mov dword [esp + 0x14], 0xffffffff
test cl, 1
je 0x43c438
and ecx, 0xfffffffe
mov dword [esp + 8], ecx
and ecx, 0xfffffffe
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QMutex::unlockInline_void_]
mov eax, esi
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x10
ret
Function at 0x4419f0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x55dd11
mov eax, dword fs:[0]
push eax
sub esp, 8
push esi
push edi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov edi, ecx
mov ecx, dword [edi]
push 4
call dword [sym.imp.QtCore4.dll_public:_void____thiscall_QHashData::allocateNode_int_]
mov esi, eax
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x1c], 1
test esi, esi
je 0x441a62
mov eax, dword [esp + 0x28]
push eax
lea ecx, [esi + 8]
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QString::constructor_class_QString_const__]
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx]
mov dword [esi + 0xc], eax
test eax, eax
je 0x441a5e
add eax, 8
mov edx, 1
lock xadd dword [eax], edx
mov eax, esi
jmp 0x441a64
xor eax, eax
mov ecx, dword [esp + 0x24]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx]
mov dword [eax], edx
mov dword [ecx], eax
mov ecx, dword [edi]
inc dword [ecx + 0xc]
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x14
ret 0x10
Function at 0x446a80
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push 0xffffffffffffffff
push 0x55a8b8
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 8], esi
mov eax, dword [esp + 0x20]
push eax
push 0
call fcn.00448360
mov ecx, dword [esp + 0x1c]
push ecx
mov dword [esi], vtable.Log4Qt::WriterAppender.0
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
mov ecx, esi
mov dword [esp + 0x18], 0
mov byte [esi + 0x30], 1
call fcn.0043c810
mov eax, esi
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x10
ret 8

Function at 0x446cf0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x55be2a
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push esi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x28]
mov dword fs:[0], eax
mov esi, ecx
lea eax, [esi + 0x10]
push eax
lea ecx, [esp + 0xc]
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QMutexLocker::constructor_class_QMutex__]
cmp dword [esi + 0x2c], 0
mov dword [esp + 0x30], 0
mov ecx, esi
jne 0x446dc0
mov edx, dword [esi]
mov eax, dword [edx]
call eax
mov eax, dword [eax + 4]
push 0
push eax
push str.APPENDER_ACTIVATE_MISSING_WRITER_ERROR
push 2
push str.Activation_of_Appender__1_that_requires_writer_and_has_no_writer_set
lea ecx, [esp + 0x24]
call fcn.0044b050
mov edx, dword [esi]
mov edx, dword [edx + 0x34]
lea eax, [esp + 0xc]
push eax
mov ecx, esi
mov byte [esp + 0x34], 1
call edx
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x34], 2
call fcn.00440130
mov eax, dword [esp + 0xc]
mov byte [esp + 0x30], 1
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x446d9b
mov edx, dword [esp + 0xc]
push edx
call dword [sym.imp.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__]
add esp, 4
lea eax, [esp + 0x10]
push eax
push esi
lea ecx, [esi + 0xc]
call fcn.00435b30
mov ecx, eax
call fcn.0043ff30
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call fcn.0043d1e0
jmp 0x446dc5
call fcn.004485d0
mov ecx, dword [esp + 8]
mov dword [esp + 0x30], 0xffffffff
test cl, 1
je 0x446de6
and ecx, 0xfffffffe
mov dword [esp + 8], ecx
and ecx, 0xfffffffe
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QMutex::unlockInline_void_]
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x2c
ret
Function at 0x4485d0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x55be2a
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push esi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x28]
mov dword fs:[0], eax
mov esi, ecx
lea eax, [esi + 0x10]
push eax
lea ecx, [esp + 0xc]
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QMutexLocker::constructor_class_QMutex__]
mov edx, dword [esi]
mov eax, dword [edx + 0x3c]
mov ecx, esi
mov dword [esp + 0x30], 0
call eax
test al, al
je 0x4486b8
mov edx, dword [esi]
mov eax, dword [edx + 0x38]
mov ecx, esi
call eax
test eax, eax
jne 0x4486b8
mov edx, dword [esi]
mov eax, dword [edx]
mov ecx, esi
call eax
mov eax, dword [eax + 4]
push 0
push eax
push str.APPENDER_ACTIVATE_MISSING_LAYOUT_ERROR
push 1
push str.Activation_of_appender__1_that_requires_layout_and_has_no_layout_set
lea ecx, [esp + 0x24]
call fcn.0044b050
mov edx, dword [esi]
mov edx, dword [edx + 0x34]
lea eax, [esp + 0xc]
push eax
mov ecx, esi
mov byte [esp + 0x34], 1
call edx
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x34], 2
call fcn.00440130
mov eax, dword [esp + 0xc]
mov byte [esp + 0x30], 1
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x448693
mov edx, dword [esp + 0xc]
push edx
call dword [sym.imp.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__]
add esp, 4
lea eax, [esp + 0x10]
push eax
push esi
lea ecx, [esi + 0xc]
call fcn.00435b30
mov ecx, eax
call fcn.0043ff30
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call fcn.0043d1e0
jmp 0x4486bc
mov byte [esi + 0x15], 1
mov ecx, dword [esp + 8]
mov dword [esp + 0x30], 0xffffffff
test cl, 1
je 0x4486dd
and ecx, 0xfffffffe
mov dword [esp + 8], ecx
and ecx, 0xfffffffe
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QMutex::unlockInline_void_]
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x2c
ret
Function at 0x44aab0
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
push 0xffffffffffffffff
push 0x55c5fb
mov eax, dword fs:[0]
push eax
push ecx
push esi
push edi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x10]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0xc], esi
mov edi, dword [sym.imp.QtCore4.dll_private:_static_struct_QString::Data____cdecl_QString::fromLatin1_helper_char_const___int_]
push 0xffffffffffffffff
push str.CFlLM
mov dword [esi], vtable.Log4Qt::PatternFormatter.0
call edi
mov dword [esi + 4], eax
push 0xffffffffffffffff
push str.cdmprtxX
mov dword [esp + 0x28], 0
call edi
mov dword [esi + 8], eax
push 0xffffffffffffffff
push 0x5851ec
mov byte [esp + 0x30], 1
call edi
add esp, 0x18
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x20]
push eax
lea ecx, [esi + 0x10]
mov byte [esp + 0x1c], 2
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QString::constructor_class_QString_const__]
mov ecx, dword [sym.imp.QtCore4.dll_struct_QListData::Data_QListData::shared_null]
mov dword [esi + 0x14], ecx
mov edx, ecx
mov eax, 1
lock xadd dword [edx], eax
mov ecx, esi
mov byte [esp + 0x18], 4
call fcn.0044a480
mov eax, esi
mov ecx, dword [esp + 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x10
ret 4
Function at 0x44adb0
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
push 0xffffffffffffffff
push 0x55c6c2
mov eax, dword fs:[0]
push eax
sub esp, 0x28
push esi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x30]
mov dword fs:[0], eax
push 0
lea ecx, [esp + 0x10]
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QBuffer::constructor_class_QObject__]
push ecx
mov eax, esp
lea ecx, [esp + 0x10]
mov dword [esp + 0x3c], 0
mov dword [esp + 0xc], esp
mov dword [eax], 2
call dword [sym.imp.QtCore4.dll_public_virtual:_bool___thiscall_QBuffer::open_class_QFlags_enum_QIODevice::OpenModeFlag__]
lea eax, [esp + 0xc]
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QDataStream::constructor_class_QIODevice__]
push 0
lea ecx, [esp + 0x18]
mov byte [esp + 0x3c], 1
call dword [sym.imp.QtCore4.dll_public:_class_QDataStream____thiscall_QDataStream::operator___short_int_]
mov eax, dword [esp + 0x44]
lea ecx, [eax + 0x14]
push ecx
lea edx, [eax + 0x10]
push edx
lea ecx, [eax + 0xc]
push ecx
lea edx, [eax + 8]
push edx
mov edx, dword [eax]
lea ecx, [eax + 4]
push ecx
push edx
lea ecx, [esp + 0x2c]
call dword [sym.imp.QtCore4.dll_public:_class_QDataStream____thiscall_QDataStream::operator___int_]
mov esi, dword [sym.imp.QtCore4.dll_class_QDataStream____cdecl_operator___class_QDataStream___class_QString_const__]
push eax
call esi
add esp, 8
push eax
call esi
add esp, 8
push eax
call esi
add esp, 8
push eax
call fcn.0044ad50
add esp, 8
push eax
call fcn.0044aed0
add esp, 8
lea ecx, [esp + 0xc]
call dword [sym.imp.QtCore4.dll_public_virtual:_void___thiscall_QBuffer::close_void_]
lea ecx, [esp + 0xc]
call dword [sym.imp.QtCore4.dll_public:_class_QByteArray____thiscall_QBuffer::buffer_void_]
mov esi, dword [esp + 0x40]
push eax
push esi
call dword [sym.imp.QtCore4.dll_class_QDataStream____cdecl_operator___class_QDataStream___class_QByteArray_const__]
add esp, 8
lea ecx, [esp + 0x14]
mov byte [esp + 0x38], 0
call dword [sym.imp.QtCore4.dll_public_virtual:_void___thiscall_QDataStream::destructor_void_]
lea ecx, [esp + 0xc]
mov dword [esp + 0x38], 0xffffffff
call dword [sym.imp.QtCore4.dll_public_virtual:_void___thiscall_QBuffer::destructor_void_]
mov eax, esi
mov ecx, dword [esp + 0x30]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x34
ret
Function at 0x450070
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x55be2a
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push esi
mov eax, dword [0x63d20c]
xor eax, esp
push eax
lea eax, [esp + 0x28]
mov dword fs:[0], eax
mov esi, ecx
lea eax, [esi + 0x10]
push eax
lea ecx, [esp + 0xc]
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QMutexLocker::constructor_class_QMutex__]
mov ecx, dword [esi + 0x38]
cmp dword [ecx + 8], 0
mov dword [esp + 0x30], 0
mov ecx, esi
jne 0x450143
mov edx, dword [esi]
mov eax, dword [edx]
call eax
mov eax, dword [eax + 4]
push 0
push eax
push str.APPENDER_ACTIVATE_MISSING_FILE_ERROR
push 3
push str.Activation_of_Appender__1_that_requires_file_and_has_no_file_set
lea ecx, [esp + 0x24]
call fcn.0044b050
mov edx, dword [esi]
mov edx, dword [edx + 0x34]
lea eax, [esp + 0xc]
push eax
mov ecx, esi
mov byte [esp + 0x34], 1
call edx
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x34], 2
call fcn.00440130
mov eax, dword [esp + 0xc]
mov byte [esp + 0x30], 1
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x45011e
mov edx, dword [esp + 0xc]
push edx
call dword [sym.imp.QtCore4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data__]
add esp, 4
lea eax, [esp + 0x10]
push eax
push esi
lea ecx, [esi + 0xc]
call fcn.00435b30
mov ecx, eax
call fcn.0043ff30
lea ecx, [esp + 0x10]
mov byte [esp + 0x30], 0
call fcn.0043d1e0
jmp 0x450156
call fcn.0044eeb0
mov ecx, esi
call fcn.0044f890
mov ecx, esi
call fcn.00446cf0
mov ecx, dword [esp + 8]
mov dword [esp + 0x30], 0xffffffff
test cl, 1
je 0x450177
and ecx, 0xfffffffe
mov dword [esp + 8], ecx
and ecx, 0xfffffffe
call dword [sym.imp.QtCore4.dll_public:_void___thiscall_QMutex::unlockInline_void_]
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop esi
add esp, 0x2c
ret
Function at 0x452b20
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebx
push ebp
push esi
push edi
xor ebx, ebx
mov esi, dword [esp + 0x14]
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov byte [esi + 0x18], bl
mov byte [esi + 0x19], bl
mov byte [esi + 0x1a], bl
mov dword [esi + 0x24], ebx
mov dword [esi + 0x28], ebx
mov byte [esi + 0x2c], bl
mov byte [esi + 0x2d], bl
mov dword [esi + 0x30], ebx
mov dword [esi + 0x34], ebx
mov dword [esi + 0x38], ebx
mov dword [esi + 0x3c], ebx
mov dword [esi + 0x40], ebx
mov dword [esi + 0x44], ebx
mov dword [esi + 0x48], ebx
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x50], ebx
mov dword [esi + 0x54], ebx
mov dword [esi + 0x58], ebx
mov dword [esi + 0x5c], ebx
mov dword [esi + 0x60], ebx
mov dword [esi + 0x64], ebx
mov dword [esi + 0x68], ebx
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x70], ebx
mov dword [esi + 0x74], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x80], ebx
or eax, 0xffffffff
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov byte [esi + 0x8c], bl
mov dword [esi + 0x90], ebx
mov dword [esi + 0x94], ebx
mov dword [esi + 0x98], ebx
mov dword [esi + 0x9c], ebx
mov dword [esi + 0xa0], ebx
mov dword [esi + 0xa4], ebx
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xac], ebx
mov ecx, 0x17
mov dword [esi + 0xb0], eax
mov dword [esi + 0xe4], eax
mov dword [esi + 0xe8], eax
mov dword [esi + 0xc8], eax
mov dword [esi + 0xcc], eax
mov dword [esi + 0xd0], eax
mov dword [esi + 0xd4], eax
mov dword [esi + 0xd8], eax
xor ebp, ebp
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb8], ecx
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xc0], ecx
mov dword [esi + 0xdc], ebx
mov dword [esi + 0xe0], ebx
mov dword [esi + 0xec], 0x4b0
mov dword [esi + 0xc4], ebx
xor eax, eax
lea edi, [esi + 0xf4]
lea ebx, [ebx]
mov ecx, dword [eax*4 + 0x58c068]
mov edx, dword [ecx*4 + 0x5ad4c0]
shr edx, 9
test dl, 1
jne 0x452c6c
mov dword [edi], eax
inc ebp
add edi, 4
inc eax
cmp eax, 0x43
jl 0x452c50
push 0x10c
lea eax, [esi + 0x200]
push ebx
push eax
mov dword [esi + 0xf0], ebp
call sub.MSVCR90.dll_memset
push 0x10c
lea ecx, [esi + 0x30c]
push ebx
push ecx
call sub.MSVCR90.dll_memset
push 0x10c
lea edx, [esi + 0x418]
push ebx
push edx
call sub.MSVCR90.dll_memset
add esp, 0x24
pop edi
mov dword [esi + 0x524], ebx
mov dword [esi + 0x528], ebx
mov dword [esi + 0x52c], ebx
mov dword [esi + 0x530], ebx
pop esi
pop ebp
pop ebx
ret
Function at 0x456110
Capabilities:
Enumerate pe sections

Disassembly:
push ecx
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0xc]
push esi
push edi
lea edi, [ecx + eax]
lea esi, [edi - 7]
cmp ecx, esi
jae 0x4561f4
push ebx
lea ebx, [ebx]
movzx eax, byte [ecx + 6]
mov byte [esp + 0xf], al
movzx eax, byte [ecx + 5]
mov byte [esp + 0xe], al
movzx eax, byte [ecx + 4]
mov byte [esp + 0xd], al
movzx eax, byte [ecx + 3]
mov bl, byte [ecx]
mov byte [esp + 0xc], al
movzx eax, byte [ecx + 2]
mov byte [esp + 0x18], al
movzx eax, byte [ecx + 1]
mov byte [esp + 0x14], al
mov al, bl
inc bl
sub al, 0x20
or al, bl
movzx ebx, byte [esp + 0x14]
sub bl, 0x20
or al, bl
mov bl, byte [esp + 0x14]
inc bl
or al, bl
movzx ebx, byte [esp + 0x18]
sub bl, 0x20
or al, bl
mov bl, byte [esp + 0x18]
inc bl
or al, bl
movzx ebx, byte [esp + 0xc]
sub bl, 0x20
or al, bl
mov bl, byte [esp + 0xc]
inc bl
or al, bl
movzx ebx, byte [esp + 0xd]
sub bl, 0x20
or al, bl
mov bl, byte [esp + 0xd]
inc bl
or al, bl
movzx ebx, byte [esp + 0xe]
mov dl, byte [ecx + 7]
sub bl, 0x20
or al, bl
mov bl, byte [esp + 0xe]
inc bl
or al, bl
movzx ebx, byte [esp + 0xf]
sub bl, 0x20
or al, bl
mov bl, byte [esp + 0xf]
inc bl
or al, bl
mov bl, dl
sub bl, 0x20
or al, bl
inc dl
or al, dl
test al, al
js 0x4561f3
add ecx, 8
cmp ecx, esi
jb 0x456130
pop ebx
cmp ecx, edi
jae 0x45620b
mov al, byte [ecx]
movzx edx, al
inc ecx
cmp byte [edx + 0x5ad7f0], 0
je 0x456211
cmp ecx, edi
jb 0x4561f8
pop edi
mov al, 1
pop esi
pop ecx
ret
pop edi
xor al, al
pop esi
pop ecx
ret