joyce8/EMBER2024-capa huggingface dataset:
Function at 0x401000
Capabilities:
Check for software breakpoints

Disassembly:
push esi
mov esi, dword [esp + 8]
cmp dword [esi + 0x14], 0xca
jne 0x401030
push esi
call fcn.00401c70
mov al, byte [esi + 0x40]
add esp, 4
test al, al
je 0x401029
mov dword [esi + 0x14], 0xcf
mov al, 1
pop esi
ret
mov dword [esi + 0x14], 0xcb
mov eax, dword [esi + 0x14]
cmp eax, 0xcb
jne 0x4010b3
mov eax, dword [esi + 0x190]
mov cl, byte [eax + 0x10]
test cl, cl
je 0x40109f
mov eax, dword [esi + 8]
test eax, eax
je 0x401054
push esi
call dword [eax]
add esp, 4
mov ecx, dword [esi + 0x190]
push esi
call dword [ecx]
add esp, 4
test eax, eax
je 0x40109b
cmp eax, 2
je 0x40109f
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x401047
cmp eax, 3
je 0x40107a
cmp eax, 1
jne 0x401047
mov eax, dword [ecx + 4]
inc eax
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
cmp edx, ecx
jl 0x401047
mov edx, dword [esi + 0x11c]
add edx, ecx
mov dword [eax + 8], edx
jmp 0x401047
xor al, al
pop esi
ret
mov eax, dword [esi + 0x7c]
push esi
mov dword [esi + 0x84], eax
call fcn.004010e0
add esp, 4
pop esi
ret
cmp eax, 0xcc
je 0x4010d3
mov ecx, dword [esi]
push esi
mov dword [ecx + 0x14], 0x14
mov edx, dword [esi]
mov eax, dword [esi + 0x14]
mov dword [edx + 0x18], eax
mov ecx, dword [esi]
call dword [ecx]
add esp, 4
push esi
call fcn.004010e0
add esp, 4
pop esi
ret

Function at 0x4012d0
Capabilities:
Read file on windows

Disassembly:
push esi
push edi
mov edi, dword [esp + 0xc]
mov esi, dword [edi + 0x18]
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x20]
push eax
push 0x1000
push 1
push ecx
call fcn.00495739
add esp, 0x10
test eax, eax
ja 0x401332
mov al, byte [esi + 0x24]
test al, al
je 0x40130c
mov edx, dword [edi]
push edi
mov dword [edx + 0x14], 0x2a
mov eax, dword [edi]
call dword [eax]
add esp, 4
mov ecx, dword [edi]
push 0xffffffffffffffff
push edi
mov dword [ecx + 0x14], 0x78
mov edx, dword [edi]
call dword [edx + 4]
mov eax, dword [esi + 0x20]
add esp, 8
mov byte [eax], 0xff
mov ecx, dword [esi + 0x20]
mov eax, 2
mov byte [ecx + 1], 0xd9
mov edx, dword [esi + 0x20]
mov dword [esi + 4], eax
mov dword [esi], edx
mov byte [esi + 0x24], 0
pop edi
mov al, 1
pop esi
ret
Function at 0x4026f0
Capabilities:
Enumerate pe sections

