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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x38
mov esi, esp
lea edi, [ebp + 8]
mov eax, dword [0x10123014]
xor eax, ebp
mov dword [esi + 0x30], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x10], eax
push 0xa8
call fcn.100de068
add esp, 4
mov ebx, eax
mov dword [esi + 0xc], esp
sub esp, 0x20
mov edx, esp
mov eax, dword [ebp + 0x28]
mov dword [edx + 0x1c], eax
test eax, eax
je 0x10037936
lock inc dword [eax + 4]
mov edi, dword [edi + 0x1c]
lea ecx, [edx + 4]
mov dword [esi + 4], edx
mov dword [esi + 8], ecx
lea eax, [ebp + 0x10]
push eax
call fcn.100156e0
lea eax, [ebp + 8]
mov eax, dword [eax + 4]
mov ecx, dword [esi + 4]
mov dword [ecx], eax
mov ecx, dword [esi + 4]
mov dword [ecx + 0x18], edi
mov ecx, ebx
push 0
push edi
push eax
call fcn.10013a80
mov dword [ebx + 0x20], 0x10110b10
lea eax, [ebx + 0x24]
mov dword [esi], eax
lea edi, [esi + 0x20]
push 0x5a
push str.....mojocorechannel_win.cc
push str.ChannelWin
push edi
call fcn.10060920
add esp, 0x10
mov ecx, dword [esi]
push edi
call fcn.1006b380
mov ecx, dword [esi + 4]
mov dword [ebx], 0x10110ae0
mov dword [ebx + 0x20], 0x10110b00
mov dword [ebx + 0x24], 0x10110b08
movzx eax, byte [ecx + 5]
mov byte [ebx + 0x38], al
mov dword [ebx + 0x3c], ebx
test ebx, ebx
je 0x100379bc
lock inc dword [ebx + 4]
mov dword [ebx + 0x40], 0
mov byte [ebx + 0x44], 0
mov eax, dword [ecx + 0x1c]
mov dword [ebx + 0x48], eax
test eax, eax
je 0x100379d5
lock inc dword [eax + 4]
lea ecx, [ebx + 0x4c]
call fcn.1006b360
lea ecx, [ebx + 0x60]
call fcn.1006b360
mov word [ebx + 0x74], 0
lea ecx, [ebx + 0x78]
call fcn.1001f1c0
lea ecx, [ebx + 0x7c]
call fcn.1006b360
xorps xmm0, xmm0
movups xmmword [ebx + 0x90], xmm0
mov edi, dword [0x10128814]
test edi, edi
je 0x10037a38
mov eax, dword [0x10127be0]
mov ecx, dword [0x10126eb8]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x10037bd3
mov edi, dword [0x10127bdc]
jmp 0x10037a3a
xor edi, edi
mov eax, edi
shr eax, 0xe
mov ecx, edi
shr ecx, 0x13
mov ecx, dword [ecx*4 + 0x1012b7e0]
bt ecx, eax
jae 0x10037a5b
push edi
call fcn.10064cc0
add esp, 4
jmp 0x10037a67
mov eax, edi
shr eax, 0x15
mov byte [eax + 0x101337e0], 1
lea eax, [ebx + 0x40]
mov dword [esi], eax
mov dword [ebx + 0xa0], edi
mov dword [ebx + 0xa4], 1
mov ecx, dword [esi + 4]
mov eax, dword [ecx + 0x14]
inc eax
cmp eax, 2
jae 0x10037af3
mov eax, ecx
add eax, 8
lea edi, [esi + 0x14]
mov ecx, edi
push eax
call fcn.10080dce
lea ecx, [esi + 0x20]
push edi
call fcn.10080e26
mov dword [esi + 0x20], 0
lea eax, [esi + 0x24]
lea edi, [esi + 0x1c]
mov ecx, edi
push eax
call fcn.100185c0
mov ecx, dword [esi]
push edi
call fcn.10037c30
mov eax, dword [esi + 0x1c]
inc eax
cmp eax, 2
jb 0x10037ade
call fcn.10060950
push dword [esi + 0x1c]
call fcn.1006d7a0
add esp, 4
mov dword [esi + 0x1c], 0
lea ecx, [esi + 0x20]
call fcn.10080ea0
lea ecx, [esi + 0x14]
call fcn.10080df8
lea edi, [ebp + 8]
jmp 0x10037b60
mov eax, ecx
add eax, 0x10
lea edi, [esi + 0x14]
mov ecx, edi
push eax
call fcn.10080dce
lea ecx, [esi + 0x20]
push edi
call fcn.10080e26
mov dword [esi + 0x20], 0
lea eax, [esi + 0x24]
lea edi, [esi + 0x1c]
mov ecx, edi
push eax
call fcn.100185c0
mov ecx, dword [esi]
push edi
call fcn.10037c30
mov eax, dword [esi + 0x1c]
inc eax
cmp eax, 2
lea edi, [ebp + 8]
jb 0x10037b4c
call fcn.10060950
push dword [esi + 0x1c]
call fcn.1006d7a0
add esp, 4
mov dword [esi + 0x1c], 0
lea ecx, [esi + 0x20]
call fcn.10080ea0
lea ecx, [esi + 0x14]
call fcn.10080df8
mov byte [ebx + 0x44], 1
mov eax, dword [esi]
mov eax, dword [eax]
inc eax
cmp eax, 1
jbe 0x10037c2b
mov ecx, dword [esi + 8]
call fcn.10015720
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x10037b8f
lock dec dword [eax + 4]
jne 0x10037b8f
push eax
call fcn.10068460
add esp, 4
test ebx, ebx
mov esp, dword [esi + 0xc]
mov eax, dword [esi + 0x10]
mov dword [eax], ebx
je 0x10037b9f
lock inc dword [ebx + 4]
lea ecx, [ebp + 0x10]
call fcn.10015720
mov eax, dword [edi + 0x20]
test eax, eax
je 0x10037bbd
lock dec dword [eax + 4]
jne 0x10037bbd
push eax
call fcn.10068460
add esp, 4
mov edi, dword [edi]
mov ecx, dword [esi + 0x30]
xor ecx, ebp
call fcn.100dea63
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0x10127be0
call fcn.100de107
add esp, 4
cmp dword [0x10127be0], 0xffffffff
jne 0x10037a30
add edi, 0x78
mov dword [esi + 0x24], 0
mov dword [esi + 0x20], 0
mov ecx, edi
push 8
lea eax, [esi + 0x20]
push eax
push 8
push 0x23
push str.channel_win_total_outgoing_messages
call fcn.1005c970
mov dword [0x10127bdc], eax
push 0x10127be0
call fcn.100de17d
add esp, 4
jmp 0x10037a30
int3