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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1011c9fc
mov eax, dword fs:[0]
push eax
sub esp, 0xb8
mov eax, dword [0x10165034]
xor eax, esp
mov dword [esp + 0xb0], eax
push ebx
push esi
push edi
mov eax, dword [0x10165034]
xor eax, esp
push eax
lea eax, [esp + 0xc8]
mov dword fs:[0], eax
call dword [sym.imp.NetCommHelper.dll_public:_static_class_CNetManager____cdecl_CNetManager::GetInstance_void_]
mov ecx, eax
call dword [sym.imp.NetCommHelper.dll_public:_bool___thiscall_CNetManager::IsConnected_void_]
test al, al
je 0x1002a631
push str.KeyEvent_start
push 1
push 0x14
push 0x1013088c
push 0x101308c4
call fcn.1010d8f0
push ecx
mov ecx, esp
push 0x101308e0
call fcn.10002200
lea eax, [esp + 0x30]
push eax
call fcn.100d6bd0
add esp, 0x1c
mov dword [esp + 0xd0], 0
mov ecx, dword [eax]
call fcn.100d6b90
mov dword [esp + 0xd0], 0xffffffff
or esi, 0xffffffff
mov edi, dword [esp + 0x1c]
test edi, edi
je 0x1002a003
lea eax, [edi + 4]
mov ecx, esi
lock xadd dword [eax], ecx
jne 0x1002a003
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
lea eax, [edi + 8]
mov edx, esi
lock xadd dword [eax], edx
jne 0x1002a003
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
xorps xmm0, xmm0
mov dword [esp + 0x44], 0
movq qword [esp + 0x3c], xmm0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
sub esp, 0x18
mov dword [esp + 0xe8], 1
mov ecx, esp
mov dword [esp + 0x38], esp
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push 0x10127a22
mov byte [ecx], 0
call fcn.10008550
lea eax, [esp + 0x54]
mov byte [esp + 0xe8], 2
push eax
call fcn.1002ac40
mov ecx, eax
mov byte [esp + 0xec], 1
call fcn.100e7720
mov ecx, dword [esp + 0x40]
mov eax, 0x2aaaaaab
sub ecx, dword [esp + 0x3c]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x24], eax
jne 0x1002a11a
sub esp, 0x18
mov ecx, esp
push 0x101308f8
call fcn.10002200
lea eax, [esp + 0x30]
push eax
call fcn.100d6bd0
add esp, 0x1c
mov byte [esp + 0xd0], 3
mov ecx, dword [eax]
call fcn.100d6bb0
mov byte [esp + 0xd0], 1
mov edi, dword [esp + 0x1c]
test edi, edi
je 0x1002a0fa
lea eax, [edi + 4]
mov ecx, esi
lock xadd dword [eax], ecx
jne 0x1002a0fa
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
lea eax, [edi + 8]
lock xadd dword [eax], esi
dec esi
jne 0x1002a0fa
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
push 0x10130910
push 1
push 0x1c
push 0x10130920
push 0x10130958
call fcn.1010d8f0
add esp, 0x14
jmp 0x1002a60c
call fcn.1002ac40
mov ecx, eax
call fcn.100caf10
sub esp, 0x18
mov ecx, esp
push 0x10130974
call fcn.10002200
lea eax, [esp + 0x30]
push eax
call fcn.100d6bd0
add esp, 0x1c
mov byte [esp + 0xd0], 4
mov ecx, dword [eax]
call fcn.100d6bb0
mov byte [esp + 0xd0], 1
mov edi, dword [esp + 0x1c]
test edi, edi
je 0x1002a183
lea eax, [edi + 4]
mov ecx, esi
lock xadd dword [eax], ecx
jne 0x1002a183
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
lea eax, [edi + 8]
lock xadd dword [eax], esi
dec esi
jne 0x1002a183
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
mov eax, dword [0x1016b628]
test al, 1
jne 0x1002a1d2
or eax, 1
mov dword [0x1016b628], eax
xorps xmm0, xmm0
mov byte [esp + 0xd0], 5
movq qword [0x1016b62c], xmm0
mov dword [0x1016b62c], 0
mov dword [0x1016b630], 0
call fcn.10018940
push 0x10124a70
mov dword [0x1016b62c], eax
call fcn.101177fb
add esp, 4
xor eax, eax
mov dword [esp + 0xa4], 7
mov dword [esp + 0xa0], 0
mov word [esp + 0x90], ax
mov byte [esp + 0xd0], 6
call fcn.100d52d0
cmp dword [esp + 0x24], 0
mov ebx, eax
jbe 0x1002a505
xor edi, edi
mov dword [esp + 0x28], edi
push ebx
call fcn.100d50c0
mov esi, eax
add esp, 4
mov eax, 0x66666667
imul esi
mov eax, esi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea ecx, [ecx + ecx*4]
add ecx, ecx
sub eax, ecx
jne 0x1002a2ef
test esi, esi
je 0x1002a2ef
push ebx
call fcn.100d3c70
sub esp, 0x14
mov ecx, esp
push eax
call fcn.10007fa0
lea ecx, [esp + 0x78]
call fcn.1004e680
mov ecx, esp
mov byte [esp + 0xe8], 7
mov dword [esp + 0x2c], esp
lea eax, [esp + 0x78]
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push eax
mov byte [ecx], 0
call fcn.100081b0
mov byte [esp + 0xe8], 8
call dword [sym.imp.NetCommHelper.dll_public:_static_class_CNetManager____cdecl_CNetManager::GetInstance_void_]
mov ecx, eax
mov byte [esp + 0xe8], 7
call dword [sym.imp.NetCommHelper.dll_public:_void___thiscall_CNetManager::AddData_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___]
test ebx, ebx
je 0x1002a2b7
push ebx
call fcn.100d2a40
add esp, 4
call fcn.100d52d0
mov byte [esp + 0xd0], 6
mov ebx, eax
cmp dword [esp + 0x74], 0x10
jb 0x1002a2da
push dword [esp + 0x60]
call dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [esp + 0x74], 0xf
mov dword [esp + 0x70], 0
mov byte [esp + 0x60], 0
mov esi, dword [esp + 0x3c]
add esi, edi
mov eax, dword [esi + 0x58]
mov dword [esp + 0x14], eax
test eax, eax
je 0x1002a4f4
push dword [esi + 0x24]
lea eax, [esp + 0xac]
push dword [esi + 0x20]
push eax
call fcn.100cde70
add esp, 0xc
xor eax, eax
mov dword [esp + 0x5c], 7
mov dword [esp + 0x58], 0
mov word [esp + 0x48], ax
mov byte [esp + 0xd0], 0xa
lea eax, [esp + 0x48]
cmp byte [esi + 0x18], 0
je 0x1002a348
add esi, 0x40
jmp 0x1002a34b
add esi, 0x28
cmp eax, esi
je 0x1002a35d
push 0xffffffffffffffff
push 0
push esi
lea ecx, [esp + 0x54]
call fcn.10001d60
mov eax, dword [esp + 0x14]
mov ecx, 0x1016b62c
mov edi, dword [0x1016b62c]
add eax, 0x1c
push eax
call fcn.1000cab0
mov esi, eax
mov eax, dword [0x1016b62c]
cmp esi, eax
je 0x1002a3b4
cmp dword [esi + 0x24], 8
lea eax, [esi + 0x10]
mov ecx, dword [eax + 0x10]
jb 0x1002a38e
mov eax, dword [eax]
push ecx
mov ecx, dword [esp + 0x18]
push eax
push dword [ecx + 0x2c]
lea ecx, [ecx + 0x1c]
push 0
call fcn.100035e0
test eax, eax
js 0x1002a3af
mov dword [esp + 0x2c], esi
lea eax, [esp + 0x2c]
jmp 0x1002a3bc
mov eax, dword [0x1016b62c]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
cmp dword [eax], edi
jne 0x1002a483
mov edi, dword [esp + 0x14]
sub esp, 0x18
mov esi, esp
mov dword [esp + 0x48], esp
sub esp, 0x18
xor eax, eax
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [edi + 0x124]
push eax
call fcn.10001d60
mov ecx, esi
call fcn.1004e2f0
mov byte [esp + 0x100], 0xb
mov esi, esp
mov dword [esp + 0x48], esp
xor eax, eax
sub esp, 0x18
mov ecx, esp
push 0xffffffffffffffff
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], 0
push eax
mov word [ecx], ax
lea eax, [edi + 0x10c]
push eax
call fcn.10001d60
mov ecx, esi
call fcn.1004e2f0
add esp, 0x18
mov byte [esp + 0x100], 0xc
call dword [sym.imp.NetCommHelper.dll_public:_static_class_CNetManager____cdecl_CNetManager::GetInstance_void_]
mov ecx, eax
mov byte [esp + 0x100], 0xa
call dword [sym.imp.NetCommHelper.dll_public:_bool___thiscall_CNetManager::UploadFile_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char____class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___]
test al, al
je 0x1002a483
lea eax, [edi + 0x1c]
mov ecx, 0x1016b62c
push eax
call fcn.10018970
push eax
add eax, 0x10
push eax
push ecx
lea eax, [esp + 0x40]
mov ecx, 0x1016b62c
push eax
call fcn.10018a10
sub esp, 0x18
push esp
call fcn.100ce0d0
mov ecx, dword [esp + 0x58]
add esp, 4
mov edi, dword [esp + 0x40]
lea ecx, [edi + ecx]
call fcn.1002a800
push eax
push ebx
call fcn.100d51a0
mov esi, dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
add esp, 8
cmp dword [esp + 0x5c], 8
jb 0x1002a4bf
push dword [esp + 0x48]
call esi
add esp, 4
xor eax, eax
mov byte [esp + 0xd0], 6
cmp dword [esp + 0xbc], 8
mov dword [esp + 0x5c], 7
mov dword [esp + 0x58], 0
mov word [esp + 0x48], ax
jb 0x1002a4f4
push dword [esp + 0xa8]
call esi
add esp, 4
add edi, 0x60
dec dword [esp + 0x24]
mov dword [esp + 0x28], edi
jne 0x1002a212
push ebx
call fcn.100d50c0
add esp, 4
test ebx, ebx
je 0x1002a5b1
test eax, eax
jle 0x1002a5a8
push ebx
call fcn.100d3c70
sub esp, 0x14
mov ecx, esp
push eax
call fcn.10007fa0
lea ecx, [esp + 0x90]
call fcn.1004e680
mov ecx, esp
mov byte [esp + 0xe8], 0xd
mov dword [esp + 0x30], esp
lea eax, [esp + 0x90]
push 0xffffffffffffffff
push 0
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
push eax
mov byte [ecx], 0
call fcn.100081b0
mov byte [esp + 0xe8], 0xe
call dword [sym.imp.NetCommHelper.dll_public:_static_class_CNetManager____cdecl_CNetManager::GetInstance_void_]
mov ecx, eax
mov byte [esp + 0xe8], 0xd
call dword [sym.imp.NetCommHelper.dll_public:_void___thiscall_CNetManager::AddData_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___]
mov byte [esp + 0xd0], 6
cmp dword [esp + 0x8c], 0x10
jb 0x1002a5a8
push dword [esp + 0x78]
call dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
add esp, 4
push ebx
call fcn.100d2a40
add esp, 4
call dword [sym.imp.NetCommHelper.dll_public:_static_class_CNetManager____cdecl_CNetManager::GetInstance_void_]
mov ecx, eax
call dword [sym.imp.NetCommHelper.dll_public:_void___thiscall_CNetManager::HandleData_void_]
mov ecx, dword [esp + 0x40]
mov eax, 0x2aaaaaab
sub ecx, dword [esp + 0x3c]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push str.KeyEvent_size:__d
push 1
push 0x5e
push 0x101309a0
push 0x101309d8
call fcn.1010d8f0
push str.KeyEvent_end
push 1
push 0x5f
push str..._srcMoniterHelperEventExecuteHandleKeyEvent.cpp
push str.CHandleKeyEvent::HandleData
call fcn.1010d8f0
add esp, 0x2c
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x1002a62f
push dword [esp + 0x18]
mov edx, dword [esp + 0x44]
push ecx
call fcn.1002a6e0
push dword [esp + 0x44]
call dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
add esp, 0xc
mov al, 1
mov ecx, dword [esp + 0xc8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xb0]
xor ecx, esp
call fcn.101176fb
mov esp, ebp
pop ebp
ret