Disassembly:
mov ecx, dword [esp + 0xc]
cmp ecx, 0xc
jb 0x4027aa
mov eax, dword [esp + 8]
cmp byte [eax], 0x41
jne 0x4027aa
cmp byte [eax + 1], 0x64
jne 0x4027aa
cmp byte [eax + 2], 0x6f
jne 0x4027aa
cmp byte [eax + 3], 0x62
jne 0x4027aa
cmp byte [eax + 4], 0x65
jne 0x4027aa
push ebx
xor ecx, ecx
mov cl, byte [eax + 7]
push ebp
push esi
push edi
mov edi, ecx
xor edx, edx
mov dl, byte [eax + 8]
xor ecx, ecx
mov cl, byte [eax + 9]
mov esi, dword [esp + 0x14]
shl edi, 8
add edi, edx
mov ebp, ecx
xor edx, edx
xor ecx, ecx
mov dl, byte [eax + 0xa]
mov cl, byte [eax + 0xb]
shl ebp, 8
add ebp, edx
xor edx, edx
mov dl, byte [eax + 5]
xor ebx, ebx
mov bl, byte [eax + 6]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esi]
mov dword [ecx + 0x1c], edi
shl edx, 8
add ecx, 0x18
add edx, ebx
mov ebx, dword [esp + 0x1c]
push 1
mov dword [ecx], edx
mov dword [ecx + 8], ebp
mov dword [ecx + 0xc], ebx
mov eax, dword [esi]
push esi
mov dword [eax + 0x14], 0x4c
mov ecx, dword [esi]
call dword [ecx + 4]
add esp, 8
mov byte [esi + 0x108], 1
mov byte [esi + 0x109], bl
pop edi
pop esi
pop ebp
pop ebx
ret
mov eax, dword [esp + 4]
push 1
push eax
mov edx, dword [eax]
mov dword [edx + 0x14], 0x4e
mov edx, dword [esp + 0x18]
add ecx, edx
mov edx, dword [eax]
mov dword [edx + 0x18], ecx
mov ecx, dword [eax]
call dword [ecx + 4]
add esp, 8
ret
Function at 0x41fb80
Capabilities:
Encode data using xor

Disassembly:
mov ecx, dword [esp + 4]
xor edx, edx
cmp ecx, edx
je 0x41fc20
push ebx
push ebp
push esi
mov esi, dword [ecx]
push edi
xor eax, eax
mov byte [esi + 0x16], dl
mov esi, dword [ecx]
mov byte [esi + 0x17], dl
mov esi, dword [ecx]
mov byte [esi + 0x18], dl
mov esi, dword [ecx]
mov byte [esi + 0x19], dl
mov edi, dword [ecx + 4]
xor esi, esi
cmp edi, edx
jle 0x41fbd2
mov ebp, dword [ecx]
xor edx, edx
mov ebx, eax
mov dl, byte [esi + ebp]
shr ebx, 0x18
xor edx, ebx
shl eax, 8
mov edx, dword [edx*4 + 0x4d5ca4]
xor eax, edx
inc esi
cmp esi, edi
jl 0x41fbb3
xor edx, edx
mov edi, dword [ecx + 0xc]
xor esi, esi
cmp edi, edx
jle 0x41fbfb
mov ebp, dword [ecx + 8]
xor edx, edx
mov ebx, eax
mov dl, byte [esi + ebp]
shr ebx, 0x18
xor edx, ebx
shl eax, 8
mov edx, dword [edx*4 + 0x4d5ca4]
xor eax, edx
inc esi
cmp esi, edi
jl 0x41fbde
mov edx, dword [ecx]
pop edi
mov byte [edx + 0x16], al
mov esi, dword [ecx]
mov edx, eax
shr edx, 8
mov byte [esi + 0x17], dl
mov esi, dword [ecx]
mov edx, eax
shr edx, 0x10
mov byte [esi + 0x18], dl
mov ecx, dword [ecx]
shr eax, 0x18
pop esi
pop ebp
mov byte [ecx + 0x19], al
pop ebx
ret
Function at 0x4309f0
Capabilities:
Terminate process

Disassembly:
push ebx
push esi
push edi
cmp ecx, 1
jl 0x430a13
mov eax, dword [0x58c460]
mov ecx, dword [eax + 8]
mov eax, dword [0x58c464]
add ecx, ecx
mov eax, dword [eax + 0x24]
mov esi, dword [eax + ecx*8 - 4]
add esi, 0xc
jmp 0x430a15
xor esi, esi
mov ecx, esi
call fcn.004308c0
test eax, eax
jne 0x430a82
mov edi, dword [0x4b4408]
mov ebx, dword [0x4b4414]
lea esp, [esp]
call fcn.0047b900
mov eax, dword [0x53c0fc]
test eax, eax
je 0x430a40
call eax
push dword [0x53bb48]
call edi
push 0x104
push 0x573048
push dword [0x53bb48]
call dword [0x4b43f4]
push 5
push 0x573048
push 0x4c3d44
push dword [0x53bb48]
call ebx
cmp eax, 2
je 0x430a8c
mov ecx, esi
call fcn.004308c0
test eax, eax
je 0x430a30
xor ecx, ecx
pop edi
pop esi
pop ebx
jmp fcn.0044fd30
xor ecx, ecx
call fcn.0044fd30
call fcn.00458b50
call fcn.00459460
push 0
call dword [0x4b4404]
push 0
call fcn.0049501f
int3
Function at 0x438520
Capabilities:
Terminate process

