Function at 0x403a5e
Capabilities:
Terminate process

Disassembly:
push rbp
push rbx
sub rsp, 0x3f8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x390], rcx
mov qword [rbp + 0x398], rdx
mov qword [rbp + 0x3a0], r8
mov dword [rbp + 0x3a8], r9d
lea rax, [rbp + 0x280]
mov edx, 0x66
mov rcx, rax
call sym.getStringResource_int_
lea rax, [rbp + 0x270]
mov edx, 0x67
mov rcx, rax
call sym.getStringResource_int_
lea rax, [rbp + 0x260]
mov rcx, rax
call sym.GetMotherboardSerialNumber__
lea rax, [rbp + 0x250]
mov rcx, rax
call sym.GetNetworkAdapterMACAddress__
lea rax, [rbp + 0x290]
mov edx, 0x66
mov rcx, rax
call sym.getStringResource_int_
lea rdx, [rbp + 0x260]
lea rax, [rbp + 0x290]
mov rcx, rax
call method.__gnu_cxx::__enable_if_std::__is_char_char_::__value__bool_::__type_std.operator_char__std::basic_string_char__std::char_traits_char___std::allocator_char____const__std::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov ebx, eax
lea rax, [rbp + 0x290]
mov rcx, rax
call fcn.004538f0
test bl, bl
je 0x403b17
mov byte [rbp + 0x36f], 1
lea rax, [rbp + 0x2a0]
mov edx, 0x67
mov rcx, rax
call sym.getStringResource_int_
lea rdx, [rbp + 0x250]
lea rax, [rbp + 0x2a0]
mov rcx, rax
call method.__gnu_cxx::__enable_if_std::__is_char_char_::__value__bool_::__type_std.operator_char__std::basic_string_char__std::char_traits_char___std::allocator_char____const__std::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov ebx, eax
lea rax, [rbp + 0x2a0]
mov rcx, rax
call fcn.004538f0
test bl, bl
je 0x403b5d
mov byte [rbp + 0x36f], 1
lea rax, [rbp + 0x2b0]
mov edx, 0x69
mov rcx, rax
call sym.getStringResource_int_
lea rax, [rbp + 0x2b0]
mov rcx, rax
call method.std::string.c_str___const
mov rdx, rax
lea rax, [rbp + 0x60]
mov r8d, 8
mov rcx, rax
call sym.std::basic_ifstream_char__std::char_traits_char___::basic_ifstream_char_const__std::_Ios_Openmode_
lea rax, [rbp + 0x2b0]
mov rcx, rax
call fcn.004538f0
lea rax, [rbp + 0x60]
mov rcx, rax
call method.std::basic_ifstream_char__std::char_traits_char___.is_open__
test al, al
je 0x403cfa
lea rax, [rbp + 0x240]
mov rcx, rax
call sym.std::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string__
jmp 0x403ca9
lea rax, [rbp + 0x2c0]
lea rdx, [rbp + 0x240]
mov rcx, rax
call sym.RemoveSpecialCharacters_std::string_const_
lea rax, [rbp + 0x2d0]
mov edx, 0x66
mov rcx, rax
call sym.getStringResource_int_
lea rdx, [rbp + 0x2c0]
lea rax, [rbp + 0x2d0]
mov rcx, rax
call method.__gnu_cxx::__enable_if_std::__is_char_char_::__value__bool_::__type_std.operator_char__std::basic_string_char__std::char_traits_char___std::allocator_char____const__std::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov ebx, eax
lea rax, [rbp + 0x2d0]
mov rcx, rax
call fcn.004538f0
lea rax, [rbp + 0x2c0]
mov rcx, rax
call fcn.004538f0
test bl, bl
je 0x403c3c
mov byte [rbp + 0x36f], 1
jmp 0x403cdf
lea rax, [rbp + 0x2e0]
lea rdx, [rbp + 0x240]
mov rcx, rax
call sym.RemoveSpecialCharacters_std::string_const_
lea rax, [rbp + 0x2f0]
mov edx, 0x67
mov rcx, rax
call sym.getStringResource_int_
lea rdx, [rbp + 0x2e0]
lea rax, [rbp + 0x2f0]
mov rcx, rax
call method.__gnu_cxx::__enable_if_std::__is_char_char_::__value__bool_::__type_std.operator_char__std::basic_string_char__std::char_traits_char___std::allocator_char____const__std::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov ebx, eax
lea rax, [rbp + 0x2f0]
mov rcx, rax
call fcn.004538f0
lea rax, [rbp + 0x2e0]
mov rcx, rax
call fcn.004538f0
test bl, bl
je 0x403ca9
mov byte [rbp + 0x36f], 1
jmp 0x403cdf
lea rdx, [rbp + 0x240]
lea rax, [rbp + 0x60]
mov rcx, rax
call method.std::basic_istream_char__std::char_traits_char____std::getline_char__std::char_traits_char___std.allocator_char____std::basic_istream_char__std::char_traits_char_____std::basic_string_char__std::char_traits_char___std::allocator_char____
mov rdx, qword [rax]
sub rdx, 0x18
mov rdx, qword [rdx]
add rax, rdx
mov rcx, rax
call method.std::basic_ios_char__std::char_traits_char___.operator_void___const
test rax, rax
setne al
test al, al
jne 0x403bcc
lea rax, [rbp + 0x60]
mov rcx, rax
call method.std::basic_ifstream_char__std::char_traits_char___.close__
lea rax, [rbp + 0x240]
mov rcx, rax
call fcn.004538f0
movzx eax, byte [rbp + 0x36f]
xor eax, 1
test al, al
je 0x403d16
mov ecx, 0
mov rax, qword [sym.imp.KERNEL32.dll_ExitProcess]
call rax
lea rax, [rbp + 0x10]
mov r8d, 0x50
mov edx, 0
mov rcx, rax
call sym.memset
mov eax, 0x50
mov dword [rbp + 0x10], eax
lea rax, [sym.WndProc_HWND____unsigned_int__unsigned_long_long__long_long_]
mov qword [rbp + 0x18], rax
mov rax, qword [rbp + 0x390]
mov qword [rbp + 0x28], rax
mov edx, 0x7f00
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_LoadCursorA]
call rax
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x40], 6
lea rax, str.WindowClass
mov qword [rbp + 0x50], rax
mov edx, 0x7f00
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_LoadIconA]
call rax
mov qword [rbp + 0x30], rax
mov edx, 0x7f00
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_LoadIconA]
call rax
mov qword [rbp + 0x58], rax
lea rax, [rbp + 0x10]
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_RegisterClassExA]
call rax
test ax, ax
sete al
test al, al
je 0x403de9
mov r9d, 0x30
lea r8, str.Error_
lea rdx, str.Window_Registration_Failed_
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_MessageBoxA]
call rax
mov ebx, 0
jmp 0x40425a
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_GetSystemMetrics]
call rax
mov dword [rbp + 0x368], eax
mov ecx, 1
mov rax, qword [sym.imp.USER32.dll_GetSystemMetrics]
call rax
mov dword [rbp + 0x364], eax
mov dword [rbp + 0x360], 0xd6
mov dword [rbp + 0x35c], 0xad
mov eax, dword [rbp + 0x368]
sub eax, dword [rbp + 0x360]
mov ecx, eax
mov edx, 0x55555556
mov eax, ecx
imul edx
mov eax, ecx
sar eax, 0x1f
sub edx, eax
mov eax, edx
mov dword [rbp + 0x358], eax
mov eax, dword [rbp + 0x364]
sub eax, dword [rbp + 0x35c]
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
mov dword [rbp + 0x354], eax
mov qword [rsp + 0x58], 0
mov rax, qword [rbp + 0x390]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov eax, dword [rbp + 0x35c]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0x360]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp + 0x354]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x358]
mov dword [rsp + 0x20], eax
mov r9d, 0x90000000
lea r8, str.Caption
lea rdx, str.WindowClass
mov ecx, 0x20
mov rax, qword [sym.imp.USER32.dll_CreateWindowExA]
call rax
mov qword [rbp + 0x348], rax
mov rax, qword [rbp + 0x390]
mov qword [0x004b2048], rax
mov rax, qword [rbp + 0x348]
mov qword [0x004b2040], rax
lea rax, [rbp + 0x31f]
mov rcx, rax
call fcn.00449f20
lea rdx, [rbp + 0x31f]
lea rax, [rbp + 0x310]
mov r8, rdx
lea rdx, [0x00490024]
mov rcx, rax
call sym.std::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_char_const__std::allocator_char__const_
lea rax, [rbp + 0x337]
mov rcx, rax
call fcn.00449f20
lea rdx, [rbp + 0x337]
lea rax, [rbp + 0x320]
mov r8, rdx
lea rdx, [0x00490024]
mov rcx, rax
call sym.std::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_char_const__std::allocator_char__const_
lea rcx, [rbp + 0x310]
lea rdx, [rbp + 0x320]
lea rax, [rbp + 0x300]
mov r8, rcx
mov rcx, rax
call method.Accounts.Accounts_std::string_const__std::string_const_
lea rax, [rbp + 0x300]
mov rdx, rax
lea rcx, [0x004b2050]
call method.std::vector_Accounts__std::allocator_Accounts___.push_back_Accounts_const_
lea rax, [rbp + 0x300]
mov rcx, rax
call method.Accounts.Accounts__
lea rax, [rbp + 0x320]
mov rcx, rax
call fcn.004538f0
lea rax, [rbp + 0x337]
mov rcx, rax
call sym.std::allocator_char_::allocator__
lea rax, [rbp + 0x310]
mov rcx, rax
call fcn.004538f0
lea rax, [rbp + 0x31f]
mov rcx, rax
call sym.std::allocator_char_::allocator__
call sym.Load__
mov rdx, qword [0x004b2048]
mov rax, qword [0x004b2040]
mov rcx, rax
call sym.UpdateList_HWND____HINSTANCE___
mov r8d, dword [rbp + 0x354]
mov ecx, dword [rbp + 0x358]
mov rax, qword [rbp + 0x348]
mov dword [rsp + 0x30], 0x40
mov edx, dword [rbp + 0x35c]
mov dword [rsp + 0x28], edx
mov edx, dword [rbp + 0x360]
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, ecx
mov rdx, 0xffffffffffffffff
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_SetWindowPos]
call rax
mov rax, qword [rbp + 0x348]
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [sym.AdjustWindowPosition_void_]
mov edx, 0
mov ecx, 0
mov rax, qword [sym.imp.KERNEL32.dll_CreateThread]
call rax
mov qword [rbp + 0x340], rax
cmp qword [rbp + 0x340], 0
jne 0x4040af
mov r9d, 0x30
lea r8, str.Error_
lea rdx, str.Failed_to_create_adjust_thread_
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_MessageBoxA]
call rax
mov ebx, 0
jmp 0x40425a
cmp qword [rbp + 0x348], 0
jne 0x4040e5
mov r9d, 0x30
lea r8, str.Error_
lea rdx, str.Window_Creation_Failed_
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_MessageBoxA]
call rax
mov ebx, 0
jmp 0x40425a
mov edx, 0x65
mov rcx, qword [rbp + 0x390]
mov rax, qword [sym.imp.USER32.dll_LoadBitmapA]
call rax
mov qword [rbp + 0x338], rax
cmp qword [rbp + 0x338], 0
jne 0x404137
mov r9d, 0x30
lea r8, str.Error_
lea rdx, str.Failed_to_load_image_
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_MessageBoxA]
call rax
mov ebx, 0
jmp 0x40425a
mov qword [rsp + 0x58], 0
mov rax, qword [rbp + 0x390]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], 0
mov rax, qword [rbp + 0x348]
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x1e0
mov dword [rsp + 0x30], 0x280
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9d, 0x5000000e
mov r8d, 0
lea rdx, str.STATIC
mov ecx, 0
mov rax, qword [sym.imp.USER32.dll_CreateWindowExA]
call rax
mov qword [0x004b2068], rax
mov rdx, qword [rbp + 0x338]
mov rax, qword [0x004b2068]
mov r9, rdx
mov r8d, 0
mov edx, 0x172
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_SendMessageA]
call rax
mov rax, qword [rbp + 0x348]
mov r9d, 1
mov r8d, 0
mov edx, 0xffffff
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
call rax
jmp 0x404217
lea rax, [rbp - 0x20]
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_TranslateMessage]
call rax
lea rax, [rbp - 0x20]
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_DispatchMessageA]
call rax
lea rax, [rbp - 0x20]
mov r9d, 0
mov r8d, 0
mov edx, 0
mov rcx, rax
mov rax, qword [sym.imp.USER32.dll_GetMessageA]
call rax
test eax, eax
setg al
test al, al
jne 0x4041f7
mov rax, qword [rbp + 0x338]
mov rcx, rax
mov rax, qword [sym.imp.GDI32.dll_DeleteObject]
call rax
mov rax, qword [rbp - 0x10]
mov ebx, eax
lea rax, [rbp + 0x60]
mov rcx, rax
call fcn.00461310
lea rax, [rbp + 0x250]
mov rcx, rax
call fcn.004538f0
lea rax, [rbp + 0x260]
mov rcx, rax
call fcn.004538f0
lea rax, [rbp + 0x270]
mov rcx, rax
call fcn.004538f0
lea rax, [rbp + 0x280]
mov rcx, rax
call fcn.004538f0
mov eax, ebx
jmp 0x40442f
add rsp, 0x3f8
pop rbx
pop rbp
ret