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

Disassembly:
push 0xffffffffffffffff
push 0x101a7484
mov eax, dword fs:[0]
push eax
sub esp, 0x14c
mov eax, dword [0x1026d48c]
xor eax, esp
mov dword [esp + 0x148], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1026d48c]
xor eax, esp
push eax
lea eax, [esp + 0x160]
mov dword fs:[0], eax
mov eax, dword [esp + 0x178]
mov ebp, dword [esp + 0x17c]
cmp byte [ebp + 0x24], 0
mov edx, dword [esp + 0x170]
mov esi, dword [esp + 0x184]
mov ebx, ecx
mov ecx, dword [esp + 0x180]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x174]
mov dword [esp + 0x2c], ecx
mov dword [ebp + 0x3c], edx
mov dword [ebp + 0x5c], eax
jne 0x101467f8
cmp byte [esi + 0x129], 0
jne 0x101467f8
xor al, al
jmp 0x101467fd
mov eax, 1
push eax
push str.processChannelMsg
push esi
lea ecx, [esp + 0x48]
call fcn.10061660
cmp byte [ebp + 0x24], 0
mov dword [esp + 0x168], 0
je 0x10146846
cmp byte [esi + 0x125], 0
je 0x10146846
mov ecx, dword [esp + 0x170]
mov edi, dword [esi]
push ecx
call fcn.10141270
mov edx, dword [edi + 0x2c]
add esp, 4
push eax
push str.messageType
mov ecx, esi
call edx
mov ecx, dword [esp + 0x2c]
call fcn.10095ac0
mov eax, dword [esp + 0x174]
lea ecx, [ebx + 0x79c]
push eax
call fcn.101499f0
lea ecx, [esp + 0x30]
mov edi, eax
call fcn.101495d0
lea eax, [ebx + 0x79c]
xor ecx, ecx
test edi, edi
mov byte [esp + 0x168], 1
mov dword [esp + 0x38], edi
mov dword [esp + 0x34], eax
jne 0x101468ec
mov edi, dword [ebp + 0x20]
cmp edi, ecx
jne 0x101468ec
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Internal_error:_The_SshChannel_is_missing.
mov ecx, esi
call eax
mov ecx, dword [esp + 0x174]
push ecx
push str.clientChannelNum
mov ecx, esi
call fcn.100612a0
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.process_channel_message_failed
mov ecx, esi
call eax
lea ecx, [esp + 0x30]
mov byte [esp + 0x168], 0
call fcn.10149cb0
lea ecx, [esp + 0x3c]
mov dword [esp + 0x168], 0xffffffff
call fcn.100616a0
xor al, al
jmp 0x1014745d
mov eax, dword [esp + 0x170]
cmp eax, 0x5e
jne 0x10146b05
cmp byte [ebx + 0xc4], 0
je 0x1014698e
lea ecx, [esp + 0x74]
call fcn.10010fb0
mov ecx, dword [edi + 0x94]
push ecx
push str.channel
lea ecx, [esp + 0x7c]
mov byte [esp + 0x170], 2
call fcn.100146f0
push 0x20
lea ecx, [esp + 0x78]
call fcn.100139f0
mov ecx, dword [esp + 0x18]
call fcn.100f6330
push eax
push str.payloadSize
lea ecx, [esp + 0x7c]
call fcn.100146f0
push 0x1023db2c
lea ecx, [esp + 0x78]
call fcn.10010b90
lea ecx, [esp + 0x74]
call fcn.1008be90
push eax
push str.CHANNEL_DATA:
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
xor ecx, ecx
cmp dword [ebp + 0x28], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
je 0x101469d6
mov ecx, dword [esp + 0x18]
push esi
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0x24]
push eax
push ecx
call fcn.101419f0
mov edx, dword [esp + 0x28]
add esp, 0x10
push edx
lea ecx, [ebp + 0x40]
mov byte [esp + 0x1b], al
call fcn.10018e70
mov ecx, dword [ebp + 0x28]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push esi
push edi
push ebp
call edx
jmp 0x10146ad3
mov eax, dword [ebp + 0x18]
cmp eax, ecx
je 0x10146a91
mov ecx, dword [esp + 0x174]
cmp dword [ebp + 0x14], ecx
jne 0x10146a05
mov ecx, dword [esp + 0x18]
push esi
push eax
push 0
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x2c]
push eax
push ecx
jmp 0x10146ac7
mov edx, ecx
push edx
lea ecx, [ebx + 0x79c]
call fcn.101499f0
mov ebp, eax
test ebp, ebp
je 0x10146a70
lea ecx, [esp + 0x4c]
call fcn.101495d0
mov edx, dword [esp + 0x18]
push esi
mov dword [esp + 0x58], ebp
lea eax, [ebx + 0x79c]
add ebp, 0xb4
push ebp
mov dword [esp + 0x58], eax
push 0
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x2c]
push ecx
push edx
mov byte [esp + 0x180], 3
call fcn.10141910
add esp, 0x18
lea ecx, [esp + 0x4c]
mov byte [esp + 0x17], al
mov byte [esp + 0x168], 1
call fcn.10149cb0
jmp 0x10146ad3
mov eax, dword [esi]
mov edx, dword [eax + 0x14]
push str.Received_CHANNEL_DATA_for_nonexistant_channel.
mov ecx, esi
call edx
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Failed_to_parse_CHANNEL_DATA_message.
mov ecx, esi
call eax
jmp 0x10147436
cmp byte [ebp + 0x24], 0
je 0x10146aae
cmp byte [esi + 0x125], 0
je 0x10146aae
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
push str.Returning_channel_data_to_m_dataPickup
mov ecx, esi
call edx
push esi
lea eax, [edi + 0xb4]
push eax
mov eax, dword [esp + 0x20]
push 0
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x2c]
push edx
push eax
call fcn.10141910
mov byte [esp + 0x2f], al
add esp, 0x18
cmp byte [esp + 0x17], 0
jne 0x10146aed
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Failed_to_parse_CHANNEL_DATA_message.
mov ecx, esi
call eax
jmp 0x10147436
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x20]
push esi
push ecx
push edx
push edi
mov ecx, ebx
call fcn.10146720
jmp 0x10147436
cmp eax, 0x5d
jne 0x10146c46
mov ebp, dword [esp + 0x18]
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x2c]
push ecx
push ebp
mov dword [esp + 0x34], 1
mov dword [esp + 0x2c], 0xffffffff
mov dword [esp + 0x28], 0
call fcn.101877d0
lea edx, [esp + 0x28]
mov byte [esp + 0x23], al
push edx
lea eax, [esp + 0x38]
push eax
push ebp
call fcn.101877d0
add esp, 0x18
cmp byte [ebx + 0xc4], 0
mov byte [esp + 0x27], al
je 0x10146bdc
lea ecx, [esp + 0x74]
call fcn.10010fb0
mov ecx, dword [edi + 0x94]
push ecx
push str.channel
lea ecx, [esp + 0x7c]
mov byte [esp + 0x170], 4
call fcn.100146f0
push 0x20
lea ecx, [esp + 0x78]
call fcn.100139f0
mov edx, dword [esp + 0x1c]
push edx
push str.numBytes
lea ecx, [esp + 0x7c]
call fcn.100146f0
push 0x1023db2c
lea ecx, [esp + 0x78]
call fcn.10010b90
lea ecx, [esp + 0x74]
call fcn.1008be90
push eax
push str.WINDOW_ADJUST:
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
cmp byte [esp + 0x17], 0
je 0x10146c33
cmp byte [esp + 0x27], 0
je 0x10146c33
mov eax, dword [esp + 0x1c]
add dword [edi + 0xb0], eax
cmp byte [esi + 0x125], 0
je 0x10147436
cmp byte [esi + 0x129], 0
je 0x10147436
push eax
push str.adjustSize
mov ecx, esi
call fcn.100612a0
mov eax, dword [edi + 0xb0]
push eax
push str.serverWinSize
mov ecx, esi
call fcn.100612a0
jmp 0x10147436
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Failed_to_parse_WINDOW_ADJUST_message.
mov ecx, esi
call eax
jmp 0x10147436
cmp eax, 0x60
jne 0x10146cf8
mov byte [edi + 0xec], 1
mov byte [ebp + 0x2c], 1
mov eax, dword [edi + 0x10]
cmp eax, ecx
je 0x10146c68
mov byte [eax + 0x164], 1
mov ecx, dword [esp + 0x18]
push ecx
lea ecx, [ebp + 0x40]
call fcn.10018e70
cmp byte [ebx + 0xc4], 0
je 0x10146cde
lea ecx, [esp + 0x74]
call fcn.10010fb0
mov edx, dword [edi + 0x94]
push edx
push str.channel
lea ecx, [esp + 0x7c]
mov byte [esp + 0x170], 5
call fcn.100146f0
push 0x1023db2c
lea ecx, [esp + 0x78]
call fcn.10010b90
lea ecx, [esp + 0x74]
call fcn.1008be90
push eax
push str.CHANNEL_EOF:
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
mov ecx, dword [ebp + 0x28]
test ecx, ecx
je 0x10147436
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push esi
push edi
push ebp
call edx
jmp 0x10147436
cmp eax, 0x61
jne 0x10146dc7
mov byte [edi + 0xed], 1
mov byte [ebp + 0x2d], 1
mov eax, dword [edi + 0x10]
cmp eax, ecx
je 0x10146d1a
mov byte [eax + 0x163], 1
mov eax, dword [esp + 0x18]
push eax
lea ecx, [ebp + 0x40]
call fcn.10018e70
cmp byte [ebx + 0xc4], 0
je 0x10146d90
lea ecx, [esp + 0x74]
call fcn.10010fb0
mov ecx, dword [edi + 0x94]
push ecx
push str.channel
lea ecx, [esp + 0x7c]
mov byte [esp + 0x170], 6
call fcn.100146f0
push 0x1023db2c
lea ecx, [esp + 0x78]
call fcn.10010b90
lea ecx, [esp + 0x74]
call fcn.1008be90
push eax
push str.CHANNEL_CLOSE:
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
mov ecx, dword [ebp + 0x28]
test ecx, ecx
je 0x10146da1
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
push edi
push ebp
call eax
cmp byte [edi + 0xef], 0
jne 0x10147436
mov ecx, dword [esp + 0x2c]
mov edx, dword [edi + 0x94]
push esi
push ecx
push edx
mov ecx, ebx
call fcn.10146370
jmp 0x10147436
cmp eax, 0x5f
jne 0x10146f18
mov eax, dword [ebp + 0x1c]
cmp eax, ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x1c], ecx
je 0x10146e00
mov edx, dword [esp + 0x18]
push esi
push eax
push 0
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x30]
push ecx
push edx
call fcn.10141910
add esp, 0x18
jmp 0x10146e32
cmp byte [ebp + 8], 0
lea eax, [edi + 0xb4]
jne 0x10146e12
lea eax, [edi + 0xd0]
push esi
push eax
push 0
lea eax, [esp + 0x28]
push eax
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x34]
push edx
push eax
call fcn.10141840
add esp, 0x1c
cmp byte [ebx + 0xc4], 0
mov byte [esp + 0x17], al
je 0x10146ec6
lea ecx, [esp + 0x74]
call fcn.10010fb0
mov ecx, dword [edi + 0x94]
push ecx
push str.channel
lea ecx, [esp + 0x7c]
mov byte [esp + 0x170], 7
call fcn.100146f0
push 0x20
lea ecx, [esp + 0x78]
call fcn.100139f0
mov ecx, dword [esp + 0x18]
call fcn.100f6330
push eax
push str.payloadSize
lea ecx, [esp + 0x7c]
call fcn.100146f0
push 0x1023db2c
lea ecx, [esp + 0x78]
call fcn.10010b90
lea ecx, [esp + 0x74]
call fcn.1008be90
push eax
push str.CHANNEL_EXTENDED_DATA:
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
cmp byte [esp + 0x17], 0
jne 0x10146edd
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Failed_to_parse_EXTENDED_DATA_message.
mov ecx, esi
call eax
jmp 0x10146ef8
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
push esi
push ecx
push edx
push edi
mov ecx, ebx
call fcn.10146720
test al, al
je 0x10147436
cmp byte [esi + 0x125], 0
je 0x10147436
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
push str.Received_extended_data.
mov ecx, esi
call edx
jmp 0x10147436
cmp eax, 0x5b
je 0x101473a6
cmp eax, 0x5c
je 0x101473a6
cmp eax, 0x63
je 0x101473a6
cmp eax, 0x64
je 0x101473a6
cmp eax, 0x62
jne 0x1014737f
cmp byte [esi + 0x125], 0
je 0x10146f62
cmp byte [ebp + 0x24], 0
jne 0x10146f62
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
push str.Received_CHANNEL_REQUEST_message
mov ecx, esi
call edx
lea ecx, [esp + 0x74]
call fcn.10010fb0
lea eax, [esp + 0x17]
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x78]
push ecx
lea edx, [esp + 0x30]
push edx
push eax
mov byte [esp + 0x178], 9
mov dword [esp + 0x38], 0
mov byte [esp + 0x27], 0
call fcn.10141a90
add esp, 0x10
test al, al
jne 0x10146fc4
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Failed_to_parse_CHANNEL_REQUEST
mov ecx, esi
call eax
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
jmp 0x101468c0
cmp byte [esi + 0x125], 0
je 0x10147007
cmp byte [ebp + 0x24], 0
jne 0x10147007
mov ecx, dword [esp + 0x28]
push ecx
push str.channelNum
mov ecx, esi
call fcn.100612a0
lea edx, [esp + 0x74]
push edx
push str.requestType
mov ecx, esi
call fcn.10060fd0
movzx eax, byte [esp + 0x17]
push eax
push str.wantReply
mov ecx, esi
call fcn.100612a0
lea ecx, [esp + 0xe8]
call fcn.10010fb0
cmp byte [ebx + 0xc4], 0
mov byte [esp + 0x168], 0xa
je 0x10147076
push 0x101e8698
lea ecx, [esp + 0xec]
call fcn.10010b90
mov ecx, dword [edi + 0x94]
push ecx
push str.channel
lea ecx, [esp + 0xf0]
call fcn.100146f0
push 0x20
lea ecx, [esp + 0xec]
call fcn.100139f0
lea ecx, [esp + 0x74]
call fcn.1008be90
push eax
push str.requestType
lea ecx, [esp + 0xf0]
call fcn.10014730
push str.exit_status
lea ecx, [esp + 0x78]
call fcn.100131b0
test al, al
je 0x101470f9
mov ecx, dword [esp + 0x18]
mov byte [edi + 0xf1], 1
add edi, 0xf4
push edi
lea edx, [esp + 0x78]
push edx
lea eax, [esp + 0x30]
push eax
push ecx
call fcn.10141d50
add esp, 0x10
cmp byte [esi + 0x125], 0
je 0x101470c5
mov edx, dword [edi]
push edx
push str.exitStatusCode
mov ecx, esi
call fcn.100612a0
cmp byte [ebx + 0xc4], 0
je 0x10147355
push 0x20
lea ecx, [esp + 0xec]
call fcn.100139f0
mov eax, dword [edi]
push eax
push str.statusCode
lea ecx, [esp + 0xf0]
call fcn.100146f0
jmp 0x101471da
push str.keepalive
lea ecx, [esp + 0x78]
call fcn.10013020
test al, al
jne 0x10147277
push str.keep_alive
lea ecx, [esp + 0x78]
call fcn.10013020
test al, al
jne 0x10147277
push str.exit_signal
lea ecx, [esp + 0x78]
call fcn.100131b0
test al, al
je 0x10147214
mov ecx, dword [esp + 0x18]
push esi
push edi
push ecx
mov ecx, ebx
mov byte [edi + 0xf2], 1
call fcn.10141b20
cmp byte [ebx + 0xc4], 0
je 0x10147355
push 0x20
lea ecx, [esp + 0xec]
call fcn.100139f0
lea ecx, [edi + 0xf8]
call fcn.1008be90
push eax
push str.signalName
lea ecx, [esp + 0xf0]
call fcn.10014730
push 0x20
lea ecx, [esp + 0xec]
call fcn.100139f0
movzx edx, byte [edi + 0x16c]
push edx
push str.coreDumped
lea ecx, [esp + 0xf0]
call fcn.100146f0
push 0x20
lea ecx, [esp + 0xec]
call fcn.100139f0
lea ecx, [edi + 0x170]
call fcn.1008be90
push eax
push str.errorMessage
lea ecx, [esp + 0xf0]
call fcn.10014730
push 0x1023db2c
lea ecx, [esp + 0xec]
call fcn.10010b90
lea ecx, [esp + 0xe8]
call fcn.1008be90
push eax
push 0x62
call fcn.10141270
add esp, 4
push eax
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
jmp 0x10147355
cmp byte [ebx + 0xc4], 0
je 0x10147252
push 0x1023db2c
lea ecx, [esp + 0xec]
call fcn.10010b90
lea ecx, [esp + 0xe8]
call fcn.1008be90
push eax
push 0x62
call fcn.10141270
add esp, 4
push eax
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
cmp byte [esp + 0x17], 0
je 0x10147355
mov eax, dword [esp + 0x2c]
push esi
push eax
push edi
push 0
mov ecx, ebx
call fcn.10145390
test al, al
jne 0x10147355
jmp 0x101472ed
cmp byte [ebx + 0xc4], 0
je 0x101472b5
push 0x1023db2c
lea ecx, [esp + 0xec]
call fcn.10010b90
lea ecx, [esp + 0xe8]
call fcn.1008be90
push eax
push 0x62
call fcn.10141270
add esp, 4
push eax
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
lea ecx, [esp + 0x58]
call fcn.100182e0
mov ebp, dword [esp + 0x2c]
push esi
push ebp
lea ecx, [esp + 0x60]
push ecx
mov ecx, ebx
mov byte [esp + 0x174], 0xb
call fcn.101452a0
test al, al
jne 0x10147317
lea ecx, [esp + 0x58]
mov byte [esp + 0x168], 0xa
call fcn.10018a90
lea ecx, [esp + 0xe8]
mov byte [esp + 0x168], 9
call fcn.10011070
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
jmp 0x101468c0
cmp byte [esp + 0x17], 0
je 0x10147344
push esi
push ebp
push edi
push 0
mov ecx, ebx
call fcn.10145390
test al, al
je 0x101472dc
push 0x1023db2c
push str._this_is_not_actually_a_failure__it_is_normal_
push str.TRAN
mov ecx, ebx
call fcn.1013f7f0
lea ecx, [esp + 0x58]
mov byte [esp + 0x168], 0xa
call fcn.10018a90
lea ecx, [esp + 0xe8]
mov byte [esp + 0x168], 9
call fcn.10011070
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
jmp 0x10147436
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Unexpected_SSH_channel_message.
mov ecx, esi
call eax
mov ecx, dword [esp + 0x170]
push ecx
push str.messageType
mov ecx, esi
call fcn.100612a0
jmp 0x10147436
cmp byte [ebx + 0xc4], 0
je 0x10147429
lea ecx, [esp + 0x74]
call fcn.10010fb0
push 0x101e8698
lea ecx, [esp + 0x78]
mov byte [esp + 0x16c], 8
call fcn.10010b90
mov edx, dword [edi + 0x94]
push edx
push str.channel
lea ecx, [esp + 0x7c]
call fcn.100146f0
push 0x1023db2c
lea ecx, [esp + 0x78]
call fcn.10010b90
lea ecx, [esp + 0x74]
call fcn.1008be90
push eax
mov eax, dword [esp + 0x174]
push eax
call fcn.10141270
add esp, 4
push eax
push str.TRAN_
mov ecx, ebx
call fcn.1013f7f0
lea ecx, [esp + 0x74]
mov byte [esp + 0x168], 1
call fcn.10011070
mov ecx, dword [esp + 0x18]
push ecx
lea ecx, [ebp + 0x40]
call fcn.10018e70
lea ecx, [esp + 0x30]
mov byte [esp + 0x168], 0
call fcn.10149cb0
lea ecx, [esp + 0x3c]
mov dword [esp + 0x168], 0xffffffff
call fcn.100616a0
mov al, 1
mov ecx, dword [esp + 0x160]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x148]
xor ecx, esp
call fcn.1018f87e
add esp, 0x158
ret 0x18