Disassembly:
push 0
push 0
push 0xa005
push dword [0x53bb48]
mov dword [0x4e67f4], 0
call dword [0x4b43f0]
mov eax, dword [0x4e66e8]
test eax, eax
je 0x438558
push 0
push 0
push 0xa002
push eax
call dword [0x4b43f0]
jmp fcn.004380c0

Function at 0x439800
Capabilities:
Read file on windows

Disassembly:
cmp dword [0x4e6820], 0
jne 0x439927
push ebx
push 0x4c3d40
mov ecx, str.save_chsmajiro_readmark.mss
mov dword [0x4e6820], 1
call fcn.0045e940
push eax
call fcn.00494396
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x439926
push esi
push edi
lea esp, [esp]
push 0xd4
call fcn.00497cab
mov esi, eax
add esp, 4
test esi, esi
jne 0x439866
push 0x10
push str.malloc
push 0x4c9a90
push eax
call dword [0x4b4414]
push 0x94
push 0
push esi
call fcn.0049cbc0
push ebx
push 1
push 0x94
push esi
call fcn.00495739
add esp, 0x1c
cmp eax, 1
jne 0x4398fb
mov eax, dword [esi + 0x80]
add eax, 0x40
push eax
call fcn.00497cab
mov edi, eax
add esp, 4
test edi, edi
jne 0x4398b4
push 0x10
push str.malloc
push 0x4c9a90
push eax
call dword [0x4b4414]
push ebx
push 1
push dword [esi + 0x80]
mov dword [esi + 0x88], edi
push edi
call fcn.00495739
add esp, 0x10
cmp eax, 1
jne 0x4398fb
mov eax, dword [0x4e6818]
mov dword [esi + 0x90], 0
mov dword [esi + 0x8c], eax
test eax, eax
je 0x4398f0
mov dword [eax + 0x90], esi
mov dword [0x4e6818], esi
jmp 0x439840
test esi, esi
je 0x43991b
mov eax, dword [esi + 0x88]
test eax, eax
je 0x439912
push eax
call fcn.00494034
add esp, 4
push esi
call fcn.00494034
add esp, 4
push ebx
call fcn.00494b54
add esp, 4
pop edi
pop esi
pop ebx
ret

Function at 0x439930
Capabilities:
Write file on windows

