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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4b4031
mov eax, dword fs:[0]
push eax
sub esp, 0x88
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x80], eax
push ebx
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x98]
mov dword fs:[0], eax
mov dword [esp + 0x30], ecx
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x20], eax
cmp dword [eax + 0x10], ebx
jne 0x48839c
lea eax, [ebx + 1]
jmp 0x488c22
mov edi, dword [0x4b93e8]
push 0x10
call edi
mov esi, eax
add esp, 4
mov dword [esp + 0x3c], esi
mov dword [esp + 0xa0], 0
test esi, esi
je 0x4883f1
mov dword [esi + 4], 8
mov byte [esp + 0xa0], 1
mov dword [esi], vtable.CTypeT_class_std::map_class_CTypeBase___class_CTypeBase___struct_std::less_class_CTypeBase____class_std::allocator_struct_std::pair_class_CTypeBase__const__class_CTypeBase_____.0
mov dword [esi + 8], 0
mov dword [esi + 0xc], 0
call fcn.00417be0
mov dword [esi + 8], eax
mov dword [esi], vtable.CDictionary.0
jmp 0x4883f3
xor esi, esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0xa0], 2
test esi, esi
jne 0x488410
mov esi, 9
jmp 0x488c20
push 0x20
call edi
add esp, 4
mov dword [esp + 0x40], eax
mov byte [esp + 0xa0], 6
test eax, eax
je 0x48845c
push str.BackupMessageChangePasswordRequest
lea ecx, [esp + 0x4c]
call fcn.0040b350
lea eax, [esp + 0x48]
mov byte [esp + 0xa0], 7
mov ecx, dword [esp + 0x40]
mov ebx, 2
push eax
push 9
mov dword [esp + 0x1c], ebx
call fcn.004107a0
mov dword [esp + 0x40], eax
jmp 0x488464
mov dword [esp + 0x40], 0
push 0x20
mov dword [esp + 0xa4], 8
call edi
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0xa0], 9
test eax, eax
je 0x4884b8
push str.BackupMessageTypeKey
lea ecx, [esp + 0x64]
call fcn.0040b350
lea eax, [esp + 0x60]
mov byte [esp + 0xa0], 0xa
mov ecx, dword [esp + 0x18]
or ebx, 4
push eax
push 9
mov dword [esp + 0x1c], ebx
call fcn.004107a0
jmp 0x4884ba
xor eax, eax
mov dword [esp + 0xa0], 0xb
lea ecx, [esi + 8]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x1c], eax
movzx eax, byte [0x4e5c15]
push eax
lea eax, [esp + 0x1c]
push eax
push ecx
lea eax, [esp + 0x4c]
push eax
call fcn.00417d00
mov eax, dword [0x4b93e4]
test bl, 4
je 0x488529
and ebx, 0xfffffffb
cmp dword [esp + 0x74], 8
mov dword [esp + 0x14], ebx
jb 0x488512
push dword [esp + 0x60]
call eax
mov eax, dword [0x4b93e4]
add esp, 4
xor ecx, ecx
mov dword [esp + 0x74], 7
mov dword [esp + 0x70], 0
mov word [esp + 0x60], cx
mov dword [esp + 0xa0], 2
test bl, 2
je 0x488550
and ebx, 0xfffffffd
cmp dword [esp + 0x5c], 8
mov dword [esp + 0x14], ebx
jb 0x488550
push dword [esp + 0x48]
call eax
add esp, 4
mov eax, dword [esp + 0x34]
cmp dword [eax + 0x10], 0
je 0x488632
push 0x20
call edi
add esp, 4
mov dword [esp + 0x18], eax
mov byte [esp + 0xa0], 0xc
test eax, eax
je 0x488588
push dword [esp + 0x34]
mov ecx, eax
push 9
call fcn.004107a0
mov dword [esp + 0x34], eax
jmp 0x488590
mov dword [esp + 0x34], 0
push 0x20
mov byte [esp + 0xa4], 2
call edi
add esp, 4
mov dword [esp + 0x18], eax
mov byte [esp + 0xa0], 0xd
test eax, eax
je 0x4885de
push str.BackupPassword
lea ecx, [esp + 0x4c]
call fcn.0040b350
lea eax, [esp + 0x48]
mov byte [esp + 0xa0], 0xe
mov ecx, dword [esp + 0x18]
or ebx, 8
push eax
push 9
mov dword [esp + 0x1c], ebx
call fcn.004107a0
jmp 0x4885e0
xor eax, eax
mov dword [esp + 0xa0], 0xf
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x1c], eax
movzx eax, byte [0x4e5c15]
push eax
lea eax, [esp + 0x1c]
push eax
push ecx
lea eax, [esp + 0x40]
push eax
lea ecx, [esi + 8]
call fcn.00417d00
mov dword [esp + 0xa0], 2
test bl, 8
je 0x488632
and ebx, 0xfffffff7
lea ecx, [esp + 0x48]
mov dword [esp + 0x14], ebx
call fcn.0040b3d0
mov eax, dword [esp + 0x28]
cmp dword [eax + 0x10], 0
je 0x488714
push 0x20
call edi
add esp, 4
mov dword [esp + 0x18], eax
mov byte [esp + 0xa0], 0x10
test eax, eax
je 0x48866a
push dword [esp + 0x28]
mov ecx, eax
push 9
call fcn.004107a0
mov dword [esp + 0x28], eax
jmp 0x488672
mov dword [esp + 0x28], 0
push 0x20
mov byte [esp + 0xa4], 2
call edi
add esp, 4
mov dword [esp + 0x18], eax
mov byte [esp + 0xa0], 0x11
test eax, eax
je 0x4886c0
push str.OldPassword
lea ecx, [esp + 0x4c]
call fcn.0040b350
lea eax, [esp + 0x48]
mov byte [esp + 0xa0], 0x12
mov ecx, dword [esp + 0x18]
or ebx, 0x10
push eax
push 9
mov dword [esp + 0x1c], ebx
call fcn.004107a0
jmp 0x4886c2
xor eax, eax
mov dword [esp + 0xa0], 0x13
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x1c], eax
movzx eax, byte [0x4e5c15]
push eax
lea eax, [esp + 0x1c]
push eax
push ecx
lea eax, [esp + 0x34]
push eax
lea ecx, [esi + 8]
call fcn.00417d00
mov dword [esp + 0xa0], 2
test bl, 0x10
je 0x488714
and ebx, 0xffffffef
lea ecx, [esp + 0x48]
mov dword [esp + 0x14], ebx
call fcn.0040b3d0
push 0x20
call edi
add esp, 4
mov dword [esp + 0x18], eax
mov byte [esp + 0xa0], 0x14
test eax, eax
je 0x48873e
push dword [esp + 0x20]
mov ecx, eax
push 9
call fcn.004107a0
mov dword [esp + 0x28], eax
jmp 0x488746
mov dword [esp + 0x28], 0
push 0x20
mov byte [esp + 0xa4], 2
call edi
mov edi, eax
add esp, 4
mov dword [esp + 0x20], edi
mov byte [esp + 0xa0], 0x15
test edi, edi
je 0x488794
push str.BackupProtocolVersion
lea ecx, [esp + 0x4c]
call fcn.0040b350
lea eax, [esp + 0x48]
mov byte [esp + 0xa0], 0x16
push eax
or ebx, 0x20
mov ecx, edi
push 9
mov dword [esp + 0x1c], ebx
call fcn.004107a0
jmp 0x488796
xor eax, eax
mov dword [esp + 0xa0], 0x17
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x24], eax
movzx eax, byte [0x4e5c15]
push eax
lea eax, [esp + 0x24]
push eax
push ecx
lea eax, [esp + 0x24]
push eax
lea ecx, [esi + 8]
call fcn.00417d00
mov dword [esp + 0xa0], 2
test bl, 0x20
mov ebx, dword [0x4b93e4]
je 0x4887ee
cmp dword [esp + 0x5c], 8
jb 0x4887ee
push dword [esp + 0x48]
call ebx
add esp, 4
xor eax, eax
mov dword [esp + 0x74], 7
mov dword [esp + 0x70], 0
mov word [esp + 0x60], ax
mov byte [esp + 0xa0], 0x18
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x60]
push esi
mov esi, dword [esp + 0x34]
mov ecx, esi
push eax
call fcn.00483b20
test al, al
jne 0x488846
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x48], esp
push str._Error_:_Could_not_send_ChangePassword_request_message_
call fcn.0040b350
mov byte [esp + 0xb8], 0x19
jmp 0x488bf7
mov ecx, dword [esi + 0x80]
lea eax, [esp + 0x28]
push eax
mov dword [esp + 0x2c], 0
call fcn.004962e0
test al, al
je 0x488c0b
mov edi, dword [esp + 0x28]
test edi, edi
je 0x488bdc
mov dword [esp + 0x30], edi
mov byte [esp + 0xa0], 0x1a
cmp dword [edi + 4], 7
je 0x4888a4
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x38], esp
push str._Error_:_Did_not_receive_DLMessage_when_requestChangePassword_
call fcn.0040b350
mov byte [esp + 0xb8], 0x1b
jmp 0x488bb1
push 0
push 0x4e4898
push 0x4e4640
push 0
push edi
call fcn.004a6d6e
mov esi, eax
add esp, 0x14
test esi, esi
je 0x488b96
cmp dword [esi + 0xc], 2
jne 0x488b96
mov ecx, dword [esi + 8]
mov eax, dword [ecx]
cmp eax, ecx
je 0x488bc5
mov eax, dword [eax + 8]
test eax, eax
je 0x488bc5
cmp dword [eax + 4], 9
jne 0x488bc5
push 0
push 0x4e4658
push 0x4e4640
push 0
push eax
call fcn.004a6d6e
add esp, 0x14
lea ecx, [esp + 0x48]
add eax, 8
push eax
call fcn.0040b8b0
mov edx, str.DLMessageDisconnect
mov byte [esp + 0xa0], 0x1d
lea ecx, [esp + 0x48]
call fcn.004233b0
test al, al
je 0x4889a0
mov ecx, dword [esi + 8]
mov eax, dword [ecx]
mov eax, dword [eax]
cmp eax, ecx
je 0x488b76
mov eax, dword [eax + 8]
test eax, eax
je 0x488b76
cmp dword [eax + 4], 9
jne 0x488b76
push 0
push 0x4e4658
push 0x4e4640
push 0
push eax
call fcn.004a6d6e
add esp, 0x14
lea ecx, [esp + 0x78]
add eax, 8
push eax
call fcn.0040b8b0
lea ecx, [esp + 0x78]
call fcn.0040b3d0
lea ecx, [esp + 0x48]
xor esi, esi
call fcn.0040b3d0
mov byte [esp + 0xa0], 0x18
mov ecx, edi
mov eax, dword [edi]
push 1
call dword [eax]
jmp 0x488c10
mov edx, str.DLMessageProcessMessage
lea ecx, [esp + 0x48]
call fcn.004233b0
test al, al
je 0x488b47
mov ecx, dword [esi + 8]
mov eax, dword [ecx]
mov eax, dword [eax]
cmp eax, ecx
je 0x488b76
mov eax, dword [eax + 8]
test eax, eax
je 0x488b76
cmp dword [eax + 4], 8
jne 0x488b76
push 0
push 0x4e4624
push 0x4e4640
push 0
push eax
call fcn.004a6d6e
mov esi, eax
add esp, 0x14
test esi, esi
je 0x488b76
push str.BackupMessageTypeKey
mov ecx, esi
call fcn.004046d0
test al, al
jne 0x488a2b
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x38], esp
push str._Error_:_Received_Message_did_not_contain_BackupMessageTypeKey_
call fcn.0040b350
mov byte [esp + 0xb8], 0x1e
jmp 0x488b62
push str.BackupMessageTypeKey
mov ecx, esi
call fcn.004047c0
test eax, eax
je 0x488b76
cmp dword [eax + 4], 9
jne 0x488b76
push 0
push 0x4e4658
push 0x4e4640
push 0
push eax
call fcn.004a6d6e
add esp, 0x14
mov edx, str.BackupMessageBackupFinished
lea ecx, [eax + 8]
call fcn.0044f390
test al, al
je 0x488b27
push str.BackupErrorReasonKey
mov ecx, esi
call fcn.004046d0
mov ecx, esi
test al, al
je 0x488afc
push str.BackupErrorReasonKey
call fcn.004047c0
test eax, eax
je 0x488b76
cmp dword [eax + 4], 9
jne 0x488b76
push 0
push 0x4e4658
push 0x4e4640
push 0
push eax
call fcn.004a6d6e
add esp, 0x14
mov edx, str.BackupErrorInvalidPassword
lea ecx, [eax + 8]
call fcn.0044f390
sub esp, 0x18
mov dword [esp + 0x38], esp
mov ecx, esp
test al, al
je 0x488ae8
push str._Error_:_Invalid_password_when_change_password_
call fcn.0040b350
mov byte [esp + 0xb8], 0x1f
jmp 0x488b62
push str._Error_:_BackupErrorReason_
call fcn.0040b350
mov byte [esp + 0xb8], 0x20
jmp 0x488b62
push str.BackupMessageTypeKey
call fcn.004046d0
test al, al
je 0x488b27
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x38], esp
push str._Error_:_BackupErrorReason_
call fcn.0040b350
mov byte [esp + 0xb8], 0x21
jmp 0x488b62
lea ecx, [esp + 0x48]
call fcn.0040b3d0
mov byte [esp + 0xa0], 0x18
mov ecx, edi
mov eax, dword [edi]
push 1
call dword [eax]
xor esi, esi
jmp 0x488c10
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x38], esp
push str._Error_:_Receive_unknow_message__when_requestChangePassword_
call fcn.0040b350
mov byte [esp + 0xb8], 0x22
call fcn.00466c50
mov ecx, eax
mov byte [esp + 0xb8], 0x1d
call fcn.00466910
lea ecx, [esp + 0x48]
mov esi, 9
call fcn.0040b3d0
mov byte [esp + 0xa0], 0x18
mov ecx, edi
mov eax, dword [edi]
push 1
call dword [eax]
jmp 0x488c10
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x38], esp
push str._Error_:_Did_not_receive_DLMessage_when_requestChangePassword_
call fcn.0040b350
mov byte [esp + 0xb8], 0x1c
call fcn.00466c50
mov ecx, eax
mov byte [esp + 0xb8], 0x1a
call fcn.00466910
mov byte [esp + 0xa0], 0x18
mov ecx, edi
mov eax, dword [edi]
mov esi, 9
push 1
call dword [eax]
jmp 0x488c10
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x48], esp
push str._Error_:_Did_not_receive_DLMessage_when_requestChangePassword_
call fcn.0040b350
mov byte [esp + 0xb8], 0x23
call fcn.00466c50
mov ecx, eax
mov byte [esp + 0xb8], 0x18
call fcn.00466910
mov esi, 9
cmp dword [esp + 0x74], 8
jb 0x488c20
push dword [esp + 0x60]
call ebx
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x98]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x80]
xor ecx, esp
call fcn.004a6303
mov esp, ebp
pop ebp
ret 0x10