Function at 0x1000820a
Capabilities:
Decrypt data via sspi

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x198
mov eax, dword [0x10010008]
xor eax, ebp
mov dword [ebp - 8], eax
and dword [ebp - 0x168], 0
mov eax, dword [0x10010dfc]
mov dword [ebp - 0x188], edx
mov dword [ebp - 0x180], ecx
push ebx
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x17c], ebx
push esi
push edi
test eax, eax
jne 0x1000824d
cmp dword [0x100108f8], eax
je 0x1000825c
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
and dword [0x100108f8], 0
pop ecx
lea eax, [ebp - 0x150]
push eax
push 4
push ebx
call dword [sym.imp.Secur32.dll_QueryContextAttributesA]
mov esi, eax
test esi, esi
je 0x10008279
mov eax, esi
jmp 0x100085a2
mov ecx, dword [ebp - 0x14c]
add ecx, dword [ebp - 0x148]
mov eax, dword [ebp - 0x150]
add eax, ecx
push eax
mov dword [ebp - 0x184], eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov ebx, eax
mov dword [ebp - 0x160], ebx
pop ecx
test ebx, ebx
je 0x1000859d
xor edi, edi
test edi, edi
je 0x100082b9
cmp esi, 0x80090318
jne 0x100082fe
mov eax, dword [ebp - 0x184]
push 0
sub eax, edi
push eax
lea eax, [edi + ebx]
push eax
push dword [ebp - 0x180]
call dword [0x10010df8]
mov esi, eax
cmp esi, 0xffffffff
je 0x10008599
test esi, esi
je 0x10008595
push esi
lea eax, [ebp - 0x10c]
push str._d_bytes_of__encrypted__application_data_received_n
push eax
call fcn.1000bb4a
add esp, 0xc
add edi, esi
and dword [ebp - 0x12c], 0
lea eax, [ebp - 0x13c]
and dword [ebp - 0x120], 0
and dword [ebp - 0x114], 0
and dword [ebp - 0x15c], 0
push 0
mov dword [ebp - 0x154], eax
lea eax, [ebp - 0x15c]
push 0
push eax
push dword [ebp - 0x17c]
mov dword [ebp - 0x134], ebx
mov dword [ebp - 0x13c], edi
mov dword [ebp - 0x138], 1
mov dword [ebp - 0x158], 4
call dword [sym.imp.Secur32.dll_DecryptMessage]
mov esi, eax
mov dword [ebp - 0x178], esi
cmp esi, 0x80090318
je 0x100082ad
cmp esi, 0x90317
je 0x10008599
test esi, esi
je 0x1000838d
cmp esi, 0x90321
jne 0x10008272
push 3
xor edi, edi
lea eax, [ebp - 0x130]
xor ebx, ebx
pop ecx
test edi, edi
jne 0x100083a6
cmp dword [eax + 4], 1
jne 0x100083a6
mov edi, eax
test ebx, ebx
jne 0x100083b2
cmp dword [eax + 4], 5
jne 0x100083b2
mov ebx, eax
add eax, 0xc
sub ecx, 1
jne 0x1000839a
mov dword [ebp - 0x164], ebx
test edi, edi
je 0x1000850c
push dword [0x100108f8]
lea eax, [ebp - 0x10c]
push 1
push dword [ebp - 0x168]
push dword [edi]
push str.Decrypted_data:__d_bytes__packets_done__d__hackmode__d__hacklen__d_n
push eax
call fcn.1000bb4a
mov eax, dword [0x10010df4]
add esp, 0x18
test eax, eax
je 0x100083fd
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
pop ecx
push dword [edi]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
push dword [edi]
mov dword [0x10010df4], eax
push dword [edi + 8]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
cmp dword [0x10010dfc], 0
je 0x100084a6
mov edx, dword [0x100108f8]
test edx, edx
je 0x100084a6
mov eax, dword [edi]
xor ecx, ecx
add eax, edx
setb cl
neg ecx
or ecx, eax
push ecx
push dword [0x10010dfc]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov edx, dword [edi + 8]
pop ecx
mov dword [0x10010dfc], eax
mov eax, dword [edi]
mov dword [ebp - 0x170], edx
xor edx, edx
mov dword [ebp - 0x16c], eax
pop ecx
mov ecx, dword [0x100108f8]
test eax, eax
jle 0x100084a2
mov eax, dword [0x10010dfc]
mov esi, dword [ebp - 0x170]
add eax, ecx
mov ecx, dword [ebp - 0x16c]
mov ebx, eax
mov al, byte [esi]
inc esi
mov byte [ebx + edx], al
inc edx
cmp edx, ecx
jl 0x10008483
mov esi, dword [ebp - 0x178]
mov ecx, dword [0x100108f8]
mov ebx, dword [ebp - 0x164]
mov eax, dword [edi]
add ecx, eax
jmp 0x10008506
push dword [edi]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov edx, dword [edi]
and dword [ebp - 0x174], 0
mov dword [0x10010dfc], eax
mov eax, dword [edi + 8]
mov dword [ebp - 0x170], eax
pop ecx
mov ecx, dword [0x100108f8]
test edx, edx
jle 0x10008504
mov eax, dword [0x10010dfc]
mov esi, dword [ebp - 0x170]
add eax, ecx
mov ecx, dword [ebp - 0x174]
mov ebx, eax
mov al, byte [esi]
inc esi
mov byte [ebx + ecx], al
inc ecx
cmp ecx, edx
jl 0x100084e5
mov esi, dword [ebp - 0x178]
mov ecx, dword [0x100108f8]
mov ebx, dword [ebp - 0x164]
mov edx, dword [edi]
add ecx, edx
mov dword [0x100108f8], ecx
test ebx, ebx
je 0x10008527
push dword [ebx]
push dword [ebx + 8]
push dword [ebp - 0x160]
call sub.VCRUNTIME140.dll_memcpy
mov edi, dword [ebx]
add esp, 0xc
jmp 0x10008529
xor edi, edi
cmp esi, 0x90321
jne 0x10008584
mov edx, dword [ebp - 0x188]
lea eax, [ebp - 0x194]
mov ecx, dword [ebp - 0x180]
push eax
push 0
push dword [ebp - 0x17c]
call fcn.10007e4d
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x10008272
mov ebx, dword [ebp - 0x160]
cmp dword [ebp - 0x18c], eax
je 0x1000858a
mov edi, dword [ebp - 0x194]
push edi
push dword [ebp - 0x18c]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
jmp 0x1000858a
mov ebx, dword [ebp - 0x160]
inc dword [ebp - 0x168]
jmp 0x100082ad
test edi, edi
jne 0x1000859d
xor eax, eax
jmp 0x100085a2
mov eax, 0x80090304
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1000bbcb
leave
ret