Function at 0x439fd0
Capabilities:
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xac8
mov eax, dword [0x5290f4]
movzx ecx, byte [eax + 0x400]
mov edx, dword [0x5290f4]
mov dword [edx + ecx*4], 0x67380000
mov eax, dword [0x5290f4]
mov cl, byte [eax + 0x400]
add cl, 1
mov edx, dword [0x5290f4]
mov byte [edx + 0x400], cl
push 0x20a
push 0
lea eax, [ebp - 0x228]
push eax
call fcn.004bf170
add esp, 0xc
mov dword [ebp - 0x264], 0
push 0x4d6ba0
lea ecx, [ebp - 0x264]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00438a40
add esp, 0xc
test eax, eax
je 0x43a052
mov eax, 9
jmp 0x43aa8f
cmp dword [ebp - 0x264], 0x200
jbe 0x43a073
push 0x4d6ba8
call fcn.0040cc80
add esp, 4
add eax, 9
jmp 0x43aa8f
push 0x4d6bcc
mov eax, dword [ebp - 0x264]
push eax
lea ecx, [ebp - 0x228]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00438430
add esp, 0x10
test eax, eax
je 0x43a0a0
mov eax, 9
jmp 0x43aa8f
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x25c], 0
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x254], 0
push 0x4d6bd4
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x234]
push ecx
lea edx, [ebp - 0x228]
push edx
call fcn.00438bc0
add esp, 0x10
test eax, eax
je 0x43a116
mov eax, 9
jmp 0x43aa8f
cmp dword [0x52912c], 0
je 0x43a18d
mov eax, dword [0x52912c]
cdq
push 0
push 0xf4240
push edx
push eax
call fcn.004bed20
mov dword [ebp - 0xac0], eax
mov dword [ebp - 0xabc], edx
mov eax, dword [ebp - 0x22c]
cmp eax, dword [ebp - 0xabc]
jl 0x43a18d
jg 0x43a15d
mov ecx, dword [ebp - 0x230]
cmp ecx, dword [ebp - 0xac0]
jbe 0x43a18d
push 0
push 1
mov edx, dword [ebp - 0x22c]
push edx
mov eax, dword [ebp - 0x230]
push eax
call fcn.00401b10
add esp, 0x10
push eax
push str.illegal_length_received___s_._use__maxsize_to_change_limit._n
call fcn.0040cc80
add esp, 8
add eax, 9
jmp 0x43aa8f
cmp dword [ebp + 0x10], 0x66
jl 0x43a1f3
push 0x4d6c1c
lea ecx, [ebp - 0x260]
push ecx
lea edx, [ebp - 0x234]
push edx
lea eax, [ebp - 0x228]
push eax
call fcn.00438bc0
add esp, 0x10
test eax, eax
je 0x43a1c3
mov eax, 9
jmp 0x43aa8f
push 0x4d6c24
lea ecx, [ebp - 0x258]
push ecx
lea edx, [ebp - 0x234]
push edx
lea eax, [ebp - 0x228]
push eax
call fcn.00438bc0
add esp, 0x10
test eax, eax
je 0x43a1f3
mov eax, 9
jmp 0x43aa8f
push 0x14
push 0
lea ecx, [ebp - 0x14]
push ecx
call fcn.004bf170
add esp, 0xc
push 0x14
push 0
lea edx, [ebp - 0x24c]
push edx
call fcn.004bf170
add esp, 0xc
cmp dword [ebp + 0x10], 0x66
jge 0x43a25c
cmp dword [ebp + 0x10], 0x69
jne 0x43a231
mov eax, dword [ebp - 0x234]
add eax, 0x14
mov dword [ebp - 0x234], eax
push 0x10
mov ecx, dword [ebp - 0x234]
lea edx, [ebp + ecx - 0x228]
push edx
lea eax, [ebp - 0x14]
push eax
call fcn.004bed60
add esp, 0xc
mov ecx, dword [ebp - 0x234]
add ecx, 0x10
mov dword [ebp - 0x234], ecx
push 0
push 0
mov edx, dword [ebp + 0xc]
push edx
push str.recv
mov ecx, 0x56b6c8
call fcn.0040bf50
cmp dword [ebp + 0x10], 0x66
jge 0x43a2b5
lea eax, [ebp - 0x24c]
push eax
mov cl, byte [ebp + 0x14]
push ecx
mov edx, dword [ebp - 0x22c]
push edx
mov eax, dword [ebp - 0x230]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00439c20
add esp, 0x18
test eax, eax
je 0x43a2b0
mov eax, 9
jmp 0x43aa8f
jmp 0x43a7ad
movzx eax, byte [ebp + 0x18]
test eax, eax
jne 0x43a324
push 0
mov cl, byte [ebp + 0x14]
push ecx
mov edx, dword [ebp - 0x22c]
push edx
mov eax, dword [ebp - 0x230]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00439c20
add esp, 0x18
test eax, eax
je 0x43a2ef
mov eax, 9
jmp 0x43aa8f
movzx eax, byte [0x56b190]
test eax, eax
je 0x43a31f
push 0x4d6c34
push 0x10
lea ecx, [ebp - 0x14]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00438430
add esp, 0x10
test eax, eax
je 0x43a31f
mov eax, 9
jmp 0x43aa8f
jmp 0x43a7ad
push 0x4d6c38
mov eax, dword [ebp + 0xc]
push eax
call fcn.004bf4d0
add esp, 8
mov dword [ebp - 0x364], eax
cmp dword [ebp - 0x364], 0
jne 0x43a35d
mov ecx, dword [ebp + 0xc]
push ecx
push str.cannot_write_to___s__n
call fcn.0040cc80
add esp, 8
add eax, 9
jmp 0x43aa8f
mov dword [ebp - 0x340], 0
mov dword [ebp - 0x33c], 0
mov edx, dword [ebp - 0x230]
mov dword [ebp - 0x360], edx
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x35c], eax
mov ecx, dword [ebp - 0x230]
mov dword [ebp - 0x358], ecx
mov edx, dword [ebp - 0x22c]
mov dword [ebp - 0x354], edx
mov dword [ebp - 0x350], 0xa
mov dword [ebp - 0x34c], 0
mov dword [ebp - 0x348], 0
mov dword [ebp - 0x344], 0
mov dword [ebp - 0x268], 0
cmp dword [ebp - 0x35c], 0
jl 0x43a623
jg 0x43a3ef
cmp dword [ebp - 0x360], 0
jbe 0x43a623
mov dword [ebp - 0x36c], 0x186fa
mov eax, dword [ebp - 0x36c]
cdq
mov dword [ebp - 0xac8], eax
mov dword [ebp - 0xac4], edx
mov eax, dword [ebp - 0xac4]
cmp eax, dword [ebp - 0x35c]
jl 0x43a436
jg 0x43a42a
mov ecx, dword [ebp - 0xac8]
cmp ecx, dword [ebp - 0x360]
jbe 0x43a436
mov edx, dword [ebp - 0x360]
mov dword [ebp - 0x36c], edx
movzx eax, byte [0x567134]
test eax, eax
je 0x43a45c
mov ecx, dword [ebp - 0x360]
push ecx
mov edx, dword [ebp - 0x36c]
push edx
push str.__sread__d__remain_d_n
call fcn.0044d350
add esp, 0xc
mov eax, dword [ebp - 0x36c]
push eax
push str.SREAD__d_n
lea ecx, [ebp - 0x330]
push ecx
call fcn.004be348
add esp, 0xc
push 0
lea edx, [ebp - 0x330]
push edx
call fcn.004be7f0
add esp, 4
push eax
lea eax, [ebp - 0x330]
push eax
mov ecx, dword [ebp + 8]
push ecx
call sub.WS2_32.dll_send
mov dword [ebp - 0x368], eax
lea edx, [ebp - 0x330]
push edx
call fcn.004be7f0
add esp, 4
cmp dword [ebp - 0x368], eax
je 0x43a4e9
mov eax, dword [ebp - 0x364]
push eax
call fcn.004bf349
add esp, 4
push 0xffffffffffffffff
call fcn.004847a0
add esp, 4
push eax
mov ecx, dword [ebp + 0xc]
push ecx
push str.failed_to_send_SREAD_for___s___s_n
call fcn.0040cc80
add esp, 0xc
add eax, 9
jmp 0x43aa8f
push str.data
mov edx, dword [ebp - 0x36c]
push edx
push 0x534818
mov eax, dword [ebp + 8]
push eax
call fcn.00438430
add esp, 0x10
test eax, eax
je 0x43a532
mov ecx, dword [ebp - 0x364]
push ecx
call fcn.004bf349
add esp, 4
mov edx, dword [ebp + 0xc]
push edx
push str.failed_to_fully_receive___s__n
call fcn.0040cc80
add esp, 8
add eax, 9
jmp 0x43aa8f
mov eax, dword [ebp - 0x36c]
mov dword [ebp - 0x268], eax
mov eax, dword [ebp - 0x268]
cdq
add eax, dword [ebp - 0x340]
mov ecx, dword [ebp - 0x33c]
adc ecx, edx
mov dword [ebp - 0x340], eax
mov dword [ebp - 0x33c], ecx
mov eax, dword [ebp - 0x268]
cdq
mov ecx, dword [ebp - 0x360]
sub ecx, eax
mov eax, dword [ebp - 0x35c]
sbb eax, edx
mov dword [ebp - 0x360], ecx
mov dword [ebp - 0x35c], eax
push 0
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x364]
push ecx
mov edx, dword [ebp - 0x268]
push edx
push 0x534818
call fcn.0040c930
add esp, 0x20
cmp eax, dword [ebp - 0x268]
je 0x43a5d7
mov eax, dword [ebp - 0x364]
push eax
call fcn.004bf349
add esp, 4
mov ecx, dword [ebp + 0xc]
push ecx
push str.failed_to_fully_write__probably_disk_full:___s__n
call fcn.0040cc80
add esp, 8
add eax, 9
jmp 0x43aa8f
push 0x4d6cf8
push 0
push 0xf4240
mov edx, dword [ebp - 0x33c]
push edx
mov eax, dword [ebp - 0x340]
push eax
call fcn.004bec70
push edx
push eax
push 0
push 0xf4240
mov ecx, dword [ebp - 0x354]
push ecx
mov edx, dword [ebp - 0x358]
push edx
call fcn.004bec70
push edx
push eax
mov ecx, 0x56b6c8
call fcn.0040c0c0
jmp 0x43a3d3
mov eax, dword [ebp - 0x364]
push eax
call fcn.004bf349
add esp, 4
cmp dword [0x56b184], 2
jge 0x43a667
push 0
push 1
mov ecx, dword [ebp - 0x33c]
push ecx
mov edx, dword [ebp - 0x340]
push edx
call fcn.00401b10
add esp, 0x10
push eax
mov eax, dword [ebp + 0xc]
push eax
push str.___s_received___s_bytes.________n
call fcn.0044d350
add esp, 0xc
push 0x4d6d20
lea ecx, [ebp - 0x330]
push ecx
call fcn.004be348
add esp, 8
push 0
lea edx, [ebp - 0x330]
push edx
call fcn.004be7f0
add esp, 4
push eax
lea eax, [ebp - 0x330]
push eax
mov ecx, dword [ebp + 8]
push ecx
call sub.WS2_32.dll_send
mov dword [ebp - 0x334], eax
lea edx, [ebp - 0x330]
push edx
call fcn.004be7f0
add esp, 4
cmp dword [ebp - 0x334], eax
je 0x43a6da
push 0xffffffffffffffff
call fcn.004847a0
add esp, 4
push eax
push str.failed_to_receive_checksum___s_n
call fcn.0040cc80
add esp, 8
add eax, 9
jmp 0x43aa8f
movzx eax, byte [0x56b190]
test eax, eax
je 0x43a722
movzx ecx, byte [0x567134]
test ecx, ecx
je 0x43a6fd
push str.__wait_for_sum_n
call fcn.0044d350
add esp, 4
push 0x4d6d58
push 0x10
lea edx, [ebp - 0x14]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.00438430
add esp, 0x10
test eax, eax
je 0x43a722
mov eax, 9
jmp 0x43aa8f
movzx ecx, byte [0x567134]
test ecx, ecx
je 0x43a73a
push str.send_close_n
call fcn.0044d350
add esp, 4
push 0x4d6d68
lea edx, [ebp - 0x330]
push edx
call fcn.004be348
add esp, 8
push 0
lea eax, [ebp - 0x330]
push eax
call fcn.004be7f0
add esp, 4
push eax
lea ecx, [ebp - 0x330]
push ecx
mov edx, dword [ebp + 8]
push edx
call sub.WS2_32.dll_send
mov dword [ebp - 0x334], eax
lea eax, [ebp - 0x330]
push eax
call fcn.004be7f0
add esp, 4
cmp dword [ebp - 0x334], eax
je 0x43a7ad
push 0xffffffffffffffff
call fcn.004847a0
add esp, 4
push eax
push str.failed_to_send_close___s_n
call fcn.0040cc80
add esp, 8
add eax, 9
jmp 0x43aa8f
movzx ecx, byte [0x567134]
test ecx, ecx
je 0x43a7c5
push str.wait_for_skip_n
call fcn.0044d350
add esp, 4
mov byte [0x534818], 0
push 0
push 0x534818
mov edx, dword [ebp + 8]
push edx
call fcn.004385d0
add esp, 0xc
push 4
push 0x4d6d9c
push 0x534818
call fcn.004bebf0
add esp, 0xc
test eax, eax
je 0x43a82a
push 0
push 4
push str.EE01_n_n
mov eax, dword [ebp + 8]
push eax
call sub.WS2_32.dll_send
mov ecx, 0x56b6c8
call fcn.0040c3c0
push str.unexpected_data_received__transfer_broken._n
call fcn.0040cc80
add esp, 4
mov eax, 9
jmp 0x43aa8f
cmp dword [ebp + 0x10], 0x66
jl 0x43a8d1
movzx ecx, byte [0x56b18a]
test ecx, ecx
jne 0x43a8d1
lea ecx, [ebp - 0x978]
call fcn.0041d860
push 0
push 0
mov edx, dword [ebp + 0xc]
push edx
lea ecx, [ebp - 0x978]
call fcn.0041e7f0
test eax, eax
je 0x43a878
mov eax, dword [ebp + 0xc]
push eax
push str.cannot_read_file_time:__s_n
call fcn.0040ceb0
add esp, 8
jmp 0x43a8d1
mov ecx, dword [ebp - 0x260]
or ecx, dword [ebp - 0x25c]
je 0x43a8bd
mov edx, dword [ebp - 0x260]
mov dword [ebp - 0x968], edx
mov eax, dword [ebp - 0x25c]
mov dword [ebp - 0x964], eax
mov ecx, dword [ebp - 0x260]
mov dword [ebp - 0x960], ecx
mov edx, dword [ebp - 0x25c]
mov dword [ebp - 0x95c], edx
mov byte [ebp - 0x938], 0
push 0x67db
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x978]
call fcn.0041edf0
movzx ecx, byte [0x56b190]
test ecx, ecx
je 0x43aa3e
push 0
push 0
mov edx, dword [ebp + 0xc]
push edx
push 0x4d6df4
mov ecx, 0x56b6c8
call fcn.0040bf50
lea ecx, [ebp - 0xab0]
call fcn.004120c0
push 1
push 0
lea eax, [ebp - 0xab0]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0041f0e0
add esp, 0x10
test eax, eax
je 0x43a94f
push 0
push 4
push 0x4d6dfc
mov edx, dword [ebp + 8]
push edx
call sub.WS2_32.dll_send
mov dword [ebp - 0xab4], 9
lea ecx, [ebp - 0xab0]
call fcn.00412160
mov eax, dword [ebp - 0xab4]
jmp 0x43aa8f
push 0x10
lea ecx, [ebp - 0xab0]
call fcn.00413330
push eax
lea eax, [ebp - 0x24c]
push eax
call fcn.004bed60
add esp, 0xc
push 0x10
lea ecx, [ebp - 0x14]
push ecx
lea edx, [ebp - 0x24c]
push edx
call fcn.004c2080
add esp, 0xc
test eax, eax
je 0x43aa33
push 0
push 4
push 0x4d6e04
mov eax, dword [ebp + 8]
push eax
call sub.WS2_32.dll_send
mov ecx, 0x56b6c8
call fcn.0040c3c0
push str.md5_mismatch___transfered_file_corrupted._n
call fcn.0040cc80
add esp, 4
cmp dword [0x56afc8], 0
je 0x43aa09
movzx ecx, byte [ebp - 0x249]
push ecx
movzx edx, byte [ebp - 0x24a]
push edx
movzx eax, byte [ebp - 0x24b]
push eax
movzx ecx, byte [ebp - 0x24c]
push ecx
push str.local:__02X__02X__02X__02X_n
call fcn.0044d350
add esp, 0x14
movzx edx, byte [ebp - 0x11]
push edx
movzx eax, byte [ebp - 0x12]
push eax
movzx ecx, byte [ebp - 0x13]
push ecx
movzx edx, byte [ebp - 0x14]
push edx
push str.remot:__02X__02X__02X__02X_n
call fcn.0044d350
add esp, 0x14
push str.check_if_the_file_is_in_use_by_another_process._n
call fcn.0040ceb0
add esp, 4
mov dword [ebp - 0xab8], 9
lea ecx, [ebp - 0xab0]
call fcn.00412160
mov eax, dword [ebp - 0xab8]
jmp 0x43aa8f
lea ecx, [ebp - 0xab0]
call fcn.00412160
mov ecx, 0x56b6c8
call fcn.0040c3c0
push 0
push 4
push 0x4d6ea4
mov eax, dword [ebp + 8]
push eax
call sub.WS2_32.dll_send
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 4
je 0x43aa8d
push 0xffffffffffffffff
call fcn.004847a0
add esp, 4
push eax
mov ecx, dword [ebp - 0x238]
push ecx
push str.failed_to_send_reply___d___s_n
call fcn.0040cc80
add esp, 0xc
add eax, 9
jmp 0x43aa8f
xor eax, eax
mov esp, ebp
pop ebp
ret