Function at 0x921220
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0xb0e6a0
push 0xa847a0
mov eax, dword fs:[0]
push eax
sub esp, 0x2c4
mov eax, dword [0xb196ec]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x20], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x254], eax
mov esi, ecx
mov dword [ebp - 0x258], esi
mov edi, edx
xor ecx, ecx
mov word [ebp - 0x22c], cx
push 0x206
xor ebx, ebx
push ebx
lea edx, [ebp - 0x22a]
push edx
call fcn.00a7ffb0
add esp, 0xc
mov dword [ebp - 0x234], ebx
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x238], ebx
mov dword [ebp - 0x23c], ebx
mov dword [ebp - 0x240], ebx
mov dword [ebp - 0x2d4], ebx
push 0x6c
push ebx
lea eax, [ebp - 0x2d0]
push eax
call fcn.00a7ffb0
add esp, 0xc
cmp esi, ebx
je 0x9212c5
mov byte [esi], bl
cmp edi, ebx
je 0x9212cb
mov byte [edi], bl
cmp dword [0xbfa380], ebx
jne 0x92144b
mov ecx, str.Crypt32.dll
call fcn.0094c620
mov dword [0xbfa380], eax
cmp eax, ebx
jne 0x921321
cmp edi, ebx
je 0x921303
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.LoadLibrary_Failed__ErrorCode:__d_
push edi
call fcn.00a78f30
add esp, 0xc
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x20]
xor ecx, ebp
call fcn.00a78f21
mov esp, ebp
pop ebp
ret
push str.CryptQueryObject
push eax
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call esi
mov dword [0xbfa360], eax
push str.CryptMsgGetParam
mov ecx, dword [0xbfa380]
push ecx
call esi
mov dword [0xbfa364], eax
push str.CertFindCertificateInStore
mov edx, dword [0xbfa380]
push edx
call esi
mov dword [0xbfa37c], eax
push str.CryptDecodeObject
mov eax, dword [0xbfa380]
push eax
call esi
mov dword [0xbfa368], eax
push str.CertGetNameStringA
mov ecx, dword [0xbfa380]
push ecx
call esi
mov dword [0xbfa36c], eax
push str.CryptMsgClose
mov edx, dword [0xbfa380]
push edx
call esi
mov dword [0xbfa370], eax
push str.CertCloseStore
mov eax, dword [0xbfa380]
push eax
call esi
mov dword [0xbfa374], eax
push str.CertFreeCertificateContext
mov ecx, dword [0xbfa380]
push ecx
call esi
mov dword [0xbfa378], eax
cmp dword [0xbfa360], ebx
je 0x9213f3
cmp dword [0xbfa364], ebx
je 0x9213f3
cmp dword [0xbfa37c], ebx
je 0x9213f3
cmp dword [0xbfa368], ebx
je 0x9213f3
cmp dword [0xbfa36c], ebx
je 0x9213f3
cmp dword [0xbfa370], ebx
je 0x9213f3
cmp dword [0xbfa374], ebx
je 0x9213f3
cmp eax, ebx
jne 0x921450
mov edx, dword [0xbfa380]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0xbfa360], ebx
mov dword [0xbfa364], ebx
mov dword [0xbfa37c], ebx
mov dword [0xbfa368], ebx
mov dword [0xbfa36c], ebx
mov dword [0xbfa370], ebx
mov dword [0xbfa374], ebx
mov dword [0xbfa378], ebx
cmp edi, ebx
je 0x921303
push str.Unable_to_GetProcAddress_from_Crypt32.dll_
push edi
call fcn.00a78f30
add esp, 8
jmp 0x921303
mov eax, dword [0xbfa378]
cmp dword [0xbfa360], ebx
je 0x921303
cmp dword [0xbfa364], ebx
je 0x921303
cmp dword [0xbfa37c], ebx
je 0x921303
cmp dword [0xbfa368], ebx
je 0x921303
cmp dword [0xbfa36c], ebx
je 0x921303
cmp dword [0xbfa370], ebx
je 0x921303
cmp dword [0xbfa374], ebx
je 0x921303
cmp eax, ebx
je 0x921303
xor eax, eax
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x24c], eax
mov dword [ebp - 0x248], eax
mov dword [ebp - 4], ebx
mov esi, dword [ebp - 0x254]
cmp esi, ebx
je 0x9216d3
cmp byte [esi], bl
je 0x9216d3
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push esi
lea eax, [ebp - 0x22c]
push eax
call fcn.00a7cb89
add esp, 0xc
cmp eax, 0xffffffff
jne 0x92151e
cmp edi, ebx
je 0x9216c2
push str.Unable_to_convert_to_unicode.
push edi
call fcn.00a78f30
add esp, 8
mov dword [ebp - 4], 0xfffffffe
call fcn.009216fc
jmp 0x921303
push ebx
lea ecx, [ebp - 0x230]
push ecx
lea edx, [ebp - 0x234]
push edx
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x25c]
push ecx
lea edx, [ebp - 0x264]
push edx
push ebx
push 2
push 0x400
lea eax, [ebp - 0x22c]
push eax
push 1
call dword [0xbfa360]
cmp eax, ebx
jne 0x92158b
cmp edi, ebx
je 0x9216c2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.CryptQueryObject_failed_with__x.
push edi
call fcn.00a78f30
add esp, 0xc
mov dword [ebp - 4], 0xfffffffe
call fcn.009216fc
jmp 0x921303
lea ecx, [ebp - 0x244]
push ecx
push ebx
push ebx
push 6
mov edx, dword [ebp - 0x230]
push edx
call dword [0xbfa364]
cmp eax, ebx
jne 0x9215d5
cmp edi, ebx
je 0x9216c2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.CryptMsgGetParam_failed_with__x.
push edi
call fcn.00a78f30
add esp, 0xc
mov dword [ebp - 4], 0xfffffffe
call fcn.009216fc
jmp 0x921303
mov eax, dword [ebp - 0x244]
push eax
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov esi, eax
mov dword [ebp - 0x23c], esi
cmp esi, ebx
jne 0x921617
cmp edi, ebx
je 0x9216c2
push str.Unable_to_allocate_memory_for_Signer_Info.
push edi
call fcn.00a78f30
add esp, 8
mov dword [ebp - 4], 0xfffffffe
call fcn.009216fc
jmp 0x921303
lea ecx, [ebp - 0x244]
push ecx
push esi
push ebx
push 6
mov edx, dword [ebp - 0x230]
push edx
call dword [0xbfa364]
cmp eax, ebx
je 0x9215a7
mov eax, dword [esi + 4]
mov dword [ebp - 0x2bc], eax
mov ecx, dword [esi + 8]
mov dword [ebp - 0x2b8], ecx
mov edx, dword [esi + 0xc]
mov dword [ebp - 0x2d0], edx
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x2cc], eax
push ebx
lea ecx, [ebp - 0x2d4]
push ecx
push 0xb0000
push ebx
push 0x10001
mov edx, dword [ebp - 0x234]
push edx
call dword [0xbfa37c]
mov dword [ebp - 0x238], eax
cmp eax, ebx
jne 0x9216af
cmp edi, ebx
je 0x9216c2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.CertFindCertificateInStore_failed_with__x.
push edi
call fcn.00a78f30
add esp, 0xc
mov dword [ebp - 4], 0xfffffffe
call fcn.009216fc
jmp 0x921303
mov ecx, dword [ebp - 0x258]
push ecx
mov ecx, edi
mov edx, eax
call fcn.009217b0
add esp, 4
mov dword [ebp - 4], 0xfffffffe
call fcn.009216fc
jmp 0x921303
cmp edi, ebx
je 0x9216e5
push str.Invalid_Param.
push edi
call fcn.00a78f30
add esp, 8
push 0xfffffffffffffffe
lea edx, [ebp - 0x10]
push edx
push 0xb196ec
call fcn.00a858f0
jmp 0x921300