Function at 0x402290
Capabilities:
Accept command line arguments
Delete file
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x55ec10
mov eax, dword fs:[0]
push eax
sub esp, 0x194
mov eax, dword [0x5b5be8]
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
xor edi, edi
push edi
push edi
mov ebx, ecx
push 0x66
mov dword [ebp - 0x178], ebx
call fcn.00437997
mov dword [ebp - 4], edi
mov dword [ebx], vtable.CNewLauncherDlg.0
mov dword [ebx + 0x94], vtable.CNewLauncherDlg.1.0
mov dword [ebx + 0x15c], edi
mov dword [ebx + method.CNewLauncherDlg::XHostUIHandler.virtual_0], vtable.CNewLauncherDlg::XHostUIHandler.0
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40230e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x164], eax
mov byte [ebp - 4], 1
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40233e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x16c], eax
mov byte [ebp - 4], 2
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40236e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x170], eax
mov byte [ebp - 4], 3
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40239e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x174], eax
mov byte [ebp - 4], 4
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4023ce
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x178], eax
mov byte [ebp - 4], 5
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4023fe
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x17c], eax
mov byte [ebp - 4], 6
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40242e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x180], eax
mov byte [ebp - 4], 7
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40245e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x184], eax
mov byte [ebp - 4], 8
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40248e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x188], eax
mov byte [ebp - 4], 9
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4024be
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x18c], eax
mov byte [ebp - 4], 0xa
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4024ee
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x190], eax
mov byte [ebp - 4], 0xb
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40251e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x194], eax
mov byte [ebp - 4], 0xc
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40254e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x198], eax
mov byte [ebp - 4], 0xd
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40257e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x19c], eax
mov byte [ebp - 4], 0xe
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4025ae
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1a0], eax
mov byte [ebp - 4], 0xf
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4025de
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1a4], eax
mov byte [ebp - 4], 0x10
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40260e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1a8], eax
mov byte [ebp - 4], 0x11
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40263e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1b0], eax
mov byte [ebp - 4], 0x12
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40266e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1b4], eax
mov byte [ebp - 4], 0x13
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40269e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1b8], eax
mov byte [ebp - 4], 0x14
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4026ce
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1bc], eax
mov byte [ebp - 4], 0x15
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4026fe
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1c0], eax
mov byte [ebp - 4], 0x16
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40272e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1c4], eax
mov byte [ebp - 4], 0x17
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40275e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1c8], eax
mov byte [ebp - 4], 0x18
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40278e
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1cc], eax
mov byte [ebp - 4], 0x19
lea esi, [ebx + 0x1d0]
mov dword [ebp - 0x17c], esi
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x4027ca
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esi], eax
lea esi, [ebx + 0x1d4]
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0x190], esi
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x402802
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 0x1b
lea esi, [ebx + 0x1d8]
mov dword [ebp - 0x174], esi
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40283a
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 0x1c
mov byte [ebx + 0x1dc], 0
mov byte [ebx + 0x1de], 0
call fcn.0043f961
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x402874
push 0x80004005
call fcn.0040c7d0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1e4], eax
mov byte [ebp - 4], 0x1d
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push edi
push 0x401f70
push 7
call dword [sym.imp.USER32.dll_SetWindowsHookExA]
mov dword [ebx + 0x158], eax
call fcn.00441468
call fcn.00441468
mov eax, dword [eax + 0xc]
push 0x80
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
push 0x104
lea ecx, [ebp - 0x118]
push edi
push ecx
mov dword [ebx + 0x154], eax
call fcn.00535390
add esp, 0xc
lea edi, [ebp - 0x118]
call fcn.00414890
test al, al
je 0x402942
mov eax, edi
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4028f0
sub eax, edx
mov edi, eax
lea eax, [ebp - 0x118]
mov esi, 0x5b7610
call fcn.00409b10
mov ecx, dword [0x5b7624]
mov eax, dword [0x5b7610]
mov edx, eax
cmp ecx, 0x10
jae 0x40291f
mov edx, esi
add edx, dword [0x5b7620]
cmp ecx, 0x10
jae 0x40292f
mov eax, 0x5b7610
cmp eax, edx
je 0x402956
cmp byte [eax], 0x5c
jne 0x40293b
mov byte [eax], 0x2f
inc eax
cmp eax, edx
jne 0x402933
jmp 0x402956
mov edi, 2
mov eax, 0x58bdf8
mov esi, 0x5b7610
call fcn.00409b10
call fcn.004111b0
mov ecx, 0x5b7664
xor edi, edi
mov dword [0x5be6a4], edi
mov dword [0x5be6a0], ecx
mov dword [0x5be6a8], 0x5b7608
call fcn.00414b40
push 0x6d
push str._form_actionaction:__LAUNCH___input_classLAUNCH_BUTTON_namelaunch_typesubmit_valueLaunch___form_
lea ecx, [ebx + 0x17c]
mov byte [ebx + 0x1ac], 0
mov byte [ebx + 0x168], 1
call fcn.0040c6d0
push 0x6d
push str._form_actionaction:__CONFIG___input_classCONFIG_BUTTON_nameconfig_typesubmit_valueConfig___form_
lea ecx, [ebx + 0x170]
call fcn.0040c6d0
push 0x69
push str._form_actionaction:__CHECK___input_classCHECK_BUTTON_namecheck_typesubmit_valueCheck___form_
lea ecx, [ebx + 0x174]
call fcn.0040c6d0
push 0x75
push str._form_actionaction:__REPACKING___input_classREPACKING_BUTTON_namecheck_typesubmit_valueRepacking___form_
lea ecx, [ebx + 0x178]
call fcn.0040c6d0
push 0x17
push str._ip:world01.rappelz.com
lea ecx, [ebx + 0x1b0]
call fcn.0040c6d0
push 0x70
push str._form_actionaction:__START___input_classSTART_BUTTON_namestart_typesubmit_valueStart_Update___form_
lea ecx, [ebx + 0x16c]
call fcn.0040c6d0
push 0x8b
push str._table_width100____td__center_Downloading_:__font_size_3_faceSmall_Fonts_stylefont_size:8px___s__font____d_s___center___td___table_
lea ecx, [ebx + 0x180]
call fcn.0040c6d0
push 0x81
push str._table_width100____td__center_Checking_:__font_size_3_faceSmall_Fonts_stylefont_size:8px___s__font___center___td___table_
lea ecx, [ebx + 0x184]
call fcn.0040c6d0
push 0x82
push str._table_width100____td__center_Repacking_:__font_size_3_faceSmall_Fonts_stylefont_size:8px___s__font___center___td___table_
lea ecx, [ebx + 0x188]
call fcn.0040c6d0
push 0x3c
push str._table_width100____td__center___d__d___center___td___table_
lea ecx, [ebx + 0x18c]
call fcn.0040c6d0
push 0x57
push str._a_href_action:__WINDOWMODECHK____img_src_img_btn_window.gif__width51_height22___a_
lea ecx, [ebx + 0x1a4]
call fcn.0040c6d0
push 0x5d
push str._a_href_action:__WINDOWMODEOFF____img_src_img_btn_window_check.gif__width51_height22___a_
lea ecx, [ebx + 0x1a8]
call fcn.0040c6d0
push 0x26
push str.Are_you_sure_to_quit_Rappelz_Launcher_
lea ecx, [ebx + 0x1b4]
call fcn.0040c6d0
push 0xf
push str.Update_Complete
lea ecx, [ebx + 0x1bc]
call fcn.0040c6d0
push 0xf
push str.Already_Updated
lea ecx, [ebx + 0x1c0]
call fcn.0040c6d0
push 0x20
push str.Launcher_upated._restart_please.
lea ecx, [ebx + 0x1b8]
call fcn.0040c6d0
push 0xa
push str.SFrame.exe
lea ecx, [ebx + 0x194]
call fcn.0040c6d0
push 0x2c
push str.__a_hrefaction:__CONTINUE__Continue__a__
lea ecx, [ebx + 0x198]
call fcn.0040c6d0
push 0x20
push str.Receiving_updated_information...
lea ecx, [ebx + 0x19c]
call fcn.0040c6d0
push 0x21
push str.Receiving_checking_information...
lea ecx, [ebx + 0x1a0]
call fcn.0040c6d0
push 0x6a
push str.The_recovery_process_will_be_last_more_than_30_minutes_depending_on_the_PC_performance._Will_you_continue_
lea ecx, [ebx + 0x1c4]
call fcn.0040c6d0
push 0x47
push str.Other_process_is_running._Please_try_again_after_finishing_the_process.
lea ecx, [ebx + 0x1c8]
call fcn.0040c6d0
push 0xd2
push str.Optimizing_the_packing_files_will_save__dMB_of_hard_disk_storage._This_process_needs_about__dMB_of_additional_storage_space__and_may_last_more_than_30_minutes_depending_on_the_PC_performance._Will_you_continue_
lea ecx, [ebx + 0x1cc]
call fcn.0040c6d0
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov esi, eax
mov ecx, esi
mov dword [ebp - 0x15c], edi
mov dword [ebp - 0x158], 0xf
mov byte [ebp - 0x16c], 0
lea edi, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402b60
sub ecx, edi
mov eax, esi
mov edi, ecx
lea esi, [ebp - 0x16c]
call fcn.00409b10
xor eax, eax
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x184], eax
push 1
push 1
mov edi, esi
mov byte [ebp - 4], 0x1f
call fcn.00401280
mov ecx, dword [ebp - 0x16c]
add esp, 8
cmp dword [ebp - 0x158], 0x10
jae 0x402baf
mov ecx, esi
lea edx, [ebp - 0x18c]
push 0x58c574
push edx
call fcn.00422480
mov edx, dword [ebp - 0x18c]
add esp, 8
cmp dword [edx + 0x14], 0x10
jb 0x402bd1
mov edx, dword [edx]
test edx, edx
jne 0x402bd9
xor eax, eax
jmp 0x402be9
mov eax, edx
lea esi, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x402be0
sub eax, esi
push eax
push edx
lea ecx, [ebx + 0x164]
call fcn.0040c6d0
mov edi, dword [ebp - 0x188]
cmp dword [ebp - 0x18c], edi
je 0x402c33
mov eax, dword [ebp - 0x174]
push eax
mov eax, dword [ebp - 0x18c]
push edi
mov ecx, edi
call fcn.0040b580
add esp, 8
mov dword [ebp - 0x170], eax
call fcn.0040a8a0
mov ecx, dword [ebp - 0x170]
mov dword [ebp - 0x188], ecx
mov ecx, dword [ebx + 0x164]
lea edx, [ebp - 0x18c]
push 0x58c56c
push edx
call fcn.00422480
mov esi, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x188]
sub ecx, esi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
lea eax, [esi + ecx*4 - 0x1c]
add esp, 8
cmp dword [eax + 0x14], 0x10
jb 0x402c85
mov edx, dword [eax]
jmp 0x402c87
mov edx, eax
test edx, edx
jne 0x402c8f
xor eax, eax
jmp 0x402c9d
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x402c94
sub eax, esi
push eax
push edx
lea ecx, [ebx + 0x164]
call fcn.0040c6d0
mov esi, dword [ebx + 0x164]
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402cb5
sub ecx, edx
mov eax, esi
mov edi, ecx
mov esi, 0x5b7668
call fcn.00409b10
mov dword [0x5b7684], 0x5be6a0
mov esi, dword [ebx + 0x164]
mov ecx, esi
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402ce1
sub ecx, edi
mov eax, esi
mov edi, ecx
mov esi, 0x5b75d0
call fcn.00409b10
push 0x58c578
lea eax, [ebx + 0x164]
push eax
lea edx, [ebp - 0x170]
push edx
call fcn.0040c3f0
mov eax, dword [eax]
add esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x170]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x402d3e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edi, 7
mov eax, str.http:__
mov esi, 0x5b7840
call fcn.00409b10
xor eax, eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 0x198], eax
lea ecx, [ebp - 0x1a0]
push ecx
mov byte [ebp - 4], 0x20
call fcn.004020a0
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x1a0]
add esp, 4
cmp eax, ecx
je 0x4032dc
sub ecx, eax
xor ebx, ebx
mov edi, ecx
lea esi, [ebp - 0x150]
mov dword [ebp - 0x13c], 0xf
mov dword [ebp - 0x140], ebx
mov byte [ebp - 0x150], bl
call fcn.00409b10
mov byte [ebp - 4], 0x21
test byte [0x5be914], 1
jne 0x402de7
or dword [0x5be914], 1
push 0x560b30
mov dword [0x5be904], ebx
mov dword [0x5be908], ebx
mov dword [0x5be90c], ebx
call fcn.00532226
add esp, 4
mov eax, 0x58c588
lea esp, [esp]
inc eax
cmp byte [eax], 0
jne 0x402df0
sub eax, 0x58c588
mov ecx, eax
mov eax, 0x58bd25
inc eax
cmp byte [eax], 0
jne 0x402e02
sub eax, 0x58bd25
push eax
push ecx
lea ebx, [ebp - 0x150]
call fcn.0040b910
mov ecx, dword [ebp - 0x150]
mov esi, 0x10
add esp, 8
cmp dword [ebp - 0x13c], esi
jae 0x402e32
mov ecx, ebx
push 1
push 1
push 0x58c58c
push 0x5be904
call fcn.0040b400
mov edi, dword [0x5be908]
mov ebx, dword [0x5be904]
mov ecx, edi
sub ecx, ebx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
add esp, 0x10
cmp eax, 5
jb 0x402f9a
cmp dword [ebx + 0x14], esi
jb 0x402e7d
mov edi, dword [ebx]
jmp 0x402e7f
mov edi, ebx
call fcn.00424920
mov esi, eax
mov ebx, dword [esi]
test ebx, ebx
je 0x402ec8
mov edx, dword [ebx]
mov eax, dword [edx + 4]
mov ecx, ebx
call eax
mov dword [ebx + 0x20], str.XEnv.cpp_:_XEnvStruct::Set
mov dword [ebx + 0x24], 0x3e9
mov dword [ebp - 0x170], ebx
mov byte [ebp - 4], 0x22
mov esi, dword [esi]
mov ecx, edi
mov edi, 0x58c590
call fcn.00426100
mov byte [ebp - 4], 0x21
mov edx, dword [ebx]
mov eax, dword [edx + 0xc]
mov ecx, ebx
call eax
mov eax, dword [0x5be904]
cmp dword [eax + 0x30], 0x10
jb 0x402ed8
mov edi, dword [eax + 0x1c]
jmp 0x402edb
lea edi, [eax + 0x1c]
call fcn.00424920
mov esi, eax
mov ebx, dword [esi]
test ebx, ebx
je 0x402f24
mov edx, dword [ebx]
mov eax, dword [edx + 4]
mov ecx, ebx
call eax
mov dword [ebx + 0x20], str.XEnv.cpp_:_XEnvStruct::Set
mov dword [ebx + 0x24], 0x3e9
mov dword [ebp - 0x170], ebx
mov byte [ebp - 4], 0x23
mov esi, dword [esi]
mov ecx, edi
mov edi, str.start_page
call fcn.00426100
mov byte [ebp - 4], 0x21
mov edx, dword [ebx]
mov eax, dword [edx + 0xc]
mov ecx, ebx
call eax
mov edi, dword [0x5be904]
add edi, 0x38
mov ecx, str.ftp:__
call fcn.0040b290
test al, al
je 0x402f4f
mov edi, 6
mov eax, str.ftp:__
mov esi, 0x5b7840
call fcn.00409b10
mov eax, dword [0x5be904]
add eax, 0x54
mov esi, 0x10
cmp dword [eax + 0x14], esi
jb 0x402f63
mov eax, dword [eax]
push eax
call fcn.00532dcf
mov dword [0x5b75ac], eax
mov eax, dword [0x5be904]
add eax, 0x70
add esp, 4
cmp dword [eax + 0x14], esi
jb 0x402f80
mov eax, dword [eax]
push eax
call fcn.00532dcf
mov edi, dword [0x5be908]
mov ebx, dword [0x5be904]
add esp, 4
mov dword [0x5b75b0], eax
sub edi, ebx
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ecx, 0x10
jb 0x4032ba
cmp dword [ebx + 0xa0], 0x10
lea eax, [ebx + 0x8c]
jb 0x402fc9
mov eax, dword [eax]
push eax
lea edx, [ebp - 0x134]
push edx
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b76ac
mov byte [ebp - 4], 0x24
call fcn.00409e50
mov ebx, 8
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x403009
mov eax, dword [ebp - 0x134]
push eax
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0xa8
cmp dword [eax + 0x14], 0x10
jb 0x40301b
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x134]
push ecx
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b76c8
mov byte [ebp - 4], 0x25
call fcn.00409e50
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x403056
mov edx, dword [ebp - 0x134]
push edx
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0xc4
cmp dword [eax + 0x14], 0x10
jb 0x403068
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x134]
push eax
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b76e4
mov byte [ebp - 4], 0x26
call fcn.00409e50
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x4030a3
mov ecx, dword [ebp - 0x134]
push ecx
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0xe0
cmp dword [eax + 0x14], 0x10
jb 0x4030b5
mov eax, dword [eax]
push eax
lea edx, [ebp - 0x134]
push edx
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b7700
mov byte [ebp - 4], 0x27
call fcn.00409e50
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x4030f0
mov eax, dword [ebp - 0x134]
push eax
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0xfc
cmp dword [eax + 0x14], 0x10
jb 0x403102
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x134]
push ecx
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b771c
mov byte [ebp - 4], 0x28
call fcn.00409e50
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x40313d
mov edx, dword [ebp - 0x134]
push edx
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0x118
cmp dword [eax + 0x14], 0x10
jb 0x40314f
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x134]
push eax
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b7738
mov byte [ebp - 4], 0x29
call fcn.00409e50
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x40318a
mov ecx, dword [ebp - 0x134]
push ecx
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0x134
cmp dword [eax + 0x14], 0x10
jb 0x40319c
mov eax, dword [eax]
push eax
lea edx, [ebp - 0x134]
push edx
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b7754
mov byte [ebp - 4], 0x2a
call fcn.00409e50
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x4031d7
mov eax, dword [ebp - 0x134]
push eax
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0x150
cmp dword [eax + 0x14], 0x10
jb 0x4031e9
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x134]
push ecx
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b7770
mov byte [ebp - 4], 0x2b
call fcn.00409e50
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x403224
mov edx, dword [ebp - 0x134]
push edx
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0x16c
cmp dword [eax + 0x14], 0x10
jb 0x403236
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x134]
push eax
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b778c
mov byte [ebp - 4], 0x2c
call fcn.00409e50
mov byte [ebp - 4], 0x21
cmp dword [ebp - 0x120], ebx
jb 0x403271
mov ecx, dword [ebp - 0x134]
push ecx
call fcn.004310e1
add esp, 4
mov eax, dword [0x5be904]
add eax, 0x188
cmp dword [eax + 0x14], 0x10
jb 0x403283
mov eax, dword [eax]
push eax
lea edx, [ebp - 0x134]
push edx
call fcn.00401320
add esp, 8
mov edi, eax
mov esi, 0x5b77a8
mov byte [ebp - 4], 0x2d
call fcn.00409e50
cmp dword [ebp - 0x120], ebx
jb 0x4032ba
mov eax, dword [ebp - 0x134]
push eax
call fcn.004310e1
add esp, 4
mov byte [ebp - 4], 0x20
cmp dword [ebp - 0x13c], 0x10
jb 0x4032d6
mov ecx, dword [ebp - 0x150]
push ecx
call fcn.004310e1
add esp, 4
mov ebx, dword [ebp - 0x178]
test byte [0x5be900], 1
mov esi, 1
jne 0x40332c
or dword [0x5be900], esi
push 0x58
mov byte [ebp - 4], 0x2e
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x170], eax
mov byte [ebp - 4], 0x2f
test eax, eax
je 0x403314
push eax
call fcn.00423b70
jmp 0x403316
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
push 0
push 0x5be8fc
mov ecx, str.data.dll
call fcn.00424e40
test byte [0x5be900], 1
jne 0x403388
or dword [0x5be900], esi
push 0x58
mov byte [ebp - 4], 0x30
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x170], eax
mov byte [ebp - 4], 0x31
test eax, eax
je 0x403370
push eax
call fcn.00423b70
jmp 0x403372
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
push esi
push 0x5be8fc
mov ecx, str.data.00Z
call fcn.00424e40
test byte [0x5be900], 1
jne 0x4033e3
or dword [0x5be900], esi
push 0x58
mov byte [ebp - 4], 0x32
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x170], eax
mov byte [ebp - 4], 0x33
test eax, eax
je 0x4033cb
push eax
call fcn.00423b70
jmp 0x4033cd
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
xor edx, edx
mov ecx, 0x5be8fc
call fcn.00425330
test byte [0x5be900], 1
jne 0x40343a
or dword [0x5be900], esi
push 0x58
mov byte [ebp - 4], 0x34
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x170], eax
mov byte [ebp - 4], 0x35
test eax, eax
je 0x403422
push eax
call fcn.00423b70
jmp 0x403424
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
push str.app.crt_locale
lea edx, [ebp - 0x134]
push edx
push 0x5be8fc
mov ecx, 0x58bd25
call fcn.00424710
mov edi, 0x10
cmp dword [eax + 0x14], edi
jb 0x403461
mov eax, dword [eax]
push eax
push 2
call fcn.005338bd
add esp, 8
cmp dword [ebp - 0x120], edi
jb 0x403483
mov eax, dword [ebp - 0x134]
push eax
call fcn.004310e1
add esp, 4
test byte [0x5be900], 1
jne 0x4034ce
or dword [0x5be900], esi
push 0x58
mov byte [ebp - 4], 0x36
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x170], eax
mov byte [ebp - 4], 0x37
test eax, eax
je 0x4034b6
push eax
call fcn.00423b70
jmp 0x4034b8
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
push str.app.crt_locale
lea ecx, [ebp - 0x134]
push ecx
push 0x5be8fc
mov ecx, 0x58bd25
call fcn.00424710
mov byte [ebp - 4], 0x38
cmp dword [eax + 0x14], edi
jb 0x4034f4
mov eax, dword [eax]
push eax
lea edx, [ebp - 0x150]
push edx
call fcn.00401320
mov esi, 8
add esp, 8
cmp dword [eax + 0x14], esi
jb 0x403510
mov eax, dword [eax]
push eax
push 2
call fcn.00533a31
add esp, 8
cmp dword [ebp - 0x13c], esi
jb 0x403532
mov eax, dword [ebp - 0x150]
push eax
call fcn.004310e1
add esp, 4
xor ecx, ecx
mov byte [ebp - 4], 0x20
mov dword [ebp - 0x13c], 7
mov dword [ebp - 0x140], 0
mov word [ebp - 0x150], cx
cmp dword [ebp - 0x120], edi
jb 0x40356a
mov edx, dword [ebp - 0x134]
push edx
call fcn.004310e1
add esp, 4
test byte [0x5be900], 1
jne 0x4035b6
or dword [0x5be900], 1
push 0x58
mov byte [ebp - 4], 0x39
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x170], eax
mov byte [ebp - 4], 0x3a
test eax, eax
je 0x40359e
push eax
call fcn.00423b70
jmp 0x4035a0
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
push 0x58c590
lea eax, [ebp - 0x134]
push eax
push 0x5be8fc
mov ecx, str.RAPPELZ
call fcn.00424710
mov byte [ebp - 4], 0x3b
cmp dword [eax + 0x14], edi
jb 0x4035de
mov edx, dword [eax]
jmp 0x4035e0
mov edx, eax
test edx, edx
jne 0x4035e8
xor eax, eax
jmp 0x4035f9
mov eax, edx
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4035f0
sub eax, esi
mov ecx, dword [ebp - 0x17c]
push eax
push edx
call fcn.0040c6d0
mov byte [ebp - 4], 0x20
cmp dword [ebp - 0x120], edi
jb 0x403621
mov ecx, dword [ebp - 0x134]
push ecx
call fcn.004310e1
add esp, 4
test byte [0x5be900], 1
jne 0x40366d
or dword [0x5be900], 1
push 0x58
mov byte [ebp - 4], 0x3c
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x17c], eax
mov byte [ebp - 4], 0x3d
test eax, eax
je 0x403655
push eax
call fcn.00423b70
jmp 0x403657
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
push str.start_page
lea edx, [ebp - 0x134]
push edx
push 0x5be8fc
mov ecx, 0x58bd25
call fcn.00424710
mov byte [ebp - 4], 0x3e
cmp dword [eax + 0x14], edi
jb 0x403695
mov edx, dword [eax]
jmp 0x403697
mov edx, eax
test edx, edx
jne 0x40369f
xor eax, eax
jmp 0x4036ad
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4036a4
sub eax, esi
mov ecx, dword [ebp - 0x190]
push eax
push edx
call fcn.0040c6d0
mov byte [ebp - 4], 0x20
cmp dword [ebp - 0x120], edi
jb 0x4036d5
mov eax, dword [ebp - 0x134]
push eax
call fcn.004310e1
add esp, 4
test byte [0x5be900], 1
jne 0x403721
or dword [0x5be900], 1
push 0x58
mov byte [ebp - 4], 0x3f
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x17c], eax
mov byte [ebp - 4], 0x40
test eax, eax
je 0x403709
push eax
call fcn.00423b70
jmp 0x40370b
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
push str.update_server
lea ecx, [ebp - 0x134]
push ecx
push 0x5be8fc
mov ecx, 0x58bd25
call fcn.00424710
mov byte [ebp - 4], 0x41
cmp dword [eax + 0x14], edi
jb 0x403749
mov edx, dword [eax]
jmp 0x40374b
mov edx, eax
test edx, edx
jne 0x403753
xor eax, eax
jmp 0x403761
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x403758
sub eax, esi
mov ecx, dword [ebp - 0x174]
push eax
push edx
call fcn.0040c6d0
mov byte [ebp - 4], 0x20
cmp dword [ebp - 0x120], edi
jb 0x403789
mov edx, dword [ebp - 0x134]
push edx
call fcn.004310e1
add esp, 4
test byte [0x5be900], 1
jne 0x4037d5
or dword [0x5be900], 1
push 0x58
mov byte [ebp - 4], 0x42
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x174], eax
mov byte [ebp - 4], 0x43
test eax, eax
je 0x4037bd
push eax
call fcn.00423b70
jmp 0x4037bf
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
mov ecx, dword [0x5be8fc]
mov edi, dword [0x5b75ac]
test ecx, ecx
je 0x40382c
mov eax, dword [ecx]
mov edx, dword [eax + 4]
mov esi, ecx
call edx
mov dword [esi + 0x20], str.XEnv.cpp_:_XEnvStruct::GetInt
mov dword [esi + 0x24], 0x495
mov dword [ebp - 0x174], esi
push edi
mov byte [ebp - 4], 0x44
mov ecx, dword [0x5be8fc]
push str.app.width
call fcn.004242f0
mov byte [ebp - 4], 0x20
mov edi, eax
mov eax, dword [esi]
mov edx, dword [eax + 0xc]
mov ecx, esi
call edx
mov ecx, dword [0x5be8fc]
test byte [0x5be900], 1
mov dword [0x5b75ac], edi
jne 0x403884
or dword [0x5be900], 1
push 0x58
mov byte [ebp - 4], 0x45
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x174], eax
mov byte [ebp - 4], 0x46
test eax, eax
je 0x403866
push eax
call fcn.00423b70
jmp 0x403868
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
mov byte [ebp - 4], 0x20
mov ecx, dword [0x5be8fc]
add esp, 4
mov eax, dword [0x5b75b0]
mov edi, eax
test ecx, ecx
je 0x4038d2
mov eax, dword [ecx]
mov edx, dword [eax + 4]
mov esi, ecx
call edx
mov dword [esi + 0x20], str.XEnv.cpp_:_XEnvStruct::GetInt
mov dword [esi + 0x24], 0x495
mov dword [ebp - 0x174], esi
push edi
mov byte [ebp - 4], 0x47
mov ecx, dword [0x5be8fc]
push str.app.heigth
call fcn.004242f0
mov byte [ebp - 4], 0x20
mov edi, eax
mov eax, dword [esi]
mov edx, dword [eax + 0xc]
mov ecx, esi
call edx
mov eax, edi
mov dword [0x5b75b0], eax
mov eax, dword [ebp - 0x190]
lea ecx, [ebx + 0x9c]
push eax
call fcn.0040c260
mov esi, str.data.00A
call fcn.00414820
mov esi, str.data.00B
mov dword [0x5be5a4], eax
call fcn.00414820
mov esi, str.data.00C
mov dword [0x5be5a8], eax
call fcn.00414820
push str.._rappelz_v1.opt
push 0
push str.GRAPHIC_WINMODE
push str.RAPPELZ
mov dword [0x5be5ac], eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
sete cl
test byte [0x5be900], 1
mov byte [ebx + 0x1dd], cl
mov byte [ebx + 0x1df], 0
mov dword [ebx + 0x1e0], 0
jne 0x403995
or dword [0x5be900], 1
push 0x58
mov byte [ebp - 4], 0x48
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x174], eax
mov byte [ebp - 4], 0x49
test eax, eax
je 0x40397d
push eax
call fcn.00423b70
jmp 0x40397f
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
mov ecx, dword [0x5be8fc]
test ecx, ecx
jne 0x4039a3
xor edi, edi
jmp 0x4039e5
mov edx, dword [ecx]
mov eax, dword [edx + 4]
mov esi, ecx
call eax
mov dword [esi + 0x20], str.XEnv.cpp_:_XEnvStruct::GetInt
mov dword [esi + 0x24], 0x495
mov dword [ebp - 0x174], esi
push 0
mov byte [ebp - 4], 0x4a
mov ecx, dword [0x5be8fc]
push str.checking.able
call fcn.004242f0
mov byte [ebp - 4], 0x20
mov edx, dword [esi]
mov edi, eax
mov eax, dword [edx + 0xc]
mov ecx, esi
call eax
test byte [0x5be900], 1
mov dword [ebx + 0x1e8], edi
jne 0x403a37
or dword [0x5be900], 1
push 0x58
mov byte [ebp - 4], 0x4b
call fcn.004310a7
add esp, 4
mov dword [ebp - 0x174], eax
mov byte [ebp - 4], 0x4c
test eax, eax
je 0x403a1f
push eax
call fcn.00423b70
jmp 0x403a21
xor eax, eax
push 0x560d70
mov dword [0x5be8fc], eax
call fcn.00532226
add esp, 4
mov byte [ebp - 4], 0x20
mov ecx, dword [0x5be8fc]
test ecx, ecx
jne 0x403a45
xor edi, edi
jmp 0x403a87
mov edx, dword [ecx]
mov eax, dword [edx + 4]
mov esi, ecx
call eax
mov dword [esi + 0x20], str.XEnv.cpp_:_XEnvStruct::GetInt
mov dword [esi + 0x24], 0x495
mov dword [ebp - 0x174], esi
push 0
mov byte [ebp - 4], 0x4d
mov ecx, dword [0x5be8fc]
push str.checking.question_day
call fcn.004242f0
mov byte [ebp - 4], 0x20
mov edx, dword [esi]
mov edi, eax
mov eax, dword [edx + 0xc]
mov ecx, esi
call eax
push str.repacking.auto.min_mb
mov dword [ebx + 0x1ec], edi
call fcn.00424920
xor ebx, ebx
mov ecx, eax
call fcn.004247d0
mov esi, dword [ebp - 0x178]
push str.repacking.auto.requestion_day
mov dword [esi + 0x1f0], eax
call fcn.00424920
mov ecx, eax
call fcn.004247d0
mov dword [esi + 0x1f4], eax
mov eax, dword [ebp - 0x1a0]
test eax, eax
je 0x403ad6
push eax
call fcn.004310e1
add esp, 4
mov ebx, dword [ebp - 0x18c]
test ebx, ebx
je 0x403af6
mov edi, dword [ebp - 0x188]
mov eax, ebx
call fcn.0040a8a0
push ebx
call fcn.004310e1
add esp, 4
cmp dword [ebp - 0x158], 0x10
jb 0x403b0e
mov ecx, dword [ebp - 0x16c]
push ecx
call fcn.004310e1
add esp, 4
mov eax, esi
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.005320a3
mov esp, ebp
pop ebp
ret