joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4044f0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x210
mov eax, dword [0x485310]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, dword [ebp + 8]
push 0x20
call fcn.00423c35
mov esi, eax
mov byte [ebp - 8], 0
lea eax, [ebp - 0x208]
push eax
call fcn.00404e40
add esp, 8
test eax, eax
jne 0x40454f
push eax
push str.ERROR_
push str.Failed_to_save_the_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00424024
mov esp, ebp
pop ebp
ret
push ebx
push 0x46e280
lea eax, [ebp - 0x208]
push eax
lea eax, [ebp - 0x20c]
push eax
call fcn.0043644b
push str.__Index_____AxisX__________AxisY__________Position_____RotateX________RotateY________RotateZ________Scale_r_n
push dword [ebp - 0x20c]
call fcn.00401d70
push edi
push 1
lea eax, [ebp - 0x210]
push 4
push eax
call fcn.004369a9
xor ebx, ebx
add esp, 0x24
cmp dword [ebp - 0x210], ebx
jbe 0x404648
nop word [eax + eax]
push edi
push 0x20
push 1
push esi
call fcn.004369a9
push 0x20
push esi
call fcn.00423470
mov eax, dword [esi]
add esp, 0x18
cmp eax, 0x2000
ja 0x404648
movss xmm0, dword [esi + 0x1c]
sub esp, 0x38
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x30], xmm0
movss xmm0, dword [esi + 0x18]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x28], xmm0
movss xmm0, dword [esi + 0x14]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
movss xmm0, dword [esi + 0x10]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x18], xmm0
movss xmm0, dword [esi + 0xc]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x10], xmm0
movss xmm0, dword [esi + 8]
cvtps2pd xmm0, xmm0
movsd qword [esp + 8], xmm0
movss xmm0, dword [esi + 4]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push eax
push str._04d_________010.6f______010.6f______05.1f________010.6f______010.6f______010.6f______5.4f_r_n
push dword [ebp - 0x20c]
call fcn.00401d70
inc ebx
add esp, 0x44
cmp ebx, dword [ebp - 0x210]
jb 0x4045a0
push 0x46e258
push dword [ebp - 0x20c]
call fcn.00401d70
push dword [ebp - 0x20c]
call fcn.00436555
push esi
call fcn.004243b7
add esp, 0x10
push 0
push str.NOTICE_
push str.File_saved_successfully_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [ebp - 4]
pop ebx
pop edi
xor ecx, ebp
pop esi
call fcn.00424024
mov esp, ebp
pop ebp
ret
Function at 0x405000
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46cf3b
mov eax, dword fs:[0]
push eax
sub esp, 0x110
mov eax, dword [0x485310]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
push 0xa8000
call fcn.00423c35
mov esi, eax
mov dword [ebp - 0x118], esi
push edi
push 1
push 0xa8000
push esi
mov dword [ebp - 4], 0
call fcn.004369a9
push edi
push 1
lea eax, [ebp - 0x11c]
push 4
push eax
call fcn.004369a9
add esp, 0x24
mov edi, esi
mov ebx, 0x2000
push 0x54
push edi
call fcn.00423470
add esp, 8
add edi, 0x54
sub ebx, 1
jne 0x405073
lea eax, [ebp - 0x114]
push eax
call fcn.00404e40
add esp, 4
test eax, eax
jne 0x4050b2
push eax
push str.ERROR_
push str.Failed_to_save_the_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x4050c8
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.00405ec0
add esp, 8
test esi, esi
je 0x4050d5
push esi
call fcn.004243b7
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00424024
mov esp, ebp
pop ebp
ret

