Function at 0x43fe00
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x45c
push ebx
mov ebx, ecx
push esi
lea ecx, [ebx + 0xa4f26d]
call fcn.00452190
mov eax, dword [esp + 0x468]
mov word [ebx + 0xa59b29], 0x500
test eax, eax
mov word [ebx + 0xa5b9ef], 0x103
mov word [ebx + 0xa5b9f1], 0x1000
mov dword [ebx + 0xa59b21], eax
jne 0x43fe4b
mov dword [ebx + 0xa59b25], 1
mov eax, dword [ebx + 0x5a6f04]
push ebp
push edi
mov dword [ebx + 0xa59b37], eax
mov dword [ebx + 0xa59b3f], eax
mov edi, str.sys_save_base
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea ebp, [ebx + 0xa4f271]
mov eax, ecx
mov esi, edi
mov edi, ebp
lea edx, [ebx + 0xa4f2b1]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.sys_save_button
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x58]
lea edi, [ebx + 0x2a9e62]
push ecx
push str.SAVE_TYPE
push str.SAVE
mov ecx, edi
call fcn.00407e80
lea eax, [ebx + 0xa5b9f9]
mov ecx, edi
push eax
push str.SAVE_PAGE_MAX
push str.SAVE
call fcn.00407dc0
lea edx, [ebx + 0xa59b3b]
mov ecx, edi
push edx
push str.SAVE_COUNT_MAX
push str.SAVE
call fcn.00407dc0
mov ax, word [esp + 0x58]
lea ecx, [esp + 0x6c]
push 0x400
push ecx
push str.SAVE_BASE_POS
push str.SAVE
mov ecx, edi
mov word [ebx + 0xa59b59], ax
call fcn.00407ce0
test eax, eax
je 0x4400b6
lea edx, [ebx + 0xadef0b]
lea eax, [esp + 0x6c]
push edx
push 0x2c
push 0
push eax
call fcn.00402a50
lea ecx, [ebx + 0xadef0d]
lea edx, [esp + 0x7c]
push ecx
push 0x2c
push 1
push edx
call fcn.00402a50
lea eax, [ebx + 0xadef0f]
lea ecx, [esp + 0x8c]
push eax
push 0x2c
push 2
push ecx
call fcn.00402a50
lea edx, [ebx + 0xadef11]
lea eax, [esp + 0x9c]
push edx
push 0x2c
push 3
push eax
call fcn.00402a50
add esp, 0x40
lea ecx, [ebx + 0xadef13]
lea edx, [esp + 0x6c]
push ecx
push 0x2c
push 4
push edx
call fcn.00402a50
lea eax, [ebx + 0xadef15]
lea ecx, [esp + 0x7c]
push eax
push 0x2c
push 5
push ecx
call fcn.00402a50
lea edx, [ebx + 0xadef17]
lea eax, [esp + 0x8c]
push edx
push 0x2c
push 6
push eax
call fcn.00402a50
lea ecx, [ebx + 0xadef19]
lea edx, [esp + 0x9c]
push ecx
push 0x2c
push 7
push edx
call fcn.00402a50
add esp, 0x40
lea eax, [ebx + 0xadef1b]
lea ecx, [esp + 0x6c]
push eax
push 0x2c
push 8
push ecx
call fcn.00402a50
lea edx, [ebx + 0xadef1d]
lea eax, [esp + 0x7c]
push edx
push 0x2c
push 9
push eax
call fcn.00402a50
lea ecx, [ebx + 0xadef1f]
lea edx, [esp + 0x8c]
push ecx
push 0x2c
push 0xa
push edx
call fcn.00402a50
lea eax, [ebx + 0xadef21]
push eax
push 0x2c
lea ecx, [esp + 0xa4]
push 0xb
push ecx
call fcn.00402a50
add esp, 0x40
lea edx, [ebx + 0xadef23]
lea eax, [esp + 0x6c]
push edx
push 0x2c
push 0xc
push eax
call fcn.00402a50
lea ecx, [ebx + 0xadef25]
lea edx, [esp + 0x7c]
push ecx
push 0x2c
push 0xd
push edx
call fcn.00402a50
lea eax, [ebx + 0xadef27]
lea ecx, [esp + 0x8c]
push eax
push 0x2c
push 0xe
push ecx
call fcn.00402a50
lea edx, [ebx + 0xadef29]
lea eax, [esp + 0x9c]
push edx
push 0x2c
push 0xf
push eax
call fcn.00402a50
add esp, 0x40
lea ecx, [ebx + 0xadef2b]
lea edx, [esp + 0x6c]
push ecx
push 0x2c
push 0x10
push edx
call fcn.00402a50
add esp, 0x10
lea eax, [esp + 0x6c]
push 0x400
push eax
push str.SAVE_B_TEXT_POS
push str.SAVE
mov ecx, edi
call fcn.00407ce0
test eax, eax
je 0x440141
lea ecx, [ebx + 0xadef2d]
lea edx, [esp + 0x6c]
push ecx
push 0x2c
push 0
push edx
call fcn.00402a50
lea eax, [ebx + 0xadef2f]
lea ecx, [esp + 0x7c]
push eax
push 0x2c
push 1
push ecx
call fcn.00402a50
lea eax, [ebx + 0xadef31]
lea edx, [esp + 0x8c]
push eax
push 0x2c
push 2
push edx
call fcn.00402a50
lea esi, [ebx + 0xadef33]
lea eax, [esp + 0x9c]
push esi
push 0x2c
push 3
push eax
call fcn.00402a50
mov ax, word [ebx + 0xadef31]
add esp, 0x40
cmp word [esi], ax
jge 0x440141
mov word [esi], ax
lea ecx, [esp + 0x6c]
push 0x400
push ecx
push str.SAVE_B_THUM_POS
push str.SAVE
mov ecx, edi
call fcn.00407ce0
test eax, eax
je 0x44018d
lea edx, [ebx + 0xadef35]
lea eax, [esp + 0x6c]
push edx
push 0x2c
push 0
push eax
call fcn.00402a50
lea ecx, [ebx + 0xadef37]
lea edx, [esp + 0x7c]
push ecx
push 0x2c
push 1
push edx
call fcn.00402a50
add esp, 0x20
lea eax, [esp + 0x6c]
push 0x400
push eax
push str.SAVE_B_NEW_POS
push str.SAVE
mov ecx, edi
call fcn.00407ce0
test eax, eax
je 0x44023a
lea ecx, [ebx + 0xadef39]
lea edx, [esp + 0x6c]
push ecx
push 0x2c
push 0
push edx
call fcn.00402a50
lea eax, [ebx + 0xadef3b]
lea ecx, [esp + 0x7c]
push eax
push 0x2c
push 1
push ecx
call fcn.00402a50
lea edx, [ebx + 0xadef3d]
lea eax, [esp + 0x8c]
push edx
push 0x2c
push 2
push eax
call fcn.00402a50
lea ecx, [ebx + 0xadef3f]
lea edx, [esp + 0x9c]
push ecx
push 0x2c
push 3
push edx
call fcn.00402a50
add esp, 0x40
lea eax, [ebx + 0xadef41]
lea ecx, [esp + 0x6c]
push eax
push 0x2c
push 4
push ecx
call fcn.00402a50
lea edx, [ebx + 0xadef43]
lea eax, [esp + 0x7c]
push edx
push 0x2c
push 5
push eax
call fcn.00402a50
add esp, 0x20
push 0
push 3
push 0x850
push ebp
mov ecx, ebx
call fcn.004197a0
push 0
push 3
lea eax, [ebx + 0xa4f2b1]
push 0x85a
push eax
mov ecx, ebx
call fcn.004197a0
xor ecx, ecx
xor edx, edx
mov cx, word [ebx + 0x2aa7d4]
mov dx, word [ebx + 0x2aa7d2]
push 1
push 0x15
lea esi, [ebx + 0xe8]
push ecx
push edx
push 0x85b
mov ecx, esi
call fcn.00412b80
movsx eax, word [ebx + 0xadef31]
mov ecx, dword [ebx + 0xc]
push 0
push 0
push eax
push 0x4d2cfc
push ecx
lea ecx, [ebx + 0x521c0]
call fcn.0040e2f0
xor edx, edx
xor eax, eax
mov dx, word [ebx + 0x2aa7d4]
mov ax, word [ebx + 0x2aa7d2]
push 1
push 0x15
push edx
push eax
push 0xa
mov ecx, esi
call fcn.00412dd0
xor ecx, ecx
xor edx, edx
mov cx, word [ebx + 0x2aa7d4]
mov dx, word [ebx + 0x2aa7d2]
push ecx
lea esi, [ebx + 0xa4f531]
push edx
push 0
push 0
mov ecx, esi
mov dword [ebx + 0xa5b9e3], 0x850
mov dword [ebx + 0xa5b9e7], 0x85a
mov dword [ebx + 0xa5b9eb], 0xa
mov dword [ebx + 0xa59ab5], 1
call fcn.00417080
push 0
push 0
mov ecx, esi
call fcn.00417050
mov ecx, esi
call fcn.00417120
push 0x1f4
mov ecx, esi
call fcn.00417520
push 0x3f800000
push 0x10
mov ecx, esi
call fcn.00417370
mov ecx, esi
call fcn.004170f0
xor eax, eax
lea esi, [ebx + 0xa51349]
mov ax, word [ebx + 0x2aa7d4]
mov dword [esp + 0x38], esi
push eax
xor ecx, ecx
mov cx, word [ebx + 0x2aa7d2]
push ecx
push 0
push 0
mov ecx, esi
call fcn.00417080
push 0
push 0
mov ecx, esi
call fcn.00417050
mov ecx, esi
call fcn.00417120
push 0x1f4
mov ecx, esi
call fcn.00417520
push 0x3f800000
push 0x10
mov ecx, esi
call fcn.00417370
mov ecx, esi
call fcn.004170f0
mov edx, dword [ebx + 0xadf42f]
lea eax, [esp + 0x6c]
push 0x400
push eax
push str.SAVE_PAGE_POS
push str.SAVE
mov ecx, edi
mov dword [ebx + 0xa5b9f5], edx
call fcn.00407ce0
test eax, eax
je 0x440672
lea ecx, [esp + 0x14]
lea edx, [esp + 0x6c]
push ecx
push 0x2c
push 0
push edx
call fcn.004029f0
lea eax, [esp + 0x20]
lea ecx, [esp + 0x7c]
push eax
push 0x2c
push 1
push ecx
call fcn.004029f0
lea edx, [esp + 0x40]
lea eax, [esp + 0x8c]
push edx
push 0x2c
push 2
push eax
call fcn.004029f0
lea ecx, [esp + 0x54]
lea edx, [esp + 0x9c]
push ecx
push 0x2c
push 3
push edx
call fcn.004029f0
add esp, 0x40
lea eax, [esp + 0x18]
lea ecx, [esp + 0x6c]
push eax
push 0x2c
push 4
push ecx
call fcn.004029f0
lea edx, [esp + 0x2c]
lea eax, [esp + 0x7c]
push edx
push 0x2c
push 5
push eax
call fcn.004029f0
lea ecx, [esp + 0x5c]
lea edx, [esp + 0x8c]
push ecx
push 0x2c
push 6
push edx
call fcn.004029f0
lea eax, [esp + 0x74]
lea ecx, [esp + 0x9c]
push eax
push 0x2c
push 7
push ecx
call fcn.004029f0
add esp, 0x40
lea edx, [esp + 0x48]
lea eax, [esp + 0x6c]
push edx
push 0x2c
push 8
push eax
call fcn.004029f0
lea ecx, [esp + 0x5c]
lea edx, [esp + 0x7c]
push ecx
push 0x2c
push 9
push edx
call fcn.004029f0
lea eax, [esp + 0x74]
lea ecx, [esp + 0x8c]
push eax
push 0x2c
push 0xa
push ecx
call fcn.004029f0
lea edx, [esp + 0x8c]
push edx
push 0x2c
lea eax, [esp + 0xa4]
push 0xb
push eax
call fcn.004029f0
add esp, 0x40
lea ecx, [esp + 0x64]
lea edx, [esp + 0x6c]
push ecx
push 0x2c
push 0xc
push edx
call fcn.004029f0
lea eax, [esp + 0x78]
lea ecx, [esp + 0x7c]
push eax
push 0x2c
push 0xd
push ecx
call fcn.004029f0
lea edx, [esp + 0x70]
lea eax, [esp + 0x8c]
push edx
push 0x2c
push 0xe
push eax
call fcn.004029f0
lea ecx, [esp + 0x90]
lea edx, [esp + 0x9c]
push ecx
push 0x2c
push 0xf
push edx
call fcn.004029f0
add esp, 0x40
lea eax, [esp + 0x40]
lea ecx, [esp + 0x6c]
push eax
push 0x2c
push 0x10
push ecx
call fcn.004029f0
mov eax, dword [esp + 0x4c]
add esp, 0x10
xor ecx, ecx
mov dword [esp + 0x28], 0
test eax, eax
mov dword [esp + 0x34], ecx
jle 0x440672
cmp ecx, dword [esp + 0x48]
jge 0x440672
mov edx, ecx
mov esi, ecx
imul edx, dword [esp + 0x40]
imul esi, dword [esp + 0x68]
mov edi, ecx
mov ebp, ecx
imul edi, dword [esp + 0x50]
imul ebp, dword [esp + 0x60]
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x28]
cmp edx, eax
mov dword [esp + 0x2c], 0
jge 0x44065d
mov edx, dword [esp + 0x2c]
cmp edx, dword [esp + 0x44]
jge 0x44065d
mov ecx, ebx
call fcn.004206a0
push 0
push 0
push 0
push 2
mov ecx, ebx
call fcn.00420a50
lea eax, [ebx + 0xa4f531]
push 1
mov ecx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x24]
push 9
push 0x2002fc
mov edx, dword [esp + 0x34]
push 0x101
push 0x85a
push 1
push 1
push 0x211
push eax
mov eax, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x4c]
add eax, edx
push eax
mov eax, dword [esp + 0x40]
lea edx, [ecx + ebp]
push edx
mov edx, dword [esp + 0x48]
lea ecx, [edi + eax]
lea eax, [esi + edx]
push ecx
push eax
mov ecx, ebx
call fcn.004206e0
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x54]
add esi, eax
mov eax, dword [esp + 0x30]
add ebp, ecx
mov ecx, dword [esp + 0x64]
add edi, edx
add eax, ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x2c]
inc ecx
inc eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x28], ecx
cmp ecx, eax
mov ecx, dword [esp + 0x34]
jl 0x4405a0
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x38]
inc ecx
cmp edx, eax
mov dword [esp + 0x34], ecx
jl 0x440562
lea edx, [esp + 0x6c]
push 0x400
push edx
lea edi, [ebx + 0x2a9e62]
push str.SAVE_AUTO_POS
push str.SAVE
mov ecx, edi
call fcn.00407ce0
test eax, eax
je 0x44077d
lea eax, [esp + 0x14]
lea ecx, [esp + 0x6c]
push eax
push 0x2c
push 0
push ecx
call fcn.004029f0
lea edx, [esp + 0x20]
lea eax, [esp + 0x7c]
push edx
push 0x2c
push 1
push eax
call fcn.004029f0
lea ecx, [esp + 0x40]
lea edx, [esp + 0x8c]
push ecx
push 0x2c
push 2
push edx
call fcn.004029f0
lea eax, [esp + 0x54]
lea ecx, [esp + 0x9c]
push eax
push 0x2c
push 3
push ecx
call fcn.004029f0
add esp, 0x40
lea edx, [esp + 0x18]
lea eax, [esp + 0x6c]
push edx
push 0x2c
push 4
push eax
call fcn.004029f0
lea ecx, [esp + 0x2c]
lea edx, [esp + 0x7c]
push ecx
push 0x2c
push 5
push edx
call fcn.004029f0
add esp, 0x20
mov ecx, ebx
call fcn.004206a0
push 0
push 0
push 0
push 2
mov ecx, ebx
call fcn.00420a50
lea eax, [ebx + 0xa4f531]
push 1
mov ecx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
push 9
push 0x2002fc
push 0x101
push 0x85a
push 1
push 1
push 0x211
push eax
mov eax, dword [esp + 0x48]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
mov edx, dword [esp + 0x44]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.004206e0
inc dword [ebx + 0xa5b9f9]
lea eax, [esp + 0x6c]
push 0x400
push eax
push str.SAVE_DEL_POS
push str.SAVE
mov ecx, edi
mov dword [ebx + 0xadef03], 0
call fcn.00407ce0
test eax, eax
je 0x440886
lea ecx, [esp + 0x14]
lea edx, [esp + 0x6c]
push ecx
push 0x2c
push 0
push edx
call fcn.004029f0
lea eax, [esp + 0x20]
lea ecx, [esp + 0x7c]
push eax
push 0x2c
push 1
push ecx
call fcn.004029f0
lea edx, [esp + 0x40]
lea eax, [esp + 0x8c]
push edx
push 0x2c
push 2
push eax
call fcn.004029f0
lea ecx, [esp + 0x54]
lea edx, [esp + 0x9c]
push ecx
push 0x2c
push 3
push edx
call fcn.004029f0
add esp, 0x40
lea eax, [esp + 0x18]
lea ecx, [esp + 0x6c]
push eax
push 0x2c
push 4
push ecx
call fcn.004029f0
lea edx, [esp + 0x2c]
lea eax, [esp + 0x7c]
push edx
push 0x2c
push 5
push eax
call fcn.004029f0
add esp, 0x20
mov ecx, ebx
call fcn.004206a0
push 0
push 0
push 0
push 2
mov ecx, ebx
call fcn.00420a50
lea eax, [ebx + 0xa4f531]
mov ecx, dword [esp + 0x1c]
push 1
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x2c]
push 9
push 0x400501
push 0x101
push 0x85a
push 1
push 1
push 0x202
push ecx
mov ecx, dword [esp + 0x48]
push edx
mov edx, dword [esp + 0x3c]
push eax
mov eax, dword [esp + 0x44]
push ecx
push edx
push eax
mov ecx, ebx
call fcn.004206e0
lea ecx, [esp + 0x6c]
push 0x400
push ecx
push str.SAVE_RETURN_POS
push str.SAVE
mov ecx, edi
call fcn.00407ce0
pop edi
pop ebp
test eax, eax
je 0x440987
lea edx, [esp + 0xc]
lea eax, [esp + 0x64]
push edx
push 0x2c
push 0
push eax
call fcn.004029f0
lea ecx, [esp + 0x18]
lea edx, [esp + 0x74]
push ecx
push 0x2c
push 1
push edx
call fcn.004029f0
lea eax, [esp + 0x38]
lea ecx, [esp + 0x84]
push eax
push 0x2c
push 2
push ecx
call fcn.004029f0
lea edx, [esp + 0x4c]
lea eax, [esp + 0x94]
push edx
push 0x2c
push 3
push eax
call fcn.004029f0
add esp, 0x40
lea ecx, [esp + 0x10]
lea edx, [esp + 0x64]
push ecx
push 0x2c
push 4
push edx
call fcn.004029f0
lea eax, [esp + 0x24]
lea ecx, [esp + 0x74]
push eax
push 0x2c
push 5
push ecx
call fcn.004029f0
add esp, 0x20
mov ecx, ebx
call fcn.004206a0
push 0
push 0
push 0
push 3
mov ecx, ebx
call fcn.00420a50
lea eax, [ebx + 0xa4f531]
mov edx, dword [esp + 0x14]
push 1
push eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
push 9
push 0x400511
push 0x101
push 0x85a
push 1
push 1
push 0x200
push edx
mov edx, dword [esp + 0x40]
push eax
mov eax, dword [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.004206e0
mov eax, dword [ebx + 0xa5b9f5]
mov edx, dword [ebx + 0x5a6f04]
push eax
mov ecx, ebx
mov dword [ebx + 0xadeeff], edx
call fcn.00440b10
mov cx, word [ebx + 0x2a8f72]
mov dx, word [ebx + 0x2a8f76]
mov word [ebx + 0xa59b2b], cx
mov ecx, ebx
mov word [ebx + 0xa59b57], 0x51
mov word [ebx + 0xa59b2d], dx
mov word [ebx + 0x2a8f72], 0x500
mov word [ebx + 0x2a8f76], 9
call fcn.00423410
push 1
mov ecx, ebx
call fcn.00453e00
push 0
push 1
push 0x270f
push 0
push str.sse_021
push 5
mov ecx, ebx
call fcn.00452cd0
mov eax, dword [ebx + 0x2a8f6a]
lea ecx, [ebx + 0xa4f531]
push eax
call fcn.00418710
mov ecx, dword [ebx + 0x2a8f6a]
push ecx
mov ecx, esi
call fcn.00418710
pop esi
mov eax, 1
pop ebx
add esp, 0x45c
ret 4