Function at 0x54c574
Capabilities:
Allocate or change rwx memory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
call fcn.0054c981
push eax
call fcn.0047d476
mov dword [ebp - 4], eax
push dword [ebp - 4]
call fcn.0047d476
mov dword [ebp - 0x14], eax
fild dword [ebp + 8]
fstp qword [ebp - 0x1c]
fld qword [ebp - 0x1c]
fsub qword [0x73f63b]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fmul qword [0x73fa94]
fstp qword [ebp - 0x2c]
fild dword [ebp - 0x14]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [ebp - 0x2c]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
call fcn.00470c5e
push eax
call fcn.0047d476
mov dword [ebp - 8], eax
cmp dword [ebp + 0xc], 0xffffffff
jle 0x54c60b
cmp dword [ebp - 8], 0
jle 0x54c60b
mov eax, 1
jmp 0x54c610
mov eax, 0
test eax, eax
je 0x54c95f
cmp dword [0x77adb4], 0
jne 0x54c694
mov dword [ebp - 0x14], esp
push 0x40
push 0x1000
push 0x1e
push 0
call dword [sym.imp.kernel32.dll_VirtualAlloc]
nop
nop
nop
nop
cmp dword [ebp - 0x14], esp
je 0x54c658
push 6
call fcn.00689ae0
add esp, 4
mov dword [0x77adb4], eax
mov dword [ebp - 0x14], esp
push 0x1e
mov eax, 0x74c0b0
test eax, eax
je 0x54c671
add eax, 8
push eax
push dword [0x77adb4]
call dword [sym.imp.kernel32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x14], esp
je 0x54c694
push 6
call fcn.00689ae0
add esp, 4
cmp dword [ebp + 0x18], 0
je 0x54c6f4
lea eax, [ebp - 4]
push eax
call fcn.0054c9a8
mov dword [ebp - 0x14], eax
push 0x74c0d6
push dword [ebp - 0x14]
push 0x74c0e0
mov ecx, 3
call fcn.004795d6
add esp, 0xc
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x54c6d7
push ebx
call fcn.00689ac8
add esp, 4
mov eax, dword [ebp - 0x18]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x54c6eb
push ebx
call fcn.00689ac8
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
jmp 0x54c787
fild dword [ebp + 0xc]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fmul qword [0x73fa94]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
call fcn.00470c5e
mov word [ebp - 0x10], ax
lea eax, [ebp - 0x10]
push eax
call fcn.0054c9f7
mov dword [ebp - 0x14], eax
lea eax, [ebp - 4]
push eax
call fcn.0054c9a8
mov dword [ebp - 0x18], eax
push 0x74c0d6
push dword [ebp - 0x18]
push 0x74c0f8
push dword [ebp - 0x14]
push 0x74c10b
mov ecx, 5
call fcn.004795d6
add esp, 0x14
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x54c75f
push ebx
call fcn.00689ac8
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x54c76f
push ebx
call fcn.00689ac8
add esp, 4
mov eax, dword [ebp - 0x1c]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x54c783
push ebx
call fcn.00689ac8
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
cmp dword [ebp + 0xc], 0
je 0x54c802
fild dword [ebp + 0xc]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fmul qword [0x73fa94]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
call fcn.00470c5e
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
call fcn.0054c9a8
mov dword [ebp - 0x14], eax
push 0x74c117
push dword [ebp - 0x14]
push 0x74c133
push dword [ebp - 0xc]
mov ecx, 4
call fcn.004795d6
add esp, 0x10
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x54c7ea
push ebx
call fcn.00689ac8
add esp, 4
mov eax, dword [ebp - 0x18]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x54c7fe
push ebx
call fcn.00689ac8
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
cmp dword [ebp + 0x10], 0
je 0x54c83c
push 0x74c13c
push dword [ebp - 0xc]
mov ecx, 2
call fcn.004795d6
add esp, 8
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x54c838
push ebx
call fcn.00689ac8
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
lea eax, [ebp - 8]
push eax
call fcn.0054c9a8
mov dword [ebp - 0x14], eax
push 0x80000301
push 0
push dword [0x77adb4]
push 1
mov ebx, 0x198
call fcn.0068b290
add esp, 0x10
mov dword [ebp - 0x18], eax
push 0x74c145
push dword [ebp - 0x18]
push 0x741c1a
push dword [ebp - 0x14]
push 0x74c14f
push dword [ebp - 0xc]
mov ecx, 6
call fcn.004795d6
add esp, 0x18
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x54c8a2
push ebx
call fcn.00689ac8
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x54c8b2
push ebx
call fcn.00689ac8
add esp, 4
mov eax, dword [ebp - 0x1c]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x54c8c6
push ebx
call fcn.00689ac8
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x54c8dd
mov eax, 0x73f5dc
push eax
push 1
mov ebx, 0x194
call fcn.0068b4d0
add esp, 0x10
mov dword [ebp - 4], eax
mov dword [ebp - 0x14], esp
push 0x40
push 0x1000
push dword [ebp - 4]
push 0
call dword [sym.imp.kernel32.dll_VirtualAlloc]
nop
nop
nop
nop
cmp dword [ebp - 0x14], esp
je 0x54c924
push 6
call fcn.00689ae0
add esp, 4
mov dword [ebp - 8], eax
mov dword [ebp - 0x14], esp
push dword [ebp - 4]
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x54c937
add eax, 8
push eax
push dword [ebp - 8]
call dword [sym.imp.kernel32.dll_RtlMoveMemory]
nop
nop
nop
nop
cmp dword [ebp - 0x14], esp
je 0x54c957
push 6
call fcn.00689ae0
add esp, 4
mov eax, dword [ebp - 8]
jmp 0x54c969
mov eax, 0
jmp 0x54c969
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x54c97a
push ebx
call fcn.00689ac8
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x18