Function at 0x4467c0
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4831f1
mov eax, dword fs:[0]
push eax
sub esp, 0x974
mov eax, dword [0x4a9d30]
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
mov ebx, ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x960], eax
mov eax, 1
mov word [ebx + 0x13c], ax
cmp dword [0x4ad084], 0
je 0x44681d
or eax, 0xffffffff
mov word [ebx + 0x13a], ax
jmp 0x447abc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
movsx ecx, word [ebx + 0x13a]
mov dword [ebp - 0x954], eax
lea eax, [ebx + 0x13a]
push ecx
mov dword [ebp - 0x94c], eax
lea eax, [ebp - 0x650]
push str.Start_Function_ID:__d
push eax
call fcn.00453b2a
mov ecx, dword [0x4ace8c]
lea eax, [ebp - 0x650]
add esp, 0xc
push eax
call fcn.00420910
mov esi, dword [ebx + 0x15e]
xor eax, eax
mov dword [ebp - 0x904], eax
cmp esi, 0x64
jle 0x4468ed
lea eax, [esi + 0xa]
mov ecx, 0xc
movd xmm0, eax
cvtdq2pd xmm0, xmm0
push 1
mulsd xmm0, qword [0x486a60]
cvttsd2si eax, xmm0
sub ecx, eax
push ecx
mov dword [ebp - 0x904], ecx
call fcn.00453bae
mov edi, eax
lea eax, [ebp - 0x904]
push 1
push eax
push edi
push esi
push dword [ebx + 0x15a]
call fcn.004204a0
mov eax, dword [ebp - 0x904]
add esp, 0x1c
cmp eax, esi
jge 0x4468cb
test eax, eax
jne 0x4468e6
push edi
mov dword [ebp - 0x904], 0
call fcn.00453bee
mov eax, dword [ebp - 0x904]
add esp, 4
test eax, eax
jle 0x4468f3
lea ecx, [eax + 0xc]
jmp 0x4468f6
mov edi, dword [ebp - 0x94c]
lea ecx, [esi + 0xc]
cmp word [ebx + 0x13c], 1
mov dword [ebp - 0x910], ecx
jne 0x446917
test eax, eax
jg 0x44690e
test esi, esi
jle 0x446917
add ecx, 0x10
mov dword [ebp - 0x910], ecx
push ecx
lea ecx, [ebp - 0x93c]
call fcn.00423690
movzx eax, word [ebx + 0x13a]
lea ecx, [ebp - 0x93c]
push eax
mov dword [ebp - 4], 0
call fcn.00423f70
movzx eax, word [ebx + 0x13c]
lea ecx, [ebp - 0x93c]
push eax
call fcn.00423f70
push dword [ebp - 0x904]
lea ecx, [ebp - 0x93c]
call fcn.00423f90
push esi
lea ecx, [ebp - 0x93c]
call fcn.00423f90
mov eax, dword [ebp - 0x904]
test eax, eax
jle 0x446a15
cmp word [ebx + 0x13c], 1
jne 0x4469fa
push dword [ebx]
push edi
push eax
lea eax, [ebp - 0x908]
push eax
call fcn.00420df0
add esp, 0x10
lea ecx, [ebp - 0x93c]
push 0xaaaaaaaa
call fcn.00423f90
push dword [ebp - 0x908]
lea ecx, [ebp - 0x93c]
call fcn.00423f90
push 0xaaaaaaaa
lea ecx, [ebp - 0x93c]
call fcn.00423f90
push dword [ebp - 0x904]
lea ecx, [ebp - 0x93c]
push edi
call fcn.00423ff0
push dword [ebp - 0x908]
lea ecx, [ebp - 0x93c]
call fcn.00423f90
push edi
call fcn.00453bee
add esp, 4
jmp 0x446aa7
push eax
push edi
lea ecx, [ebp - 0x93c]
call fcn.00423ff0
push edi
call fcn.00453bee
add esp, 4
jmp 0x446aa7
test esi, esi
jle 0x446aa7
cmp word [ebx + 0x13c], 1
jne 0x446a95
push dword [ebx]
lea eax, [ebp - 0x908]
push dword [ebx + 0x15a]
push esi
push eax
call fcn.00420df0
add esp, 0x10
lea ecx, [ebp - 0x93c]
push 0xaaaaaaaa
call fcn.00423f90
push dword [ebp - 0x908]
lea ecx, [ebp - 0x93c]
call fcn.00423f90
push 0xaaaaaaaa
lea ecx, [ebp - 0x93c]
call fcn.00423f90
lea eax, [ebx + 0x156]
push eax
lea ecx, [ebp - 0x93c]
call fcn.00423f30
push dword [ebp - 0x908]
lea ecx, [ebp - 0x93c]
call fcn.00423f90
jmp 0x446aa7
lea eax, [ebx + 0x156]
push eax
lea ecx, [ebp - 0x93c]
call fcn.00423f30
lea ecx, [ebx + 0x156]
call fcn.00423b70
lea ecx, [ebx + 0x13e]
call fcn.00423840
movzx esi, word [ebx + 0x13a]
lea eax, [ebp - 0x268]
push 0x1f4
or ecx, 0xffffffff
push 0
push eax
mov word [ebx + 0x13a], cx
call fcn.00453c50
add esp, 0xc
mov dword [ebp - 0x914], 0
lea ecx, [ebp - 0x8a0]
mov dword [ebp - 0x944], 0
call fcn.004249a0
push str.Before_BOOL_sendSuccess__this__Send_buff_sendlen___sendlen
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 1
call fcn.00425640
mov edi, dword [ebp - 0x910]
lea eax, [ebp - 0x44]
push edi
push 0x485a70
push eax
call fcn.00453b2a
add esp, 0xc
lea eax, [ebp - 0x44]
lea ecx, [ebp - 0x8a0]
push eax
call fcn.00425640
push dword [ebp - 0x860]
mov ecx, dword [0x4ace8c]
call fcn.00420910
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 0
call fcn.004249b0
push edi
lea eax, [ebp - 0x93c]
mov ecx, ebx
push eax
call fcn.00448dd0
lea ecx, [ebp - 0x8a0]
mov edi, eax
call fcn.004249a0
push str.After_BOOL_sendSuccess__this__Send_buff_sendlen___sendsuccess
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 2
call fcn.00425640
push edi
lea eax, [ebp - 0x44]
push 0x485a70
push eax
call fcn.00453b2a
add esp, 0xc
lea eax, [ebp - 0x44]
lea ecx, [ebp - 0x8a0]
push eax
call fcn.00425640
push dword [ebp - 0x860]
mov ecx, dword [0x4ace8c]
call fcn.00420910
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 0
call fcn.004249b0
cmp si, 4
je 0x4479d5
lea esp, [esp]
test edi, edi
jne 0x446c22
push dword [ebp - 0x944]
call fcn.00409ba0
mov edi, dword [ebp - 0x914]
add esp, 4
inc edi
mov dword [ebp - 0x944], 1
mov dword [ebp - 0x914], edi
cmp edi, 2
jle 0x4473bc
mov edi, 1
mov dword [ebp - 0x914], edi
jmp 0x4473bc
mov esi, dword [ebp - 0x960]
test esi, esi
je 0x446c5e
lea esp, [esp]
push 1
lea eax, [ebp - 0x8f5]
mov ecx, ebx
push eax
call fcn.00448b00
mov al, byte [ebp - 0x8f5]
test al, al
je 0x446c5a
push 1
push esi
mov ecx, ebx
call fcn.00448df0
mov al, byte [ebp - 0x8f5]
cmp al, 1
je 0x446c30
mov ecx, dword [0x4ace8c]
push str.Before_if__Recv__char___FunctionID__sizeof_FunctionID____
call fcn.00420910
push 2
lea eax, [ebx + 0x13a]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x447303
mov ecx, dword [0x4ace8c]
push str.After_if__Recv__char___FunctionID__sizeof_FunctionID_____succeed
call fcn.00420910
push 2
lea esi, [ebx + 0x13c]
mov ecx, ebx
push esi
call fcn.00448b00
test eax, eax
je 0x447303
push 4
lea eax, [ebp - 0x900]
mov dword [ebp - 0x900], 0
push eax
mov ecx, ebx
call fcn.00448b00
test eax, eax
je 0x447303
push 4
lea eax, [ebp - 0x8f4]
mov dword [ebp - 0x8f4], 0
push eax
mov ecx, ebx
call fcn.00448b00
test eax, eax
je 0x447303
cmp dword [ebp - 0x8f4], 0
jle 0x4479d5
lea edi, [ebx + 0x13e]
mov ecx, edi
call fcn.00423840
push dword [ebp - 0x8f4]
mov ecx, edi
call fcn.00423870
cmp word [esi], 1
jne 0x447222
push 4
lea eax, [ebp - 0x948]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x447303
push 4
lea eax, [ebp - 0x918]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x447303
push 4
lea eax, [ebp - 0x950]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x447303
mov eax, dword [ebp - 0x900]
test eax, eax
jle 0x447024
push eax
lea ecx, [ebp - 0x980]
call fcn.00423690
push dword [ebp - 0x900]
lea eax, [ebp - 0x980]
mov byte [ebp - 4], 6
push eax
mov ecx, ebx
call fcn.00448a90
test eax, eax
je 0x447010
push 4
lea eax, [ebp - 0x91c]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x447010
mov edx, dword [ebp - 0x918]
mov esi, dword [ebp - 0x91c]
mov eax, dword [ebp - 0x948]
mov ecx, dword [ebp - 0x950]
cmp edx, esi
jne 0x446f20
cmp eax, 0xaaaaaaaa
jne 0x446f20
cmp ecx, eax
jne 0x446f20
push dword [ebx]
lea eax, [ebp - 0x958]
push dword [ebp - 0x97c]
push dword [ebp - 0x900]
push eax
call fcn.00420c60
mov eax, dword [ebp - 0x958]
add esp, 0x10
cmp eax, dword [ebp - 0x918]
jne 0x446eb7
mov eax, dword [ebp - 0x8f4]
mov dword [ebp - 0x8fc], eax
lea eax, [ebp - 0x8fc]
push eax
push dword [ebx + 0x142]
push dword [ebp - 0x900]
push dword [ebp - 0x97c]
call fcn.004204c0
add esp, 0x10
mov ecx, edi
push dword [ebp - 0x8f4]
call fcn.00420c30
mov eax, dword [ebp - 0x8fc]
cmp eax, dword [ebp - 0x8f4]
je 0x4479b2
cmp byte [ebp - 0x268], 0
jne 0x447010
movdqu xmm0, xmmword [str.Data_decompression_error_1.]
mov eax, dword [0x4878b8]
lea ecx, [ebp - 0x980]
mov dword [ebp - 0x250], eax
movdqu xmmword [ebp - 0x268], xmm0
mov byte [ebp - 4], 0
movq xmm0, qword [0x4878b0]
movq qword [ebp - 0x258], xmm0
call fcn.00423730
jmp 0x447303
cmp byte [ebp - 0x268], 0
jne 0x447010
movdqu xmm0, xmmword [str.The_server_checksum_didnt_match_the_client_checksum.]
mov eax, dword [0x4878ec]
lea ecx, [ebp - 0x980]
mov dword [ebp - 0x238], eax
mov ax, word [0x4878f0]
movdqu xmmword [ebp - 0x268], xmm0
mov word [ebp - 0x234], ax
movdqu xmm0, xmmword [0x4878cc]
mov byte [ebp - 4], 0
movdqu xmmword [ebp - 0x258], xmm0
movdqu xmm0, xmmword [0x4878dc]
movdqu xmmword [ebp - 0x248], xmm0
call fcn.00423730
jmp 0x447303
cmp byte [ebp - 0x268], 0
jne 0x447010
cmp eax, 0xaaaaaaaa
je 0x446f80
movdqu xmm0, xmmword [str.Message_header_1_was_invalid.]
mov eax, dword [0x48790c]
lea ecx, [ebp - 0x980]
mov dword [ebp - 0x250], eax
mov ax, word [0x487910]
movdqu xmmword [ebp - 0x268], xmm0
mov word [ebp - 0x24c], ax
movq xmm0, qword [0x487904]
movq qword [ebp - 0x258], xmm0
mov byte [ebp - 4], 0
call fcn.00423730
jmp 0x447303
cmp ecx, 0xaaaaaaaa
je 0x446fd4
movdqu xmm0, xmmword [str.Message_header_2_was_invalid.]
mov eax, dword [0x48792c]
lea ecx, [ebp - 0x980]
mov dword [ebp - 0x250], eax
mov ax, word [0x487930]
movdqu xmmword [ebp - 0x268], xmm0
mov word [ebp - 0x24c], ax
movq xmm0, qword [0x487924]
movq qword [ebp - 0x258], xmm0
mov byte [ebp - 4], 0
call fcn.00423730
jmp 0x447303
cmp edx, esi
je 0x447010
movdqu xmm0, xmmword [str.Checksum1_did_not_match_Checksum2.]
mov ax, word [0x487954]
mov word [ebp - 0x248], ax
mov al, byte [0x487956]
movdqu xmmword [ebp - 0x268], xmm0
mov byte [ebp - 0x246], al
movdqu xmm0, xmmword [0x487944]
movdqu xmmword [ebp - 0x258], xmm0
lea ecx, [ebp - 0x980]
mov byte [ebp - 4], 0
call fcn.00423730
jmp 0x447303
push dword [ebp - 0x8f4]
mov ecx, ebx
push edi
call fcn.00448a90
test eax, eax
je 0x447303
push 4
lea eax, [ebp - 0x91c]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x447303
mov edx, dword [ebp - 0x918]
mov esi, dword [ebp - 0x91c]
mov eax, dword [ebp - 0x948]
mov ecx, dword [ebp - 0x950]
cmp edx, esi
jne 0x44710e
cmp eax, 0xaaaaaaaa
jne 0x44710e
cmp ecx, eax
jne 0x44710e
push dword [ebx]
lea eax, [ebp - 0x95c]
push dword [ebx + 0x142]
push dword [ebp - 0x8f4]
push eax
call fcn.00420c60
mov eax, dword [ebp - 0x95c]
add esp, 0x10
cmp eax, dword [ebp - 0x918]
je 0x4479d5
cmp byte [ebp - 0x268], 0
jne 0x447310
movdqu xmm0, xmmword [str.The_server_checksum_didnt_match_the_client_checksum.]
mov eax, dword [0x4878ec]
mov dword [ebp - 0x238], eax
mov ax, word [0x4878f0]
movdqu xmmword [ebp - 0x268], xmm0
mov word [ebp - 0x234], ax
movdqu xmm0, xmmword [0x4878cc]
movdqu xmmword [ebp - 0x258], xmm0
movdqu xmm0, xmmword [0x4878dc]
movdqu xmmword [ebp - 0x248], xmm0
jmp 0x447303
cmp byte [ebp - 0x268], 0
jne 0x447310
cmp eax, 0xaaaaaaaa
je 0x44717a
movdqu xmm0, xmmword [str.Message_header_1_was_invalid.__Not_compressed_]
mov eax, dword [0x487980]
mov dword [ebp - 0x240], eax
mov ax, word [0x487984]
movdqu xmmword [ebp - 0x268], xmm0
mov word [ebp - 0x23c], ax
movdqu xmm0, xmmword [0x487968]
mov al, byte [0x487986]
mov byte [ebp - 0x23a], al
movdqu xmmword [ebp - 0x258], xmm0
movq xmm0, qword [0x487978]
movq qword [ebp - 0x248], xmm0
jmp 0x447303
cmp ecx, 0xaaaaaaaa
je 0x4471da
movdqu xmm0, xmmword [str.Message_header_2_was_invalid.__Not_compressed_]
mov eax, dword [0x4879b0]
mov dword [ebp - 0x240], eax
mov ax, word [0x4879b4]
movdqu xmmword [ebp - 0x268], xmm0
mov word [ebp - 0x23c], ax
movdqu xmm0, xmmword [0x487998]
mov al, byte [0x4879b6]
mov byte [ebp - 0x23a], al
movdqu xmmword [ebp - 0x258], xmm0
movq xmm0, qword [0x4879a8]
movq qword [ebp - 0x248], xmm0
jmp 0x447303
cmp edx, esi
je 0x447303
movdqu xmm0, xmmword [str.Checksum1_did_not_match_Checksum2.__Not_compressed_]
mov eax, dword [0x4879e8]
mov dword [ebp - 0x238], eax
movdqu xmmword [ebp - 0x268], xmm0
movdqu xmm0, xmmword [0x4879c8]
movdqu xmmword [ebp - 0x258], xmm0
movdqu xmm0, xmmword [0x4879d8]
movdqu xmmword [ebp - 0x248], xmm0
jmp 0x447303
mov eax, dword [ebp - 0x900]
test eax, eax
jle 0x4472ed
push eax
lea ecx, [ebp - 0x980]
call fcn.00423690
push dword [ebp - 0x900]
lea eax, [ebp - 0x980]
mov byte [ebp - 4], 7
push eax
mov ecx, ebx
call fcn.00448a90
test eax, eax
je 0x4472dc
mov eax, dword [ebp - 0x8f4]
mov dword [ebp - 0x8fc], eax
lea eax, [ebp - 0x8fc]
push eax
push dword [ebx + 0x142]
push dword [ebp - 0x900]
push dword [ebp - 0x97c]
call fcn.004204c0
add esp, 0x10
mov ecx, edi
push dword [ebp - 0x8f4]
call fcn.00420c30
mov eax, dword [ebp - 0x8fc]
cmp eax, dword [ebp - 0x8f4]
je 0x4479b2
cmp byte [ebp - 0x268], 0
jne 0x4472dc
movdqu xmm0, xmmword [str.Data_decompression_error_2.]
mov eax, dword [0x487a04]
mov dword [ebp - 0x250], eax
movdqu xmmword [ebp - 0x268], xmm0
movq xmm0, qword [0x4879fc]
movq qword [ebp - 0x258], xmm0
lea ecx, [ebp - 0x980]
mov byte [ebp - 4], 0
call fcn.00423730
jmp 0x447303
push dword [ebp - 0x8f4]
mov ecx, ebx
push edi
call fcn.00448a90
test eax, eax
jne 0x4479d5
cmp byte [ebp - 0x268], 0
je 0x4473a0
lea ecx, [ebp - 0x8f0]
call fcn.004249a0
push str.CommunicationError_
lea ecx, [ebp - 0x8f0]
mov byte [ebp - 4], 8
call fcn.00425640
lea eax, [ebp - 0x268]
push eax
lea ecx, [ebp - 0x8f0]
call fcn.00425640
push dword [ebp - 0x8b0]
mov ecx, dword [0x4ace8c]
call fcn.00420910
lea ecx, [ebp - 0x8f0]
mov byte [ebp - 4], 0
call fcn.004249b0
lea edi, [ebp - 0x268]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x447368
mov ecx, 6
lea eax, [ebp - 0x268]
mov esi, str._Would_you_like_to_retry_
rep movsd dword es:[edi], dword [esi]
push 0x12024
push str.Network_Communication_Error
push eax
push 0
movsw word es:[edi], word [esi]
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 7
je 0x4479c3
push 0x1f4
lea eax, [ebp - 0x268]
push 0
push eax
call fcn.00453c50
mov edi, dword [ebp - 0x914]
add esp, 0xc
mov eax, dword [0x4a9734]
mov esi, dword [eax + 0x82]
mov ecx, esi
call fcn.00447af0
mov ecx, ebx
call fcn.00447af0
mov dword [esi + 0x136], 0
mov ecx, esi
mov dword [ebx + 0x136], 0
call fcn.00448070
mov ecx, ebx
call fcn.00448070
mov ecx, esi
call fcn.00447d30
test eax, eax
jne 0x44741d
mov ecx, dword [0x4ace8c]
push str.if__mSocket__Connect__FALSE_
call fcn.00420910
mov esi, dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x4478b5
cmp byte [0x4ad1a6], 0
mov ecx, 0x404
mov eax, 0x405
cmovne eax, ecx
cmp byte [0x4ace8b], 0
mov ecx, 0x403
cmovne eax, ecx
mov ecx, dword [0x4ace8c]
push str.Before_if__mSocket__SendCStr__char__WConnect_sizeof_WConnect___
mov dword [ebp - 0x8fc], eax
call fcn.00420910
push 2
lea eax, [ebp - 0x8fc]
mov ecx, esi
push eax
call fcn.004490a0
mov ecx, dword [0x4ace8c]
test eax, eax
je 0x44788d
push str.After_if__mSocket__SendCStr__char__WConnect_sizeof_WConnect____success
call fcn.00420910
push 2
lea eax, [ebp - 0x90c]
mov ecx, esi
push eax
call fcn.00448b00
test eax, eax
je 0x4478d6
mov ax, word [ebp - 0x90c]
test ax, ax
je 0x44786f
push 0x1d
mov word [0x4ad220], ax
call fcn.0045275b
add esp, 4
mov dword [ebp - 0x8fc], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x4474d3
push esi
push 0x40cbf0
mov ecx, eax
call fcn.00426170
jmp 0x4474d5
xor eax, eax
mov ecx, eax
mov byte [ebp - 4], 0
mov dword [esi + 0x132], eax
call fcn.004261a0
mov ax, word [ebp - 0x90c]
cmp ax, 0xfff6
jne 0x44750d
mov esi, dword [sym.imp.USER32.dll_MessageBoxA]
push 0x12024
push str.Network_Connection_Lost
push str.The_Xebra_Client_is_able_to_contact_the_distribution_server__but_the_distribution_server_is_unable_to_contact_your_xebra_server.Please_contact_the_administrator_of_your_distribution_server_for_assistance.Would_you_like_to_try_to_establish_a_new_connection_and_continue_
jmp 0x4478c9
cmp ax, 0xfffd
jne 0x44752f
push 0x12024
push str.Network_Connection_Lost
push str.The_Xebra_Client_has_made_contact_with_the_Xebra_Server__but_your_system_requires_access_through_a_distribution_server.Please_contact_the_administrator_of_your_distribution_server_for_assistance.Would_you_like_to_try_to_establish_a_new_connection_and_continue_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x4478cd
cmp ax, 0xfffe
jne 0x447551
push 0x12024
push str.Network_Connection_Lost
push str.The_Xebra_Client_is_able_to_contact_the_distribution_server__but_multiple_distribution_servers_are_connecting_to_your_xebra_server.Please_contact_the_administrator_of_your_distribution_server_for_assistance.Would_you_like_to_try_to_establish_a_new_connection_and_continue_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x4478cd
cmp ax, 0xffff
jne 0x447573
push 0x12024
push str.Xebra_Backup_In_Progress
push str.The_Xebra_Server_is_currently_backing_up_data.__Would_you_like_to_try_to_establish_a_new_connection_and_continue_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x4478cd
mov ecx, ebx
call fcn.00447d30
test eax, eax
jne 0x4475a2
cmp edi, 1
jle 0x4478d6
push 0x12024
push str.Network_Connection_Lost
push str.Your_connection_with_the_server_was_lost.__Would_you_like_to_try_to_establish_a_new_connection_and_continue_
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x4478cd
mov ecx, dword [0x4ace8c]
push str.Before_if__SendCStr__char__G_ConnectionNum_sizeof_G_ConnectionNum___
call fcn.00420910
push 2
push 0x4ad220
mov ecx, ebx
call fcn.004490a0
mov ecx, dword [0x4ace8c]
test eax, eax
je 0x447863
push str.After_if__SendCStr__char__G_ConnectionNum_sizeof_G_ConnectionNum____success
call fcn.00420910
push 2
lea eax, [ebp - 0x924]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x4478d6
mov ax, word [ebp - 0x924]
cmp ax, word [0x4ad220]
jne 0x4478d6
mov ax, word [0x4ace88]
mov ecx, ebx
mov word [ebp - 0x68], ax
mov al, byte [0x4ace8a]
mov byte [ebp - 0x66], al
lea eax, [ebp - 0x74]
push 0xf
push eax
mov dword [ebp - 0x74], 9
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 3
call fcn.00448df0
test eax, eax
je 0x4478d6
push 4
lea eax, [ebp - 0x964]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x4478d6
push dword [ebp - 0x964]
lea eax, [ebp - 0x650]
push str.function_id__d
push eax
call fcn.00453b2a
mov ecx, dword [0x4ace8c]
lea eax, [ebp - 0x650]
add esp, 0xc
push eax
call fcn.00420910
push 4
lea eax, [ebp - 0x968]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x4478d6
push dword [ebp - 0x968]
lea eax, [ebp - 0x650]
push str.flags__d
push eax
call fcn.00453b2a
mov ecx, dword [0x4ace8c]
lea eax, [ebp - 0x650]
add esp, 0xc
push eax
call fcn.00420910
push 4
lea eax, [ebp - 0x920]
mov dword [ebp - 0x920], 0
push eax
mov ecx, ebx
call fcn.00448b00
test eax, eax
je 0x4478d6
push dword [ebp - 0x920]
lea eax, [ebp - 0x650]
push str.data_size__d
push eax
call fcn.00453b2a
mov ecx, dword [0x4ace8c]
lea eax, [ebp - 0x650]
add esp, 0xc
push eax
call fcn.00420910
cmp dword [ebp - 0x920], 0
je 0x4478d6
push 4
lea eax, [ebp - 0x940]
mov ecx, ebx
push eax
call fcn.00448b00
test eax, eax
je 0x4478d6
push dword [ebp - 0x940]
lea eax, [ebp - 0x650]
push str.ServerVersion__d
push eax
call fcn.00453b2a
mov ecx, dword [0x4ace8c]
lea eax, [ebp - 0x650]
add esp, 0xc
push eax
call fcn.00420910
cmp byte [0x4ace8b], 0
jne 0x4478d6
cmp dword [ebp - 0x940], 0x30d
je 0x4478d6
lea eax, [ebp - 0x650]
push str.Version_mismatch_on_reconnect._Exiting.
push eax
call fcn.00453b2a
mov ecx, dword [0x4ace8c]
lea eax, [ebp - 0x650]
add esp, 8
push eax
call fcn.00420910
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
push 0x4acd38
lea eax, [ebp - 0x850]
mov dword [0x4ad084], 1
push str._swkupd.exu
push eax
call fcn.00453b2a
push 0x4acd38
lea eax, [ebp - 0x750]
push str._swkupdr.exe
push eax
call fcn.00453b2a
add esp, 0x18
lea eax, [ebp - 0x750]
lea ecx, [ebp - 0x8a0]
push eax
call fcn.004248f0
lea eax, [ebp - 0x850]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x8f0]
call fcn.004248f0
push 0
lea eax, [ebp - 0x8a0]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x8f0]
push eax
call fcn.0041f3d0
add esp, 0xc
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x8f0]
call fcn.004249b0
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 0
call fcn.004249b0
lea eax, [ebp - 0x750]
push 0
push eax
call fcn.0041c8c0
add esp, 8
jmp 0x4479d5
push str.After_if__SendCStr__char__G_ConnectionNum_sizeof_G_ConnectionNum____fail
call fcn.00420910
jmp 0x4478d6
cmp edi, 1
jle 0x4478d6
push 0x12024
push str.Network_Connection_Lost
push str.Your_connection_with_the_server_was_lost_and_the_server_is_reporting_that_all_connections_are_already_in_use.__Would_you_like_to_try_to_establish_a_new_connection_and_continue_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x4478cd
push str.After_if__mSocket__SendCStr__char__WConnect_sizeof_WConnect____fail
call fcn.00420910
cmp edi, 1
jle 0x4478d6
mov esi, dword [sym.imp.USER32.dll_MessageBoxA]
push 0x12040
push str.Network_Connection_Error
push str.Connection_to_the_server_was_made_but_the_response_was_invalid.
push 0
call esi
cmp edi, 1
jle 0x4478d6
push 0x12024
push str.Network_Connection_Lost
push str.Your_connection_with_the_server_was_lost.__Would_you_like_to_try_to_establish_a_new_connection_and_continue_
push 0
call esi
cmp eax, 7
je 0x4479c3
lea ecx, [ebp - 0x8a0]
call fcn.004249a0
push str.Before_BOOL_sendSuccess__this__Send_buff_sendlen___sendlen
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 1
call fcn.00425640
mov esi, dword [ebp - 0x910]
lea eax, [ebp - 0x44]
push esi
push 0x485a70
push eax
call fcn.00453b2a
add esp, 0xc
lea eax, [ebp - 0x44]
lea ecx, [ebp - 0x8a0]
push eax
call fcn.00425640
push dword [ebp - 0x860]
mov ecx, dword [0x4ace8c]
call fcn.00420910
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 0
call fcn.004249b0
push esi
lea eax, [ebp - 0x93c]
mov ecx, ebx
push eax
call fcn.00448dd0
lea ecx, [ebp - 0x8a0]
mov edi, eax
call fcn.004249a0
push str.After_BOOL_sendSuccess__this__Send_buff_sendlen___sendsuccess
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 2
call fcn.00425640
push edi
lea eax, [ebp - 0x44]
push 0x485a70
push eax
call fcn.00453b2a
add esp, 0xc
lea eax, [ebp - 0x44]
lea ecx, [ebp - 0x8a0]
push eax
call fcn.00425640
push dword [ebp - 0x860]
mov ecx, dword [0x4ace8c]
call fcn.00420910
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 0
call fcn.004249b0
jmp 0x446be0
lea ecx, [ebp - 0x980]
mov byte [ebp - 4], 0
call fcn.00423730
jmp 0x4479d5
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov dword [0x4ad084], 1
lea ecx, [ebp - 0x8f0]
call fcn.004249a0
mov byte [ebp - 4], 9
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
lea ecx, [ebp - 0x8f0]
sub esi, dword [ebp - 0x954]
push str.End_Function_ID:
call fcn.00425640
mov eax, dword [ebp - 0x94c]
movsx ecx, word [eax]
lea eax, [ebp - 0x44]
push ecx
push 0x485a70
push eax
call fcn.00453b2a
add esp, 0xc
lea eax, [ebp - 0x44]
lea ecx, [ebp - 0x8f0]
push eax
call fcn.00425640
push str._elapsedTickCount
lea ecx, [ebp - 0x8f0]
call fcn.00425640
push esi
lea eax, [ebp - 0x888]
push 0x485a70
push eax
call fcn.00453b2a
add esp, 0xc
lea eax, [ebp - 0x888]
lea ecx, [ebp - 0x8f0]
push eax
call fcn.00425640
cmp esi, 0x2710
jbe 0x447a72
push str._SUPER_SLOW_FUNCTION__
jmp 0x447a7f
cmp esi, 0xfa0
jbe 0x447a8a
push str._SLOW_FUNCTION__
lea ecx, [ebp - 0x8f0]
call fcn.00425640
push dword [ebp - 0x8b0]
mov ecx, dword [0x4ace8c]
call fcn.00420910
lea ecx, [ebp - 0x8f0]
mov byte [ebp - 4], 0
call fcn.004249b0
lea ecx, [ebp - 0x93c]
mov dword [ebp - 4], 0xffffffff
call fcn.00423730
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.00452f44
mov esp, ebp
pop ebp
ret 4