Function at 0x406090
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
mov esi, dword [ebp + 0xc]
test esi, esi
jne 0x4060b8
push esi
push str.ERROR_
push str.Error_on_processing_the_item_class
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
mov esp, ebp
pop ebp
ret
push 0x46e280
push dword [ebp + 8]
lea eax, [ebp + 0xc]
push eax
call fcn.0043644b
add esp, 0xc
test eax, eax
je 0x4060ed
push 0
push str.ERROR_
push str.Could_not_open_save_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
mov esp, ebp
pop ebp
ret
push 0xe2f1
push 0xa8000
push dword [esi]
call fcn.00422b60
push dword [ebp + 0xc]
mov dword [ebp - 4], eax
push 1
push 0xa8000
push dword [esi]
call fcn.00436dba
push dword [ebp + 0xc]
lea eax, [ebp - 4]
push 1
push 4
push eax
call fcn.00436dba
push dword [ebp + 0xc]
call fcn.00436555
add esp, 0x30
push 0
push str.NOTICE_
push str.File_saved_successfully_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x407290
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46d03b
mov eax, dword fs:[0]
push eax
sub esp, 0x220
mov eax, dword [0x485310]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x21c]
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 0
call fcn.00408f20
mov dword [ebp - 0x21c], eax
lea ecx, [ebp - 0x21c]
mov dword [ebp - 4], 0
call fcn.00409390
push edi
push 1
lea eax, [ebp - 0x220]
mov dword [ebp - 0x220], 0
push 4
push eax
call fcn.004369a9
mov eax, dword [ebp - 0x220]
add esp, 0x10
test eax, eax
jne 0x40733b
push eax
push str.ERROR_
push str.ItemData_count___0_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x407422
xor ecx, ecx
mov edx, 0x26c
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00423c35
imul ecx, dword [ebp - 0x220], 0x26c
mov esi, eax
push ecx
push 0
push esi
call fcn.004255e0
imul ecx, dword [ebp - 0x220], 0x26c
push edi
push 1
push ecx
push esi
call fcn.004369a9
push edi
push 1
lea eax, [ebp - 0x22c]
push 4
push eax
call fcn.004369a9
xor edi, edi
add esp, 0x30
cmp dword [ebp - 0x220], edi
jle 0x4073d9
nop dword [eax + eax]
push 0x26c
push esi
call fcn.00423470
add esp, 8
lea eax, [ebp - 0x228]
lea ecx, [ebp - 0x21c]
push esi
push eax
call fcn.00406f70
mov eax, dword [ebp - 0x228]
inc edi
mov dword [eax + 0x14], esi
add esi, 0x26c
cmp edi, dword [ebp - 0x220]
jl 0x4073a0
lea eax, [ebp - 0x214]
mov byte [ebp - 0x14], 0
push eax
call fcn.00404e40
add esp, 4
test eax, eax
jne 0x407409
push eax
push str.ERROR_
push str.Failed_to_save_the_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x407422
push dword [ebp + 0xc]
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.00408360
add esp, 0xc
mov eax, dword [ebp - 0x21c]
lea ecx, [ebp - 0x21c]
push eax
push dword [eax]
lea eax, [ebp - 0x224]
push eax
call fcn.004094f0
push dword [ebp - 0x21c]
call fcn.00423c22
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00424024
mov esp, ebp
pop ebp
ret
Function at 0x4087f0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
cmp eax, dword [ebx + 4]
je 0x40891a
push 0x46e280
push dword [ebp + 8]
lea eax, [ebp - 8]
push eax
call fcn.0043644b
add esp, 0xc
test eax, eax
je 0x40883a
push 0
push str.ERROR_
push str.Could_not_open_save_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 4]
mov eax, 0x1a6d01a7
sub ecx, dword [ebx]
imul ecx
xor ecx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x26c
mov dword [ebp - 4], eax
mul edx
push esi
push edi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00423c35
mov edx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [ebp - 0xc], esi
xor eax, eax
cmp edx, dword [ebx + 4]
je 0x4088ac
mov ebx, esi
nop
cmp eax, dword [ebp - 4]
jge 0x40891f
mov esi, edx
mov edi, ebx
mov ecx, 0x9b
add edx, 0x26c
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 0xc]
inc eax
add ebx, 0x26c
cmp edx, dword [ecx + 4]
jne 0x408880
mov esi, dword [ebp - 0xc]
imul eax, dword [ebp - 4], 0x26c
push 0xe2f1
push eax
push esi
call fcn.00422b60
push dword [ebp - 8]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 4]
push 1
push 4
push eax
call fcn.00436dba
push dword [ebp - 8]
imul eax, dword [ebp - 4], 0x26c
push 1
push eax
push esi
call fcn.00436dba
push dword [ebp - 8]
lea eax, [ebp - 0x10]
push 1
push 4
push eax
call fcn.00436dba
push dword [ebp - 8]
call fcn.00436555
add esp, 0x40
push 0
push str.NOTICE_
push str.File_saved_successfully_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
push str.ERROR_
push str.Error_in_itemdata_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x40a1c0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46d17b
mov eax, dword fs:[0]
push eax
sub esp, 0x220
mov eax, dword [0x485310]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x21c]
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 0
call fcn.0040bb10
mov dword [ebp - 0x21c], eax
lea ecx, [ebp - 0x21c]
mov dword [ebp - 4], 0
call fcn.0040be10
push edi
push 1
lea eax, [ebp - 0x220]
mov dword [ebp - 0x220], 0
push 4
push eax
call fcn.004369a9
mov eax, dword [ebp - 0x220]
add esp, 0x10
test eax, eax
jne 0x40a26b
push eax
push str.ERROR_
push str.ItemData_count___0_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40a352
xor ecx, ecx
mov edx, 0x274
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00423c35
imul ecx, dword [ebp - 0x220], 0x274
mov esi, eax
push ecx
push 0
push esi
call fcn.004255e0
imul ecx, dword [ebp - 0x220], 0x274
push edi
push 1
push ecx
push esi
call fcn.004369a9
push edi
push 1
lea eax, [ebp - 0x22c]
push 4
push eax
call fcn.004369a9
xor edi, edi
add esp, 0x30
cmp dword [ebp - 0x220], edi
jle 0x40a309
nop dword [eax + eax]
push 0x274
push esi
call fcn.00423470
add esp, 8
lea eax, [ebp - 0x228]
lea ecx, [ebp - 0x21c]
push esi
push eax
call fcn.0040a010
mov eax, dword [ebp - 0x228]
inc edi
mov dword [eax + 0x14], esi
add esi, 0x274
cmp edi, dword [ebp - 0x220]
jl 0x40a2d0
lea eax, [ebp - 0x214]
mov byte [ebp - 0x14], 0
push eax
call fcn.00404e40
add esp, 4
test eax, eax
jne 0x40a339
push eax
push str.ERROR_
push str.Failed_to_save_the_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40a352
push dword [ebp + 0xc]
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.0040b2b0
add esp, 0xc
mov eax, dword [ebp - 0x21c]
lea ecx, [ebp - 0x21c]
push eax
push dword [eax]
lea eax, [ebp - 0x224]
push eax
call fcn.0040bef0
push dword [ebp - 0x21c]
call fcn.00423c22
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00424024
mov esp, ebp
pop ebp
ret
Function at 0x40b760
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
cmp eax, dword [ebx + 4]
je 0x40b88a
push 0x46e280
push dword [ebp + 8]
lea eax, [ebp - 8]
push eax
call fcn.0043644b
add esp, 0xc
test eax, eax
je 0x40b7aa
push 0
push str.ERROR_
push str.Could_not_open_save_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 4]
mov eax, 0x342da7f3
sub ecx, dword [ebx]
imul ecx
xor ecx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, 0x274
mov dword [ebp - 4], eax
mul edx
push esi
push edi
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00423c35
mov edx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [ebp - 0xc], esi
xor eax, eax
cmp edx, dword [ebx + 4]
je 0x40b81c
mov ebx, esi
nop
cmp eax, dword [ebp - 4]
jge 0x40b88f
mov esi, edx
mov edi, ebx
mov ecx, 0x9d
add edx, 0x274
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 0xc]
inc eax
add ebx, 0x274
cmp edx, dword [ecx + 4]
jne 0x40b7f0
mov esi, dword [ebp - 0xc]
imul eax, dword [ebp - 4], 0x274
push 0xe2f1
push eax
push esi
call fcn.00422b60
push dword [ebp - 8]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 4]
push 1
push 4
push eax
call fcn.00436dba
push dword [ebp - 8]
imul eax, dword [ebp - 4], 0x274
push 1
push eax
push esi
call fcn.00436dba
push dword [ebp - 8]
lea eax, [ebp - 0x10]
push 1
push 4
push eax
call fcn.00436dba
push dword [ebp - 8]
call fcn.00436555
add esp, 0x40
push 0
push str.NOTICE_
push str.File_saved_successfully_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
push str.ERROR_
push str.Error_in_itemdata_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x40c250
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46d21b
mov eax, dword fs:[0]
push eax
sub esp, 0x65c
mov eax, dword [0x485310]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor esi, esi
xor edi, edi
mov dword [ebp - 0x664], eax
mov dword [ebp - 0x65c], edi
mov dword [ebp - 0x660], esi
mov dword [ebp - 0x654], esi
push eax
push 1
lea eax, [ebp - 0x650]
mov dword [ebp - 4], esi
push 0x3b
xor ebx, ebx
push eax
mov dword [ebp - 0x658], ebx
call fcn.004369a9
add esp, 0x10
test eax, eax
je 0x40c3f0
lea eax, [ebp - 0x650]
push 0x3b
push eax
call fcn.00423470
push 0x400
lea eax, [ebp - 0x615]
push 0
push eax
call fcn.004255e0
push dword [ebp - 0x664]
movzx eax, word [ebp - 0x617]
push 1
push eax
lea eax, [ebp - 0x615]
push eax
call fcn.004369a9
movzx eax, word [ebp - 0x617]
push eax
lea eax, [ebp - 0x615]
push eax
call fcn.00423470
lea eax, [ebp - 0x650]
add esp, 0x2c
cmp eax, ebx
jae 0x40c37e
cmp edi, eax
ja 0x40c37e
mov ecx, eax
mov eax, 0x1e41b6b9
sub ecx, edi
imul ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x668], eax
cmp ebx, esi
jne 0x40c370
push 1
lea ecx, [ebp - 0x65c]
call fcn.0040cd80
mov eax, dword [ebp - 0x654]
mov ebx, dword [ebp - 0x658]
mov edi, dword [ebp - 0x65c]
mov dword [ebp - 0x660], eax
mov eax, dword [ebp - 0x668]
test ebx, ebx
je 0x40c3b7
imul esi, eax, 0x43b
add esi, edi
jmp 0x40c3ab
cmp ebx, esi
jne 0x40c3a1
push 1
lea ecx, [ebp - 0x65c]
call fcn.0040cd80
mov eax, dword [ebp - 0x654]
mov ebx, dword [ebp - 0x658]
mov dword [ebp - 0x660], eax
test ebx, ebx
je 0x40c3b7
lea esi, [ebp - 0x650]
mov ecx, 0x10e
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
push dword [ebp - 0x664]
lea eax, [ebp - 0x650]
add ebx, 0x43b
push 1
push 0x3b
push eax
mov dword [ebp - 0x658], ebx
call fcn.004369a9
mov edi, dword [ebp - 0x65c]
add esp, 0x10
mov esi, dword [ebp - 0x660]
test eax, eax
jne 0x40c2c4
lea eax, [ebp - 0x214]
mov byte [ebp - 0x14], 0
push eax
call fcn.00404e40
add esp, 4
test eax, eax
jne 0x40c439
push eax
push str.ERROR_
push str.Failed_to_save_the_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
test edi, edi
je 0x40c47f
sub esi, edi
mov eax, 0x1e41b6b9
imul esi
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push edi
jmp 0x40c474
lea eax, [ebp - 0x65c]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.0040cb40
mov esi, dword [ebp - 0x65c]
add esp, 8
test esi, esi
je 0x40c47f
mov ecx, dword [ebp - 0x654]
mov eax, 0x1e41b6b9
sub ecx, esi
imul ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push esi
lea ecx, [ebp - 0x65c]
call fcn.0040ce90
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00424024
mov esp, ebp
pop ebp
ret
Function at 0x40cc30
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
cmp eax, dword [ebx + 4]
je 0x40ccec
push 0x46e280
push dword [ebp + 8]
lea eax, [ebp - 4]
push eax
call fcn.0043644b
add esp, 0xc
test eax, eax
je 0x40cc78
push 0
push str.ERROR_
push str.Could_not_open_save_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop ebx
mov esp, ebp
pop ebp
ret
push esi
mov esi, dword [ebx]
cmp esi, dword [ebx + 4]
je 0x40ccc8
lea ebx, [esi + 0x3b]
push edi
movzx edi, word [ebx - 2]
push 0x3b
push esi
call fcn.00423470
push edi
push ebx
call fcn.00423470
push dword [ebp - 4]
push 0x3b
push 1
push esi
call fcn.00436dba
push dword [ebp - 4]
push edi
push 1
push ebx
call fcn.00436dba
mov eax, dword [ebp + 0xc]
add esi, 0x43b
add esp, 0x30
add ebx, 0x43b
cmp esi, dword [eax + 4]
jne 0x40cc84
pop edi
push dword [ebp - 4]
call fcn.00436555
add esp, 4
push 0
push str.NOTICE_
push str.File_saved_successfully_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x40cf30
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46d29b
mov eax, dword fs:[0]
push eax
sub esp, 0x65c
mov eax, dword [0x485310]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor esi, esi
xor edi, edi
mov dword [ebp - 0x664], eax
mov dword [ebp - 0x65c], edi
mov dword [ebp - 0x660], esi
mov dword [ebp - 0x654], esi
push eax
push 1
lea eax, [ebp - 0x650]
mov dword [ebp - 4], esi
push 0x35
xor ebx, ebx
push eax
mov dword [ebp - 0x658], ebx
call fcn.004369a9
add esp, 0x10
test eax, eax
je 0x40d0ce
lea eax, [ebp - 0x650]
push 0x35
push eax
call fcn.00423470
push 0x404
lea eax, [ebp - 0x61b]
push 0
push eax
call fcn.004255e0
push dword [ebp - 0x664]
movzx eax, word [ebp - 0x61d]
push 1
push eax
lea eax, [ebp - 0x61b]
push eax
call fcn.004369a9
movzx eax, word [ebp - 0x61d]
push eax
lea eax, [ebp - 0x61b]
push eax
call fcn.00423470
lea eax, [ebp - 0x650]
add esp, 0x2c
cmp eax, ebx
jae 0x40d05e
cmp edi, eax
ja 0x40d05e
mov ecx, eax
mov eax, 0x79402d79
sub ecx, edi
imul ecx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x668], eax
cmp ebx, esi
jne 0x40d050
push 1
lea ecx, [ebp - 0x65c]
call fcn.0040da60
mov eax, dword [ebp - 0x654]
mov ebx, dword [ebp - 0x658]
mov edi, dword [ebp - 0x65c]
mov dword [ebp - 0x660], eax
mov eax, dword [ebp - 0x668]
test ebx, ebx
je 0x40d095
imul esi, eax, 0x439
add esi, edi
jmp 0x40d08b
cmp ebx, esi
jne 0x40d081
push 1
lea ecx, [ebp - 0x65c]
call fcn.0040da60
mov eax, dword [ebp - 0x654]
mov ebx, dword [ebp - 0x658]
mov dword [ebp - 0x660], eax
test ebx, ebx
je 0x40d095
lea esi, [ebp - 0x650]
mov ecx, 0x10e
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
push dword [ebp - 0x664]
lea eax, [ebp - 0x650]
add ebx, 0x439
push 1
push 0x35
push eax
mov dword [ebp - 0x658], ebx
call fcn.004369a9
mov edi, dword [ebp - 0x65c]
add esp, 0x10
mov esi, dword [ebp - 0x660]
test eax, eax
jne 0x40cfa4
lea eax, [ebp - 0x214]
mov byte [ebp - 0x14], 0
push eax
call fcn.00404e40
add esp, 4
test eax, eax
jne 0x40d117
push eax
push str.ERROR_
push str.Failed_to_save_the_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
test edi, edi
je 0x40d15d
sub esi, edi
mov eax, 0x79402d79
imul esi
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push edi
jmp 0x40d152
lea eax, [ebp - 0x65c]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.0040d820
mov esi, dword [ebp - 0x65c]
add esp, 8
test esi, esi
je 0x40d15d
mov ecx, dword [ebp - 0x654]
mov eax, 0x79402d79
sub ecx, esi
imul ecx
sar edx, 9
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push esi
lea ecx, [ebp - 0x65c]
call fcn.0040db70
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00424024
mov esp, ebp
pop ebp
ret
Function at 0x40d910
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
cmp eax, dword [ebx + 4]
je 0x40d9cc
push 0x46e280
push dword [ebp + 8]
lea eax, [ebp - 4]
push eax
call fcn.0043644b
add esp, 0xc
test eax, eax
je 0x40d958
push 0
push str.ERROR_
push str.Could_not_open_save_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop ebx
mov esp, ebp
pop ebp
ret
push esi
mov esi, dword [ebx]
cmp esi, dword [ebx + 4]
je 0x40d9a8
lea ebx, [esi + 0x35]
push edi
movzx edi, word [ebx - 2]
push 0x35
push esi
call fcn.00423470
push edi
push ebx
call fcn.00423470
push dword [ebp - 4]
push 0x35
push 1
push esi
call fcn.00436dba
push dword [ebp - 4]
push edi
push 1
push ebx
call fcn.00436dba
mov eax, dword [ebp + 0xc]
add esi, 0x439
add esp, 0x30
add ebx, 0x439
cmp esi, dword [eax + 4]
jne 0x40d964
pop edi
push dword [ebp - 4]
call fcn.00436555
add esp, 4
push 0
push str.NOTICE_
push str.File_saved_successfully_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x40dbe0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46d31b
mov eax, dword fs:[0]
push eax
sub esp, 0x228
mov eax, dword [0x485310]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
lea eax, [ebp - 0x234]
push esi
push 1
push 6
push eax
mov dword [ebp - 0x21c], esi
call fcn.004369a9
mov ebx, dword [ebp - 0x232]
add esp, 0x10
cmp ebx, 0x270f
ja 0x40dd68
xor ecx, ecx
mov eax, ebx
mov edx, 0x204
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00423c35
mov edi, eax
mov dword [ebp - 0x22c], ebx
add esp, 4
mov dword [ebp - 0x228], edi
mov dword [ebp - 4], 0
test ebx, ebx
jle 0x40dd15
lea eax, [edi + 4]
mov dword [ebp - 0x218], eax
mov eax, edi
mov edi, dword [ebp - 0x218]
sub eax, edi
mov dword [ebp - 0x218], eax
nop
push esi
push 1
lea eax, [ebp - 0x224]
push 8
push eax
call fcn.004369a9
mov eax, dword [ebp - 0x220]
inc eax
push eax
call fcn.00423c35
mov ecx, dword [ebp - 0x220]
mov esi, eax
push dword [ebp - 0x21c]
mov byte [ecx + esi], 0
push dword [ebp - 0x220]
push 1
push esi
call fcn.004369a9
push dword [ebp - 0x220]
push esi
call fcn.00423470
mov ecx, dword [ebp - 0x218]
mov eax, dword [ebp - 0x224]
push esi
push 0x200
push edi
mov dword [ecx + edi], eax
call fcn.0042fb25
push esi
call fcn.004243b7
mov esi, dword [ebp - 0x21c]
add esp, 0x3c
add edi, 0x204
sub ebx, 1
jne 0x40dc90
mov edi, dword [ebp - 0x228]
lea eax, [ebp - 0x214]
mov byte [ebp - 0x14], 0
push eax
call fcn.00404e40
add esp, 4
test eax, eax
jne 0x40dd45
push eax
push str.ERROR_
push str.Failed_to_save_the_file_
push dword [0x48f0a0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40dd5b
lea eax, [ebp - 0x22c]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.0040e250
add esp, 8
test edi, edi
je 0x40dd68
push edi
call fcn.004243b7
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00424024
mov esp, ebp
pop ebp
ret