Disassembly:
cmp dword [0x4e6818], 0
je 0x4399dc
call fcn.004573d0
test eax, eax
jne 0x4399dc
push ebx
push 0x4c3dd8
mov ecx, str.save_chsmajiro_readmark.mss
call fcn.0045e940
push eax
call fcn.00494396
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4399d1
push esi
mov esi, dword [0x4e6818]
test esi, esi
je 0x4399c7
push edi
mov edi, dword [esi + 0x8c]
push ebx
push 1
push 0x94
push esi
call fcn.0049528d
add esp, 0x10
cmp eax, 1
jne 0x4399c6
push ebx
push eax
push dword [esi + 0x80]
push dword [esi + 0x88]
call fcn.0049528d
add esp, 0x10
cmp eax, 1
jne 0x4399c6
push dword [esi + 0x88]
call fcn.00494034
push esi
call fcn.00494034
add esp, 8
mov esi, edi
test edi, edi
jne 0x439975
pop edi
push ebx
call fcn.00494b54
add esp, 4
pop esi
mov dword [0x4e6818], 0
pop ebx
ret
Function at 0x444850
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x21c
mov eax, dword [0x4d3100]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x4e7870], 0
push esi
je 0x4449d2
call fcn.004573d0
test eax, eax
jne 0x4449b3
mov eax, dword [0x4e5164]
cmp eax, 0xffffffff
jne 0x4448a6
mov ecx, str.FONTCACHESMART
call fcn.00487da0
test eax, eax
je 0x4448a1
push dword [eax + 4]
call fcn.00494176
add esp, 4
mov dword [0x4e5164], eax
push dword [0x4e7978]
test eax, eax
lea eax, [ebp - 0x110]
push dword [0x4e7974]
push 0x4e7870
je 0x4448c8
push str.fca__s__03dx_03d.fcd
jmp 0x4448cd
push str.fc__s__03dx_03d.fcd
push eax
call fcn.00493964
add esp, 0x14
cmp dword [0x53bf90], 0
jne 0x444901
push 0x575f18
call dword [0x4b4238]
push 0x4801a0
call fcn.0049543a
add esp, 4
mov dword [0x53bf90], 1
lea edx, [ebp - 0x218]
lea ecx, [ebp - 0x110]
call fcn.00482070
test eax, eax
jne 0x4449b3
cmp dword [0x53799c], eax
je 0x4449b3
call fcn.004575b0
push dword [0x4e7978]
test eax, eax
lea eax, [ebp - 0x110]
push dword [0x4e7974]
push 0x4e7870
je 0x44494d
push str.save_chs_fca__s__03dx_03d.fcd
jmp 0x444952
push str.save_chs_fc__s__03dx_03d.fcd
push eax
call fcn.00493964
add esp, 0x14
lea ecx, [ebp - 0x110]
push 0x4c3dd8
call fcn.0045e940
push eax
call fcn.00494396
mov esi, eax
add esp, 8
test esi, esi
je 0x4449b3
push esi
push 1
push 0x50118
push 0x4e7870
call fcn.0049528d
add esp, 0x10
cmp eax, 1
jne 0x4449aa
push esi
push eax
push dword [0x537980]
push dword [0x537984]
call fcn.0049528d
add esp, 0x10
push esi
call fcn.00494b54
add esp, 4
push dword [0x537984]
call fcn.00494034
add esp, 4
mov byte [0x4e7870], 0
mov dword [0x53799c], 0
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.00493955
mov esp, ebp
pop ebp
ret
Function at 0x4506d0
Capabilities:
Terminate process

