Function at 0x687cd325
Capabilities:
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x3c
mov ebx, dword [ebp + 0x18]
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0x1c]
movzx edi, bx
test byte [0x687da03c], 8
jne 0x687cd2d8
cmp bx, 0x24
ja 0x687cd258
test bx, bx
je case.0x687cd24b.0
cmp bx, 0x24
ja case.0x687cd24b.0
jmp dword [edi*4 + 0x687dd848]
cmp bx, 0x3e8
jne case.0x687cd24b.0
test byte [0x687da03c], 8
jne 0x687cd4c0
mov eax, dword [ebp + 0x14]
mov dword [esp + 8], 0x14
mov dword [esp + 4], eax
mov eax, dword [esi + 0x54]
mov eax, dword [eax + 0x10]
mov dword [esp], eax
call fcn.687d7e20
mov eax, dword [ebp + 0x10]
mov dword [esp + 4], 0x3e8
mov dword [esp], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
call fcn.687d2690
test byte [0x687da03c], 8
jne 0x687cd490
mov dword [esp + 4], 1
mov dword [esp], esi
call fcn.687d27c0
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
movzx eax, ax
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x10], esi
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0xc], str.__p_____p_0x_08x__p__u__u__n
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], str.DP_HandleMessage
mov dword [esp + 0x14], eax
mov dword [esp + 4], 0x687da03c
mov dword [esp], 3
call fcn.687c3970
jmp 0x687cd232
mov eax, dword [esi + 0x54]
mov ecx, dword [ebp + 0x24]
mov edx, dword fs:[0x18]
mov eax, dword [eax + 0x48]
add eax, 0x30
mov dword [ecx], eax
mov dword [esp + 8], eax
mov dword [esp + 4], 8
mov eax, dword [edx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call sub.kernel32.dll_HeapAlloc
mov ecx, dword [ebp + 0x20]
sub esp, 0xc
mov dword [ecx], eax
test byte [0x687da03c], 1
jne 0x687cd500
mov edx, dword [esi + 0x54]
mov ecx, 0x687da038
add eax, dword [edx + 0x48]
mov edx, 1
mov dword [eax], 0x79616c70
mov dword [eax + 4], 0xb0007
lock xadd dword [ecx], edx
add edx, 1
mov dword [eax + 8], edx
test byte [0x687da03c], 8
je 0x687cd2c8
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], str.Allocating_new_playerid_0x_08x_from_remote_request_n
mov dword [esp + 8], str.DP_HandleMessage
mov dword [esp + 4], 0x687da03c
mov dword [esp], 3
call fcn.687c3970
jmp 0x687cd2c8
mov eax, dword [ebp + 0x10]
mov dword [esp], esi
mov dword [esp + 4], 0x24
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
call fcn.687d2870
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
test byte [0x687da03c], 1
jne 0x687cd540
call sub.kernel32.dll_DebugBreak
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esi + 0x54]
mov ecx, dword [ebp + 0xc]
mov edx, dword [eax + 0x10]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [eax + 0x48]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x14]
mov dword [esp], eax
call fcn.687d81e0
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp + 0x24]
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x20]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call fcn.687d85f0
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov dword [esp + 4], edi
mov dword [esp], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
call fcn.687d2690
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 0xc], str.Sending_message_to_self_to_get_my_addr_n
mov dword [esp + 8], str.DP_HandleMessage
mov dword [esp + 4], 0x687da03c
mov dword [esp], 3
call fcn.687c3970
jmp 0x687cd2b8
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 4]
mov dword [esp + 0xc], str.GOT_THE_SELF_MESSAGE:__p____0x_08x_n
mov dword [esp + 8], str.DP_HandleMessage
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 4], 0x687da03c
mov dword [esp + 0x10], eax
mov dword [esp], 3
call fcn.687c3970
jmp 0x687cd270
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 0xc], str.Ignoring_dwFlags_0x_08x_in_request_msg_n
mov dword [esp + 8], str.DP_HandleMessage
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x687da03c
mov dword [esp], 0
call fcn.687c3970
mov eax, dword [ebp + 0x20]
mov eax, dword [eax]
jmp 0x687cd369
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], str.Unknown_wCommandId__u._Ignoring_message_n
mov dword [esp + 8], str.DP_HandleMessage
mov dword [esp + 4], 0x687da03c
mov dword [esp], 0
call fcn.687c3970
jmp 0x687cd3ff