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

Disassembly:
mov eax, 0x48b497
call fcn.004874e0
mov eax, 0x1f40
call fcn.004875f0
push ebx
push esi
push edi
mov esi, ecx
push 0x200
lea ecx, [ebp - 0x24]
call fcn.0043210a
xor ebx, ebx
cmp byte [esi + 0x19], bl
mov dword [ebp - 4], ebx
je 0x4210d2
cmp byte [esi + 0x18], bl
je 0x421085
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 8]
test al, al
jne 0x42109b
push 0x44
push str.S:Ammyy_sourcesmainInteropCommon.cpp
lea ecx, [ebp - 0x30]
call fcn.0042e609
mov ecx, eax
call fcn.0042e715
lea eax, [ebp - 0x94]
push 0x20
push eax
call fcn.0040c4bd
pop ecx
lea eax, [ebp - 0x94]
pop ecx
mov byte [ebp - 0x54], bl
push eax
lea ecx, [ebp - 0x24]
call fcn.00432a35
push eax
call fcn.004213ea
pop ecx
movzx eax, ax
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x24]
call fcn.00432271
push 0x3d
lea ecx, [ebp - 0x24]
call fcn.004322ad
mov edi, dword [ebp - 0x18]
lea ecx, [ebp - 0x44]
call fcn.0045e09c
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
push eax
shr ecx, 7
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x24]
call fcn.004322bc
lea eax, [ebp - 0x44]
push 0x10
push eax
lea ecx, [ebp - 0x24]
call fcn.00432271
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 8]
test al, al
sete cl
inc cl
test al, al
mov byte [ebp - 0x2c], cl
je 0x421126
push 0x37
pop ebx
jmp 0x421129
mov ebx, dword [esi + 8]
push dword [ebp - 0x28]
lea ecx, [ebp - 0x24]
call fcn.004322bc
push 0
lea ecx, [ebp - 0x24]
call fcn.004322bc
call fcn.004294d9
push eax
lea ecx, [ebp - 0x24]
call fcn.004322cb
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x24]
call fcn.004322ad
mov eax, dword [0x4c1f90]
lea ecx, [ebp - 0x24]
xor eax, 0xfe7ded7b
push eax
call fcn.004322cb
push ebx
lea ecx, [ebp - 0x24]
call fcn.004322cb
mov eax, dword [esi]
lea ecx, [ebp - 0x24]
push ecx
mov ecx, esi
call dword [eax + 0x14]
mov ecx, dword [esi + 0xc]
push 1
push 0x4b5ac4
add ecx, 0xc
call fcn.004303cf
lea ecx, [ebp - 0x1f4c]
call fcn.0042238f
mov eax, dword [esi + 0xc]
lea ecx, [ebp - 0x1f4c]
add eax, 0xc
mov byte [ebp - 4], 1
push eax
call fcn.0042e7fa
push 0x12
lea ecx, [ebp - 0x24]
call fcn.0042dacc
add eax, edi
lea ecx, [ebp - 0x1f4c]
push eax
call fcn.00430198
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x24]
sub eax, edi
sub eax, 0x12
push eax
call fcn.0042dacc
mov ecx, dword [esi + 0xc]
lea eax, [eax + edi + 0x12]
push eax
add ecx, 0xc
call fcn.00430198
lea ecx, [ebp - 0x24]
call fcn.0042dacc
cmp byte [esi + 0x18], 0
mov edi, dword [ebp - 0x18]
mov ebx, eax
je 0x42120f
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 8]
test al, al
jne 0x421262
mov al, byte [0x4c2960]
jmp 0x421214
mov al, byte [0x4c2961]
test al, al
je 0x421262
lea eax, [ebp - 0x50]
push 0x1c
push eax
call fcn.0040c4bd
push edi
lea eax, [ebp - 0x50]
push ebx
push eax
lea eax, [ebp - 0x194]
push eax
call fcn.004212c5
movzx edi, ax
add esp, 0x18
cmp edi, 0x100
lea ebx, [ebp - 0x194]
jbe 0x421262
push 0x87
push str.S:Ammyy_sourcesmainInteropCommon.cpp
lea ecx, [ebp - 0x30]
call fcn.0042e609
mov ecx, eax
call fcn.0042e715
push 0
push edi
push ebx
push dword [ebp + 8]
call dword [sym.imp.WS2_32.dll_send]
cmp eax, edi
pop edi
pop esi
pop ebx
je 0x42129c
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
lea eax, [ebp - 0x34]
push str.error_d__while_sending_Initial_msg
push eax
call fcn.00422392
add esp, 0xc
lea eax, [ebp - 0x34]
push 0x4a0cf0
push eax
call sub.MSVCRT.dll__CxxThrowException
and byte [ebp - 4], 0
lea ecx, [ebp - 0x1f4c]
call fcn.004207cd
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00432196
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
leave
ret 4