Function at 0x512e550
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x522a1b8
mov eax, dword fs:[0]
push eax
sub esp, 0x4c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x53f3c3c]
xor eax, esp
push eax
lea eax, [esp + 0x60]
mov dword fs:[0], eax
push 0
push 1
lea ecx, [esp + 0x38]
call fcn.051af340
mov dword [esp + 0x68], 0
mov esi, dword [esp + 0x70]
push esi
mov ecx, 0x53f4cc8
call fcn.050674e0
lea ecx, [esp + 0x4c]
test al, al
jne 0x512e605
push str._ERROR:
push 0xff
push 0x2e1
push str..FunctionPlatformBaseBand.cpp
call fcn.051ae270
mov byte [esp + 0x68], 1
mov ecx, dword [0x56bc0f0]
push 0x528eab0
push esi
push str.__d___s__:_invalid_handle_
push ecx
push eax
call fcn.051ae2d0
add esp, 0x14
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
mov dword [esp + 0x68], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.051af410
mov eax, 0xd
jmp 0x512ebe1
push 0x52c722a
push 1
push 0x2e4
push str..FunctionPlatformBaseBand.cpp
call fcn.051ae270
mov edi, eax
mov byte [esp + 0x68], 2
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push esi
push str.__d__________Request________
push eax
push edi
call fcn.051ae2d0
add esp, 0x10
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
push 0x52c722a
push 1
push 0x2e5
push str..FunctionPlatformBaseBand.cpp
lea ecx, [esp + 0x5c]
call fcn.051ae270
mov edi, eax
mov byte [esp + 0x68], 3
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ebp, dword [eax + 8]
push 5
push 5
call sym.META_DLL.dll_META_GetPrimitiveTypeName
mov edx, dword [str.NO_TYPE]
push eax
push 0
push edx
mov ebx, 4
push ebx
push ebx
call sym.META_DLL.dll_META_GetPrimitiveTypeName
push eax
push 0x528eab0
push esi
push str.__d___s__:_req_s__d____s__d___cnf_s__d_
push ebp
push edi
call fcn.051ae2d0
add esp, 0x2c
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
mov ecx, dword [esp + 0x7c]
push 1
lea eax, [esp + 0x34]
lea edx, [esp + 0x24]
push edx
mov dword [esp + 0x28], eax
lea eax, [esp + 0x84]
push eax
push 0x512c3c0
push 0
mov dword [esp + 0x38], ecx
push 5
lea ecx, [esp + 0x2c]
push ecx
push esi
lea ecx, [esp + 0x5c]
call fcn.050659a0
mov byte [esp + 0x68], bl
movsx ecx, word [esp + 0x14]
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x20]
push eax
push ebx
push ecx
push esi
call fcn.051a8590
add esp, 0x14
test eax, eax
je 0x512e783
sub eax, 1
je 0x512e73b
sub eax, 1
je 0x512e734
sub eax, 1
je 0x512e72d
lea edi, [ebx - 3]
jmp 0x512e740
mov edi, 8
jmp 0x512e740
mov edi, 9
jmp 0x512e740
mov edi, 0xa
mov edx, dword [esp + 0x14]
push edx
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xa800
call fcn.05192530
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x3c]
call fcn.05065ae0
mov dword [esp + 0x68], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.051af410
mov eax, edi
jmp 0x512ebe1
mov edi, dword [esp + 0x78]
mov eax, dword [edi]
push eax
push ebx
call sym.META_DLL.dll_META_GetPrimitiveTypeName
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
push eax
push str.addr
push ecx
push edx
push esi
call fcn.0501a0b0
movzx eax, word [edi + 4]
add esp, 0x18
push eax
push ebx
call sym.META_DLL.dll_META_GetPrimitiveTypeName
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
push eax
push str.value
push ecx
push edx
push esi
call fcn.05019ff0
mov eax, dword [esp + 0x30]
push 1
push eax
lea ecx, [esp + 0x3c]
push ecx
push esi
call fcn.05048250
add esp, 0x28
test al, al
jne 0x512e88c
mov edx, dword [esp + 0x14]
push edx
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xa800
call fcn.05192530
push str._ERROR:
push 0xff
push 0x30c
push str..FunctionPlatformBaseBand.cpp
lea ecx, [esp + 0x5c]
call fcn.051ae270
mov edi, eax
mov byte [esp + 0x68], 5
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, dword [esp + 0x18]
movsx edx, word [esp + 0x14]
mov eax, dword [eax + 8]
push ecx
push edx
push 0x528eab0
push esi
push str.__d___s_token_d_:_SendPrimitive_size_d__fail_
push eax
push edi
call fcn.051ae2d0
add esp, 0x1c
mov byte [esp + 0x68], bl
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x3c]
call fcn.05065ae0
mov dword [esp + 0x68], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.051af410
mov eax, 2
jmp 0x512ebe1
push 0x52c722a
push 1
push 0x30f
push str..FunctionPlatformBaseBand.cpp
lea ecx, [esp + 0x5c]
call fcn.051ae270
mov edi, eax
mov byte [esp + 0x68], 6
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
movsx ecx, word [esp + 0x14]
mov eax, dword [eax + 8]
push ecx
push 0x528eab0
push esi
push str.__d___s_token_d_:_OK.
push eax
push edi
call fcn.051ae2d0
add esp, 0x18
mov byte [esp + 0x68], bl
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
push 0x52c722a
push 1
push 0x310
push str..FunctionPlatformBaseBand.cpp
lea ecx, [esp + 0x5c]
call fcn.051ae270
mov edi, eax
mov byte [esp + 0x68], 7
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push esi
push str.__d______Request_End.
push eax
push edi
call fcn.051ae2d0
add esp, 0x10
mov byte [esp + 0x68], bl
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov edx, dword [eax + 0xa8d4]
mov ecx, dword [esp + 0x74]
add eax, 0xa8d0
mov eax, dword [esp + 0x34]
push ecx
mov dword [esp + 0x2c], edx
push 0
lea edx, [esp + 0x30]
push edx
push 2
mov dword [esp + 0x3c], eax
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
jne 0x512ea40
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
add eax, 0xa800
lea edi, [eax + 0x28]
mov dword [esp + 0x70], eax
mov eax, dword [edi]
mov edx, dword [eax + 4]
mov ecx, edi
call edx
mov byte [esp + 0x68], 8
mov eax, dword [esp + 0x14]
push eax
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xa800
call fcn.05192530
push str._WARNING:
push 0xd2
push 0x31d
push str..FunctionPlatformBaseBand.cpp
lea ecx, [esp + 0x5c]
call fcn.051ae270
mov ebp, eax
mov byte [esp + 0x68], 9
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
movsx ecx, word [esp + 0x14]
mov eax, dword [eax + 8]
push ecx
push 0x528eab0
push esi
push str.__d___s_token_d_:_Cancel_
push eax
push ebp
call fcn.051ae2d0
add esp, 0x18
mov byte [esp + 0x68], 8
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
mov byte [esp + 0x68], bl
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x3c]
call fcn.05065ae0
mov dword [esp + 0x68], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.051af410
mov eax, 0x1e
jmp 0x512ebe1
cmp eax, 1
jne 0x512eacc
mov ecx, dword [esp + 0x7c]
cmp byte [ecx], 0
jne 0x512ebbd
push 0x52c722a
push eax
push 0x335
push str..FunctionPlatformBaseBand.cpp
lea ecx, [esp + 0x5c]
call fcn.051ae270
mov edi, eax
mov byte [esp + 0x68], 0xc
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push 0x528eab0
push esi
push str.__d___s__:_Confirm_End.
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [esp + 0x68], bl
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x3c]
call fcn.05065ae0
mov dword [esp + 0x68], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.051af410
xor eax, eax
jmp 0x512ebe1
cmp eax, 0x102
jne 0x512eb5a
push str._ERROR:
push 0xff
push 0x327
push str..FunctionPlatformBaseBand.cpp
lea ecx, [esp + 0x5c]
call fcn.051ae270
mov edi, eax
mov byte [esp + 0x68], 0xa
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
movsx edx, word [esp + 0x14]
mov eax, dword [eax + 8]
push edx
push 0x528eab0
push esi
push str.__d___s_token_d_:_WaitForMultipleObjects___timeout_
push eax
push edi
call fcn.051ae2d0
add esp, 0x18
mov byte [esp + 0x68], bl
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x3c]
call fcn.05065ae0
mov dword [esp + 0x68], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.051af410
mov eax, 0xb
jmp 0x512ebe1
call dword [sym.imp.KERNEL32.dll_GetLastError]
push str._ERROR:
push 0xff
push 0x32e
push str..FunctionPlatformBaseBand.cpp
lea ecx, [esp + 0x5c]
mov edi, eax
call fcn.051ae270
mov ebp, eax
mov byte [esp + 0x68], 0xb
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
movsx ecx, word [esp + 0x14]
mov eax, dword [eax + 8]
push edi
push ecx
push 0x528eab0
push esi
push str.__d___s_token_d_:_WaitForMultipleObjects___failed___Err__u_.
push eax
push ebp
call fcn.051ae2d0
add esp, 0x1c
mov byte [esp + 0x68], bl
lea ecx, [esp + 0x4c]
call fcn.051ae2c0
mov byte [esp + 0x68], 0
lea ecx, [esp + 0x3c]
call fcn.05065ae0
mov dword [esp + 0x68], 0xffffffff
lea ecx, [esp + 0x30]
call fcn.051af410
mov eax, 1
mov ecx, dword [esp + 0x60]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret 0x10