Function at 0x1001f870
Capabilities:
Create udp socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
mov eax, dword [0x1003e620]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0x14]
push ebx
push esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0x10]
lea ecx, [eax + 0x69e]
push edi
mov edi, eax
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x40], ecx
cmp eax, ecx
jae 0x1001fbe2
mov ebx, dword [ebp - 0x40]
jmp 0x1001f8b3
mov edx, dword [ebp - 0x34]
cmp edi, 0x193
ja 0x1001fabe
je 0x1001fa45
lea eax, [edi - 0x61]
cmp eax, 0xf2
ja case.0x1001f8da.98
movzx ecx, byte [eax + 0x1001fcb8]
jmp dword [ecx*4 + 0x1001fc98]
mov ecx, dword [esi + 0x5c]
mov eax, dword [ebp - 0x4c]
add ecx, eax
mov dword [edx], ecx
mov edx, dword [esi + 0x68]
mov ecx, dword [esi + 0x6c]
sub edx, eax
sbb ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x2c]
mov dword [eax], edx
mov dword [eax + 4], ecx
jmp case.0x1001f8da.98
push str.B062_PTEmB
call fcn.1000c050
mov eax, dword [esi]
add esp, 4
neg eax
sbb eax, eax
add eax, 2
mov dword [ebp - 0x3c], eax
jmp case.0x1001f8da.98
xor eax, eax
mov edx, 2
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov word [ebp - 0x14], dx
jmp case.0x1001f8da.98
mov edi, dword [ebp - 0x38]
lea eax, [edi + 0x48]
push eax
call fcn.100018e0
mov ecx, dword [edi + 0x44]
lea eax, [edi + 0x44]
add esp, 4
lea edx, [esi + 0x3c]
mov dword [edx], ecx
test ecx, ecx
je 0x1001f960
mov ecx, dword [eax]
mov dword [ecx + 0x40], edx
mov edi, dword [ebp - 0x18]
mov dword [eax], esi
mov dword [esi + 0x40], eax
jmp case.0x1001f8da.98
push 0
push 0
push 0xea
push 0
call fcn.1000e570
add esp, 0x10
xor ecx, ecx
add eax, dword [esi + 0x70]
adc ecx, dword [esi + 0x74]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], ecx
jmp case.0x1001f8da.98
xchg dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x38]
mov dword [edx + 0x48], 0
mov ecx, dword [esi + 0x68]
mov edi, dword [esi + 0x14]
mov eax, dword [esi + 0x60]
mov edx, dword [esi + 0x6c]
push 0x62
push edi
mov dword [ebp - 0x54], ecx
mov ecx, dword [esi + 0x5c]
push ecx
push eax
push esi
mov dword [ebp - 0x50], edx
mov edx, dword [esi + 0x18]
lea eax, [ebp - 0x18]
push eax
push edx
lea ecx, [ebp - 0x54]
push ecx
lea edx, [esi + 0xa4]
push edx
mov dword [ebp - 0x18], 0x1000ee10
call fcn.1000aa50
add esp, 0x24
test eax, eax
je 0x1001fa08
push str.ReadDxbcShaderDataProcessing.ReadDxbcShaderData
push 0x1003455f
push 0
push 0x1003455f
push 0x100345f0
push 2
call fcn.100021f0
add esp, 0x18
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x18], 0x153
mov edi, dword [ebp - 0x18]
jmp case.0x1001f8da.98
mov eax, dword [esi + 4]
lea ecx, [ebp - 0x18]
push ecx
lea edx, [esi + 0x54]
push edx
push 0x9e
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x18], 1
call fcn.100013a0
add esp, 0xc
jmp case.0x1001f8da.98
test edx, edx
je 0x1001faa8
mov ecx, 0x10038ed0
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1001fa70
test dl, dl
je 0x1001fa6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1001fa70
add eax, 2
add ecx, 2
test dl, dl
jne 0x1001fa50
xor eax, eax
jmp 0x1001fa75
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x1001faa8
mov ecx, dword [ebp - 0x34]
lea eax, [ebp - 0x20]
push eax
push ecx
push 0xc2
call fcn.1001df60
add esp, 0xc
test eax, eax
js 0x1001fc42
push 4
lea edx, [ebp - 0x20]
push edx
lea eax, [ebp - 0x10]
push eax
call fcn.10026900
add esp, 0xc
mov ecx, dword [ebp - 0x2c]
movzx edx, word [ecx]
push edx
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x12], ax
jmp case.0x1001f8da.98
cmp edi, 0x2fe
ja 0x1001fbcf
je 0x1001fbbe
mov eax, edi
sub eax, 0x1cc
je 0x1001fc84
sub eax, 0x40
je 0x1001fb5f
sub eax, 0x79
jne case.0x1001f8da.98
push 0x10
lea eax, [ebp - 0x14]
push eax
push ebx
call dword [sym.imp.WS2_32.dll_bind]
test eax, eax
jns case.0x1001f8da.98
mov edi, 0xe7
cmp edi, 0xe7
je 0x1001fb2e
cmp edi, 0x3288
jne 0x1001fb49
or eax, 0x937e85a0
mov eax, dword [ebp - 0x28]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10027670
mov esp, ebp
pop ebp
ret
push str.GVRSQRT14PS
call fcn.1000c050
add esp, 4
push ebx
call dword [sym.imp.WS2_32.dll_closesocket]
mov dword [ebp - 0x28], 0xffffffff
add edi, 0x31a1
cmp edi, 0x6342
jbe 0x1001fb05
mov edi, dword [ebp - 0x18]
jmp case.0x1001f8da.98
mov ecx, dword [ebp - 0x3c]
push 0
push ecx
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov ebx, eax
test ebx, ebx
js 0x1001fc63
cmp dword [esi], 0
je case.0x1001f8da.98
lea edx, [ebp - 0x24]
push edx
lea eax, [ebp - 0x1c]
push eax
push 0x1008
push 0xffff
push ebx
call dword [sym.imp.WS2_32.dll_getsockopt]
test eax, eax
js case.0x1001f8da.98
push 4
lea ecx, [ebp - 0x1c]
push ecx
push 4
push 0xffff
push ebx
mov dword [ebp - 0x1c], 1
call dword [sym.imp.WS2_32.dll_setsockopt]
jmp case.0x1001f8da.98
cmp dword [ebp - 0x3c], 1
jne case.0x1001f8da.98
push 0x10
push ebx
call dword [sym.imp.WS2_32.dll_listen]
jmp case.0x1001f8da.98
mov eax, edi
sub eax, 0x377
je 0x1001fbf6
sub eax, 0x79
jne case.0x1001f8da.98
cmpsb byte [esi], byte es:[edi]
arpl word [ebx + edi*8 - 0x27ba74ad], bp
mov eax, dword [ebp - 0x28]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10027670
mov esp, ebp
pop ebp
ret
push 0xab
push 0
push 0
push 0
lea edx, [ebp - 0x28]
push edx
push 0
mov dword [ebp - 0x28], ebx
call fcn.1001f730
push str.netannounce_succeeded
call fcn.1000c050
add esp, 0x1c
mov dword [ebp - 0x28], ebx
add edi, 0x79
mov dword [ebp - 0x18], edi
cmp edi, dword [ebp - 0x40]
jb 0x1001f8b0
mov eax, dword [ebp - 0x28]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10027670
mov esp, ebp
pop ebp
ret
push str.src_jpegloader.c
call fcn.1000c050
add esp, 4
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10027670
mov esp, ebp
pop ebp
ret
push str.socket_failed
call fcn.1000c050
add esp, 4
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10027670
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x30]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10027670
mov esp, ebp
pop ebp
ret