Function at 0x498ea0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b5c6b
mov eax, dword fs:[0]
push eax
sub esp, 0x2b0
mov eax, dword [0x4e5258]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x25c], ecx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x2c]
push ecx
mov edx, dword [eax + 0x28]
push edx
mov eax, dword [ebp - 0x25c]
push eax
lea ecx, [ebp - 0x264]
call fcn.0048f960
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
test eax, eax
jne 0x498f1b
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x264]
call fcn.00490b00
jmp 0x499987
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov ecx, dword [eax + 8]
cmp ecx, dword [ebp + 8]
jne 0x498f4b
mov byte [ebp - 0x265], 1
lea ecx, [ebp - 0x264]
call fcn.0043dab0
add eax, 8
mov dword [ebp - 0x284], eax
jmp 0x498f66
mov byte [ebp - 0x265], 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
add eax, 0x20
mov dword [ebp - 0x284], eax
mov edx, dword [ebp - 0x284]
mov byte [edx + 5], 0
cmp dword [ebp + 0xc], 0
jne 0x4990ba
cmp dword [ebp + 0x14], 0
je 0x498f8a
mov eax, dword [ebp - 0x284]
mov byte [eax + 8], 1
lea ecx, [ebp - 0x264]
call fcn.0043dab0
cmp dword [eax + 0x38], 4
jne 0x499089
mov ecx, dword [ebp - 0x25c]
cmp dword [ecx + 0x54], 0
je 0x499089
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov edx, dword [eax + 0x3c]
and edx, 2
je 0x499089
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov eax, dword [eax + 0x20]
cmp eax, dword [ebp + 8]
jne 0x499012
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov byte [eax + 0x24], 1
push 0
push 0
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ecx + 0x54]
mov eax, dword [ebp - 0x25c]
mov edx, dword [edx]
mov ecx, dword [eax + 0x54]
mov eax, dword [edx + 0x14]
call eax
jmp 0x499087
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov byte [eax + 0xc], 1
lea ecx, [ebp - 0x264]
call fcn.0043dab0
movzx ecx, byte [eax + 0xa5]
test ecx, ecx
je 0x49905f
push 0
push 0
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x2c]
push eax
mov ecx, dword [edx + 0x28]
push ecx
mov edx, dword [ebp - 0x25c]
mov eax, dword [edx + 0x54]
mov ecx, dword [ebp - 0x25c]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x54]
mov eax, dword [edx + 0x14]
call eax
push 0
push 0
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ecx + 0x54]
mov eax, dword [ebp - 0x25c]
mov edx, dword [edx]
mov ecx, dword [eax + 0x54]
mov eax, dword [edx + 0x18]
call eax
jmp 0x4990a3
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x25c]
call fcn.0049d190
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x264]
call fcn.00490b00
jmp 0x499987
movzx edx, byte [ebp - 0x265]
test edx, edx
jne 0x499882
lea ecx, [ebp - 0x264]
call fcn.0043dab0
cmp dword [eax + 0x38], 4
jne 0x4991b7
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov eax, dword [ebp - 0x25c]
cmp dword [eax + 0x54], 0
je 0x499167
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov ecx, dword [eax + 0x3c]
and ecx, 2
je 0x499167
mov edx, dword [ebp + 0xc]
push edx
push 0
mov ecx, dword [ebp + 0x10]
add ecx, 0x34
call fcn.00491260
mov eax, dword [eax + 4]
push eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ecx + 0x54]
mov eax, dword [ebp - 0x25c]
mov edx, dword [edx]
mov ecx, dword [eax + 0x54]
mov eax, dword [edx + 0x14]
call eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049d760
jmp 0x4991b2
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
push 0
mov ecx, dword [ebp + 0x10]
add ecx, 0x34
call fcn.00491260
mov edx, dword [eax + 4]
push edx
push 1
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049db20
movzx eax, al
test eax, eax
jne 0x4991b2
push str._Pro5_:TCPProxy::onReceiveComplete_startTcpSend_failed
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x49987d
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov ecx, dword [eax + 0x38]
mov dword [ebp - 0x288], ecx
cmp dword [ebp - 0x288], 1
je 0x4991f8
cmp dword [ebp - 0x288], 2
je 0x4995c2
cmp dword [ebp - 0x288], 3
je 0x49977e
jmp 0x499859
cmp dword [ebp + 0xc], 2
jae 0x499203
jmp 0x499859
push 0
mov ecx, dword [ebp + 0x10]
add ecx, 0x34
call fcn.00491260
mov edx, dword [eax + 4]
mov dword [ebp - 0x280], edx
mov eax, dword [ebp - 0x280]
movsx ecx, byte [eax]
cmp ecx, 5
jne 0x499244
mov edx, dword [ebp - 0x280]
movsx eax, byte [edx + 1]
test eax, eax
je 0x499249
mov ecx, dword [ebp - 0x280]
movsx edx, byte [ecx + 1]
cmp edx, 2
je 0x499249
jmp 0x499859
mov eax, dword [ebp - 0x280]
movsx ecx, byte [eax + 1]
cmp ecx, 2
jne 0x499431
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov edx, dword [eax + 0x40]
push edx
mov eax, dword [ebp - 0x25c]
mov ecx, dword [eax + 0xd0]
call fcn.00495e90
mov dword [ebp - 0x278], eax
cmp dword [ebp - 0x278], 0
jne 0x499290
jmp 0x499859
push 0x200
push 0
lea ecx, [ebp - 0x210]
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea edx, [ebp - 0x210]
mov dword [ebp - 0x26c], edx
mov eax, dword [ebp - 0x26c]
mov dword [eax], 1
mov ecx, dword [ebp - 0x278]
add ecx, 0x314
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov dword [ebp - 0x27c], eax
push 1
lea edx, [ebp - 0x27c]
push edx
mov eax, dword [ebp - 0x26c]
add eax, 1
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, dword [ebp - 0x27c]
push ecx
mov edx, dword [ebp - 0x278]
add edx, 0x314
push edx
mov eax, dword [ebp - 0x26c]
add eax, 2
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, dword [ebp - 0x278]
add ecx, 0x414
push ecx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov dword [ebp - 0x28c], eax
push 1
lea edx, [ebp - 0x28c]
push edx
mov eax, dword [ebp - 0x27c]
mov ecx, dword [ebp - 0x26c]
lea edx, [ecx + eax + 2]
push edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x28c]
push eax
mov ecx, dword [ebp - 0x278]
add ecx, 0x414
push ecx
mov edx, dword [ebp - 0x27c]
mov eax, dword [ebp - 0x26c]
lea ecx, [eax + edx + 3]
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ecx, [ebp - 0x264]
call fcn.0043dab0
add eax, 0x63
mov dword [ebp - 0x294], eax
mov edx, dword [ebp - 0x294]
movzx eax, word [edx]
cmp eax, 2
jne 0x4993b2
mov dword [ebp - 0x290], 0x10
jmp 0x4993bc
mov dword [ebp - 0x290], 0x1c
mov ecx, dword [ebp - 0x290]
mov dword [ebp - 0x2b0], ecx
mov edx, dword [ebp - 0x294]
movzx eax, word [edx]
mov dword [ebp - 0x2b4], eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
mov ecx, dword [ebp - 0x28c]
mov edx, dword [ebp - 0x27c]
lea eax, [edx + ecx + 3]
push eax
mov ecx, dword [ebp - 0x26c]
push ecx
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049db20
movzx edx, al
test edx, edx
je 0x49942c
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov dword [eax + 0x38], 2
jmp 0x4995b8
mov eax, dword [ebp - 0x280]
movsx ecx, byte [eax + 1]
test ecx, ecx
jne 0x4995b8
lea ecx, [ebp - 0x264]
call fcn.0043dab0
add eax, 0x63
mov dword [ebp - 0x270], eax
mov edx, dword [ebp - 0x270]
movzx eax, word [edx]
cmp eax, 2
jne 0x499471
mov dword [ebp - 0x298], 0x10
jmp 0x49947b
mov dword [ebp - 0x298], 0x1c
mov ecx, dword [ebp - 0x298]
mov dword [ebp - 0x2b8], ecx
mov edx, dword [ebp - 0x270]
movzx eax, word [edx]
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x2a8], 2
jne 0x49952a
mov byte [ebp - 0x21c], 5
mov byte [ebp - 0x21b], 1
mov byte [ebp - 0x21a], 0
mov byte [ebp - 0x219], 1
mov ecx, dword [ebp - 0x270]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x218], edx
mov eax, dword [ebp - 0x270]
mov cx, word [eax + 2]
mov word [ebp - 0x214], cx
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x2c]
push eax
mov ecx, dword [edx + 0x28]
push ecx
push 0xa
lea edx, [ebp - 0x21c]
push edx
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049db20
movzx eax, al
test eax, eax
je 0x499525
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov dword [eax + 0x38], 3
jmp 0x4995b8
mov byte [ebp - 0x240], 5
mov byte [ebp - 0x23f], 1
mov byte [ebp - 0x23e], 0
mov byte [ebp - 0x23d], 4
push 0x10
mov ecx, dword [ebp - 0x270]
add ecx, 8
push ecx
lea edx, [ebp - 0x23c]
push edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x270]
mov cx, word [eax + 2]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x2c]
push eax
mov ecx, dword [edx + 0x28]
push ecx
push 0x16
lea edx, [ebp - 0x240]
push edx
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049db20
movzx eax, al
test eax, eax
je 0x4995b8
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov dword [eax + 0x38], 3
jmp 0x499859
cmp dword [ebp + 0xc], 2
jae 0x4995cd
jmp 0x499859
push 0
mov ecx, dword [ebp + 0x10]
add ecx, 0x34
call fcn.00491260
mov ecx, dword [eax + 4]
mov dword [ebp - 0x29c], ecx
mov edx, dword [ebp - 0x29c]
movsx eax, byte [edx]
cmp eax, 1
jne 0x4995ff
mov ecx, dword [ebp - 0x29c]
movzx edx, byte [ecx + 1]
test edx, edx
je 0x499604
jmp 0x499859
lea ecx, [ebp - 0x264]
call fcn.0043dab0
add eax, 0x63
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x274]
movzx ecx, word [eax]
cmp ecx, 2
jne 0x499632
mov dword [ebp - 0x2a0], 0x10
jmp 0x49963c
mov dword [ebp - 0x2a0], 0x1c
mov edx, dword [ebp - 0x2a0]
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp - 0x274]
movzx ecx, word [eax]
mov dword [ebp - 0x2ac], ecx
cmp dword [ebp - 0x2ac], 2
jne 0x4996eb
mov byte [ebp - 0x228], 5
mov byte [ebp - 0x227], 1
mov byte [ebp - 0x226], 0
mov byte [ebp - 0x225], 1
mov edx, dword [ebp - 0x274]
mov eax, dword [edx + 4]
mov dword [ebp - 0x224], eax
mov ecx, dword [ebp - 0x274]
mov dx, word [ecx + 2]
mov word [ebp - 0x220], dx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x2c]
push ecx
mov edx, dword [eax + 0x28]
push edx
push 0xa
lea eax, [ebp - 0x228]
push eax
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049db20
movzx ecx, al
test ecx, ecx
je 0x4996e6
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov dword [eax + 0x38], 3
jmp 0x499779
mov byte [ebp - 0x258], 5
mov byte [ebp - 0x257], 1
mov byte [ebp - 0x256], 0
mov byte [ebp - 0x255], 4
push 0x10
mov edx, dword [ebp - 0x274]
add edx, 8
push edx
lea eax, [ebp - 0x254]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, dword [ebp - 0x274]
mov dx, word [ecx + 2]
mov word [ebp - 0x244], dx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x2c]
push ecx
mov edx, dword [eax + 0x28]
push edx
push 0x16
lea eax, [ebp - 0x258]
push eax
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049db20
movzx ecx, al
test ecx, ecx
je 0x499779
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov dword [eax + 0x38], 3
jmp 0x499859
cmp dword [ebp + 0xc], 5
jae 0x499789
jmp 0x499859
push 0
mov ecx, dword [ebp + 0x10]
add ecx, 0x34
call fcn.00491260
mov edx, dword [eax + 4]
mov dword [ebp - 0x2a4], edx
mov eax, dword [ebp - 0x2a4]
movsx ecx, byte [eax]
cmp ecx, 5
jne 0x4997bb
mov edx, dword [ebp - 0x2a4]
movsx eax, byte [edx + 1]
test eax, eax
je 0x4997c0
jmp 0x499859
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov dword [eax + 0x38], 4
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
push 1
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049d760
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049d760
mov ecx, dword [ebp - 0x25c]
cmp dword [ecx + 0x54], 0
je 0x499859
lea ecx, [ebp - 0x264]
call fcn.0043dab0
add eax, 0x3c
push eax
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x2c]
push eax
mov ecx, dword [edx + 0x28]
push ecx
mov edx, dword [ebp - 0x25c]
mov eax, dword [edx + 0x54]
mov ecx, dword [ebp - 0x25c]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x54]
mov eax, dword [edx + 0xc]
call eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049d760
jmp 0x499975
lea ecx, [ebp - 0x264]
call fcn.0043dab0
cmp dword [eax + 0x38], 4
jne 0x49995b
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov ecx, dword [ebp - 0x25c]
cmp dword [ecx + 0x54], 0
je 0x499920
lea ecx, [ebp - 0x264]
call fcn.0043dab0
mov edx, dword [eax + 0x3c]
and edx, 2
je 0x499920
mov eax, dword [ebp + 0xc]
push eax
push 0
mov ecx, dword [ebp + 0x10]
add ecx, 0x34
call fcn.00491260
mov ecx, dword [eax + 4]
push ecx
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x2c]
push eax
mov ecx, dword [edx + 0x28]
push ecx
mov edx, dword [ebp - 0x25c]
mov eax, dword [edx + 0x54]
mov ecx, dword [ebp - 0x25c]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x54]
mov eax, dword [edx + 0x18]
call eax
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
push 1
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049d760
jmp 0x499959
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
push 0
mov ecx, dword [ebp + 0x10]
add ecx, 0x34
call fcn.00491260
mov edx, dword [eax + 4]
push edx
push 0
lea ecx, [ebp - 0x264]
call fcn.0043dab0
push eax
mov ecx, dword [ebp - 0x25c]
call fcn.0049db20
jmp 0x499975
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x2c]
push edx
mov eax, dword [ecx + 0x28]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x25c]
call fcn.0049d190
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x264]
call fcn.00490b00
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004adff8
mov esp, ebp
pop ebp
ret 0x10