Disassembly:
push esi
mov esi, ecx
inc dword [esi]
mov eax, dword [esi]
cmp eax, 0x100
jge 0x45074e
lea eax, [eax + eax*4]
shl eax, 4
push pe_nt_image_headers32
add eax, 0x28
add eax, esi
push 0
push eax
call fcn.0049cbc0
mov eax, dword [esi]
add esp, 0xc
lea ecx, [eax + eax*4]
add ecx, ecx
mov eax, dword [esi + ecx*8 - 0x20]
mov dword [esi + ecx*8 + 0x30], eax
mov eax, dword [esi]
lea ecx, [eax + eax*4]
add ecx, ecx
mov eax, dword [esi + ecx*8 + 0x30]
mov dword [esi + ecx*8 + 0x2c], eax
mov eax, dword [esi]
lea ecx, [eax + eax*4]
add ecx, ecx
mov eax, dword [esi + ecx*8 - 0x28]
mov dword [esi + ecx*8 + 0x28], eax
mov eax, dword [esi]
lea ecx, [eax + eax*4]
add ecx, ecx
mov eax, dword [esi + ecx*8 - 0x18]
mov dword [esi + ecx*8 + 0x38], eax
cmp esi, dword [0x58c464]
jne 0x45074c
mov eax, dword [esi]
lea eax, [eax + eax*4]
shl eax, 4
add eax, 0x28
add eax, esi
mov dword [0x58c460], eax
pop esi
ret
push 0x4c6714
call fcn.004857d0
add esp, 4
push 0xffffffffffffffff
call fcn.0049501f
int3
Function at 0x451a30
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp dword [0x5379f8], 0
jne 0x451c1d
push esi
push edi
xor esi, esi
mov dword [ebp - 0xc], 2
push 0x4c3d40
mov ecx, str.save_chsmajiro_system.mss
mov dword [ebp - 4], esi
xor edi, edi
call fcn.0045e940
push eax
call fcn.00494396
add esp, 8
mov dword [ebp - 8], eax
test eax, eax
je 0x451bc6
push eax
push 1
push 0x9c58
push 0x543bc0
call fcn.00495739
add esp, 0x10
cmp eax, 1
jne 0x451b98
mov dword [ebp - 0xc], eax
mov ecx, str.MajiroSysV1.100
mov eax, 0x543bc0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x451ac1
test dl, dl
je 0x451abd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x451ac1
add eax, 2
add ecx, 2
test dl, dl
jne 0x451aa1
xor eax, eax
jmp 0x451ac6
sbb eax, eax
or eax, 1
test eax, eax
jne 0x451b98
mov eax, dword [0x543bd0]
mov dword [0x56c5e0], eax
lea ecx, [eax + 0x400]
mov dword [0x5619c8], ecx
add ecx, 0x20
shl ecx, 4
call fcn.00484ed0
mov ecx, dword [0x543bd0]
mov dword [0x5379f8], eax
lea ecx, [ecx + 0x20]
shl ecx, 4
call fcn.00484ed0
push dword [ebp - 8]
mov ecx, dword [0x543bd0]
mov edi, eax
push 1
shl ecx, 4
push ecx
push edi
mov dword [ebp - 0x10], edi
call fcn.00495739
add esp, 0x10
cmp eax, 1
jne 0x451b98
mov ecx, dword [0x543bd4]
test ecx, ecx
je 0x451b57
add ecx, 0x20
call fcn.00484ed0
push dword [ebp - 8]
mov esi, eax
push 1
push dword [0x543bd4]
mov dword [ebp - 4], esi
push esi
call fcn.00495739
add esp, 0x10
cmp eax, 1
jne 0x451b98
xor edi, edi
cmp dword [0x543bd0], edi
jle 0x451b8b
xor esi, esi
mov ecx, dword [0x5379f8]
mov edx, dword [ebp - 0x10]
push 0
push dword [ebp - 4]
lea ecx, [esi + ecx]
lea edx, [esi + edx]
call fcn.004511a0
inc edi
lea esi, [esi + 0x10]
add esp, 8
cmp edi, dword [0x543bd0]
jl 0x451b63
mov esi, dword [ebp - 4]
mov edi, dword [ebp - 0x10]
mov dword [ebp - 0xc], 0
push dword [ebp - 8]
call fcn.00494b54
add esp, 4
test esi, esi
je 0x451bb0
push esi
call fcn.00494034
add esp, 4
test edi, edi
je 0x451bbd
push edi
call fcn.00494034
add esp, 4
mov esi, dword [ebp - 0xc]
test esi, esi
je 0x451c1b
jmp 0x451bcb
mov esi, 2
push 0x4020
mov dword [0x56c5e0], 0
mov dword [0x5619c8], 0x400
call fcn.00497cab
mov edi, eax
add esp, 4
test edi, edi
jne 0x451c05
push 0x10
push str.malloc
push 0x4c9a90
push eax
call dword [0x4b4414]
mov dword [0x5379f8], edi
cmp esi, 2
je 0x451c1b
push 0x4c67b8
call dword [0x4b4268]
pop edi
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x4525a0
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x624
mov eax, dword [0x4d3100]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x58c460]
push ebx
push esi
push edi
mov ecx, dword [eax + 8]
mov eax, dword [0x58c464]
add ecx, ecx
mov eax, dword [eax + 0x24]
mov esi, dword [eax + ecx*8 - 0x14]
push dword [eax + ecx*8 - 4]
mov ecx, str.save_chsmajiro__04d.sav
call fcn.0045e940
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00493964
add esp, 0xc
mov ecx, str.save_chsmajiro__04d.sav
push esi
call fcn.0045e940
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.00493964
add esp, 0xc
mov dword [ebp - 0x61c], 1
lea eax, [ebp - 0x218]
push 0
push 0x80
push 3
push 0
push 0
push 0x80000000
push eax
call dword [0x4b41fc]
mov edi, dword [0x4b4264]
mov esi, eax
cmp esi, 0xffffffff
je 0x45265a
lea eax, [ebp - 0x624]
push eax
push 0
push 0
push esi
call dword [0x4b426c]
push esi
call edi
mov dword [ebp - 0x61c], 0
lea eax, [ebp - 0x110]
push eax
call fcn.00495c9d
lea eax, [ebp - 0x218]
push 0x4c3d40
push eax
call fcn.00494396
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x4526ed
lea eax, [ebp - 0x110]
push 0x4c3dd8
push eax
call fcn.00494396
mov edi, eax
add esp, 8
test edi, edi
je 0x4526d1
lea ebx, [ebx]
push ebx
push 0x400
lea eax, [ebp - 0x618]
push 1
push eax
call fcn.00495739
mov esi, eax
lea eax, [ebp - 0x618]
push edi
push esi
push 1
push eax
call fcn.0049528d
add esp, 0x20
cmp esi, 0x400
je 0x4526a0
push ebx
call fcn.00494b54
add esp, 4
test edi, edi
je 0x4526e7
push edi
call fcn.00494b54
add esp, 4
mov edi, dword [0x4b4264]
cmp dword [ebp - 0x61c], 0
jne 0x452731
push 0
push 0x80
push 3
push 0
push 0
push 0x40000000
lea eax, [ebp - 0x110]
push eax
call dword [0x4b41fc]
mov esi, eax
cmp esi, 0xffffffff
je 0x452731
lea eax, [ebp - 0x624]
push eax
push 0
push 0
push esi
call dword [0x4b4200]
push esi
call edi
or ecx, 0xffffffff
call fcn.0044fd30
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00493955
mov esp, ebp
pop ebp
ret
Function at 0x452750
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x518
mov eax, dword [0x4d3100]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push esi
test ebx, ebx
js 0x452828
cmp ebx, 0x2711
je 0x452828
cmp ebx, 0x2710
jge 0x4527a3
push ebx
mov ecx, str.save_chsmajiro__04d.sav
call fcn.0045e940
push eax
lea eax, [ebp - 0x118]
push eax
call fcn.00493964
add esp, 0xc
jmp 0x45284d
push edi
call fcn.00456860
mov edi, eax
call fcn.00456810
push 0
mov esi, eax
lea eax, [ebp - 0x318]
push 0x4c3c38
push eax
call fcn.00493964
push 0x200
lea eax, [ebp - 0x518]
mov edx, edi
push eax
lea eax, [ebp - 0x318]
mov ecx, esi
push eax
push str.QuickNum
call fcn.0047e280
lea eax, [ebp - 0x518]
push eax
call fcn.00494176
mov ecx, 0x271b
add esp, 0x20
sub ecx, ebx
add eax, ecx
and eax, 0x80000007
jns 0x45280a
dec eax
or eax, 0xfffffff8
inc eax
push eax
mov ecx, str.save_chsmajiro_quick_d.sav
call fcn.0045e940
push eax
lea eax, [ebp - 0x118]
push eax
call fcn.00493964
add esp, 0xc
pop edi
jmp 0x45284d
mov ecx, str.save_chsmajiro_last.sav
call fcn.0045e940
lea edx, [ebp - 0x118]
sub edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
lea eax, [eax + 1]
mov byte [edx + eax - 1], cl
test cl, cl
jne 0x452840
push 0x200
push 0
push 0x561be0
call fcn.0049cbc0
lea eax, [ebp - 0x118]
push 0x4c3d40
push eax
call fcn.00494396
mov esi, eax
add esp, 0x14
test esi, esi
je 0x4528d8
push esi
push 1
lea eax, [ebp - 0x14]
push 0x10
push eax
call fcn.00495739
add esp, 0x10
lea eax, [ebp - 0x14]
mov ecx, str.MajiroSavV1.105
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4528b1
test dl, dl
je 0x4528ad
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4528b1
add eax, 2
add ecx, 2
test dl, dl
jne 0x452891
xor eax, eax
jmp 0x4528b6
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4528cf
push esi
push 1
push 0x200
push 0x561be0
call fcn.00495739
add esp, 0x10
push esi
call fcn.00494b54
add esp, 4
mov ecx, dword [ebp - 4]
mov eax, 0x561be0
pop esi
xor ecx, ebp
pop ebx
call fcn.00493955
mov esp, ebp
pop ebp
ret
Function at 0x4528f0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x72c
mov eax, dword [0x4d3100]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov eax, ecx
mov ebx, edx
mov dword [ebp - 0x724], eax
push esi
push edi
test eax, eax
js 0x4529b8
cmp eax, 0x2711
je 0x4529b8
cmp eax, 0x2710
jge 0x452931
mov ecx, str.save_chsmajiro__04d.sav
jmp 0x4529a0
call fcn.00456860
mov edi, eax
call fcn.00456810
push 0
mov esi, eax
lea eax, [ebp - 0x520]
push 0x4c3c38
push eax
call fcn.00493964
push 0x200
lea eax, [ebp - 0x720]
mov edx, edi
push eax
lea eax, [ebp - 0x520]
mov ecx, esi
push eax
push str.QuickNum
call fcn.0047e280
lea eax, [ebp - 0x720]
push eax
call fcn.00494176
mov ecx, 0x271b
add esp, 0x20
sub ecx, dword [ebp - 0x724]
add eax, ecx
and eax, 0x80000007
jns 0x45299b
dec eax
or eax, 0xfffffff8
inc eax
mov ecx, str.save_chsmajiro_quick_d.sav
push eax
call fcn.0045e940
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.00493964
add esp, 0xc
jmp 0x4529dd
mov ecx, str.save_chsmajiro_last.sav
call fcn.0045e940
lea edx, [ebp - 0x120]
sub edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
lea eax, [eax + 1]
mov byte [edx + eax - 1], cl
test cl, cl
jne 0x4529d0
push 0
push 0x80
push 3
push 0
push 0
push 0x80000000
lea eax, [ebp - 0x120]
mov edi, 1
push eax
call dword [0x4b41fc]
mov esi, eax
cmp esi, 0xffffffff
je 0x452a23
lea eax, [ebp - 0x72c]
push eax
push 0
push 0
push esi
call dword [0x4b426c]
push esi
call dword [0x4b4264]
xor edi, edi
push 0x200
lea eax, [ebp - 0x320]
push 0
push eax
call fcn.0049cbc0
lea ecx, [ebp - 0x320]
add esp, 0xc
sub ecx, ebx
mov al, byte [ebx]
lea ebx, [ebx + 1]
mov byte [ecx + ebx - 1], al
test al, al
jne 0x452a41
lea eax, [ebp - 0x120]
push 2
push eax
call fcn.00495ab8
mov esi, eax
add esp, 8
cmp esi, 0xffffffff
je 0x452ac7
push 0x10
lea eax, [ebp - 0x14]
push eax
push esi
call fcn.00495cdf
add esp, 0xc
lea eax, [ebp - 0x14]
mov ecx, str.MajiroSavV1.105
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x452aa0
test dl, dl
je 0x452a9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x452aa0
add eax, 2
add ecx, 2
test dl, dl
jne 0x452a80
xor eax, eax
jmp 0x452aa5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x452abe
push 0x200
lea eax, [ebp - 0x320]
push eax
push esi
call fcn.00496584
add esp, 0xc
push esi
call fcn.00496ed8
add esp, 4
test edi, edi
jne 0x452b05
push edi
push 0x80
push 3
push edi
push edi
push 0x40000000
lea eax, [ebp - 0x120]
push eax
call dword [0x4b41fc]
mov esi, eax
cmp esi, 0xffffffff
je 0x452b05
lea eax, [ebp - 0x72c]
push eax
push edi
push edi
push esi
call dword [0x4b4200]
push esi
call dword [0x4b4264]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00493955
mov esp, ebp
pop ebp
ret
Function at 0x452ba0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x544
mov eax, dword [0x4d3100]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push esi
push edi
test ebx, ebx
js 0x452c5f
cmp ebx, 0x2711
je 0x452c5f
cmp ebx, 0x2710
jge 0x452bdc
push ebx
mov ecx, str.save_chsmajiro__04d.sav
jmp 0x452c48
call fcn.00456860
mov edi, eax
call fcn.00456810
push 0
mov esi, eax
lea eax, [ebp - 0x520]
push 0x4c3c38
push eax
call fcn.00493964
push 0x200
lea eax, [ebp - 0x320]
mov edx, edi
push eax
lea eax, [ebp - 0x520]
mov ecx, esi
push eax
push str.QuickNum
call fcn.0047e280
lea eax, [ebp - 0x320]
push eax
call fcn.00494176
mov ecx, 0x271b
add esp, 0x20
sub ecx, ebx
add eax, ecx
and eax, 0x80000007
jns 0x452c42
dec eax
or eax, 0xfffffff8
inc eax
push eax
mov ecx, str.save_chsmajiro_quick_d.sav
call fcn.0045e940
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.00493964
add esp, 0xc
jmp 0x452c7e
mov ecx, str.save_chsmajiro_last.sav
call fcn.0045e940
lea edx, [ebp - 0x120]
sub edx, eax
mov cl, byte [eax]
lea eax, [eax + 1]
mov byte [edx + eax - 1], cl
test cl, cl
jne 0x452c71
push 0x100
push 0
push 0x5619d0
call fcn.0049cbc0
lea eax, [ebp - 0x120]
push 0x4c3d40
push eax
call fcn.00494396
mov esi, eax
add esp, 0x14
test esi, esi
je 0x452dc1
push esi
push 1
lea eax, [ebp - 0x14]
push 0x10
push eax
call fcn.00495739
add esp, 0x10
push esi
cmp eax, 1
jne 0x452db9
call fcn.00494b54
add esp, 4
lea eax, [ebp - 0x14]
mov ecx, str.MajiroSavV1.105
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x452cf8
test dl, dl
je 0x452cf4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x452cf8
add eax, 2
add ecx, 2
test dl, dl
jne 0x452cd8
xor eax, eax
jmp 0x452cfd
sbb eax, eax
or eax, 1
test eax, eax
jne 0x452dc1
push eax
push 0x80
push 3
push eax
push eax
push 0x80000000
lea eax, [ebp - 0x120]
push eax
call dword [0x4b41fc]
mov esi, eax
cmp esi, 0xffffffff
je 0x452dc1
lea eax, [ebp - 0x538]
push eax
push 0
push 0
push esi
call dword [0x4b426c]
lea eax, [ebp - 0x540]
push eax
lea eax, [ebp - 0x538]
push eax
call dword [0x4b4260]
lea eax, [ebp - 0x530]
push eax
lea eax, [ebp - 0x540]
push eax
call dword [0x4b4204]
movzx eax, word [ebp - 0x524]
mov ecx, 0x64
push eax
movzx eax, word [ebp - 0x526]
push eax
movzx eax, word [ebp - 0x528]
push eax
movzx eax, word [ebp - 0x52a]
push eax
movzx eax, word [ebp - 0x52e]
push eax
movzx eax, word [ebp - 0x530]
cdq
idiv ecx
push edx
push str._02d__02d__02d__02d:_02d:_02d
push 0x5619d0
call fcn.00493964
add esp, 0x20
push esi
call dword [0x4b4264]
jmp 0x452dc1
call fcn.00494b54
add esp, 4
mov ecx, dword [ebp - 4]
mov eax, 0x5619d0
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00493955
mov esp, ebp
pop ebp
ret
Function at 0x453b40
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [0x4d3100]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push 0x557470
xor edx, edx
mov ecx, 0x561ad0
call fcn.00454780
add esp, 4
test eax, eax
jne 0x453bf3
push 0x4c3d40
push 0x561ad0
call fcn.00494396
mov esi, eax
add esp, 8
test esi, esi
je 0x453bf3
push esi
push 1
lea eax, [ebp - 0x14]
push 0x10
push eax
call fcn.00495739
push esi
call fcn.00494b54
add esp, 0x14
lea ecx, [ebp - 0x14]
mov eax, str.MajiroSavV1.105
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x453bc4
test dl, dl
je 0x453bc0
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x453bc4
add ecx, 2
add eax, 2
test dl, dl
jne 0x453ba4
xor eax, eax
jmp 0x453bc9
sbb eax, eax
or eax, 1
test eax, eax
jne 0x453bf3
mov dword [0x53c88c], 2
or eax, 0xffffffff
mov dword [0x5379f4], 1
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00493955
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
xor eax, eax
xor ecx, ebp
pop esi
call fcn.00493955
mov esp, ebp
pop ebp
ret