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

Disassembly:
sub esp, 0x114
push ebx
push ebp
mov ebp, dword [esp + 0x120]
xor ebx, ebx
push edi
mov edi, dword [esp + 0x128]
mov dword [esp + 0x10], ebx
cmp byte [ebp + 0x444], bl
jne 0x49aa15
test edi, edi
je 0x49aa15
pop edi
pop ebp
xor eax, eax
pop ebx
add esp, 0x114
ret
push dword [esp + 0x130]
lea eax, [esp + 0x24]
push dword [esp + 0x130]
push eax
call fcn.0049c290
add esp, 0xc
test eax, eax
je 0x49aa43
pop edi
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.0049c5a0
mov esi, eax
add esp, 4
test esi, esi
je case.0x49bab7.7
cmp byte [ebp + 0x444], bl
je 0x49aa84
push esi
push str.Subject
push edi
push ebp
call fcn.004617b0
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x14], ebx
test ebx, ebx
jne 0x49bf66
test edi, edi
jne 0x49aa98
push esi
push edi
push str._2d_Subject:__s
push ebp
call fcn.00466d40
add esp, 0x10
push esi
call dword [0x4f7004]
lea eax, [esp + 0x78]
push eax
call fcn.0049c5a0
mov esi, eax
add esp, 8
test esi, esi
je case.0x49bab7.7
cmp byte [ebp + 0x444], 0
je 0x49aad5
push esi
push str.Issuer
push edi
push ebp
call fcn.004617b0
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x14], ebx
test edi, edi
jne 0x49aae8
push esi
push str.___Issuer:__s
push ebp
call fcn.00466d40
add esp, 0xc
push esi
call dword [0x4f7004]
add esp, 4
test ebx, ebx
jne 0x49ab5a
mov ecx, dword [esp + 0x38]
xor esi, esi
mov edx, dword [esp + 0x3c]
cmp ecx, edx
jae 0x49ab11
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x49ab04
cmp byte [ebp + 0x444], 0
je 0x49ab6e
push esi
push 0x4dc394
call fcn.0046bb90
mov edi, eax
add esp, 8
test edi, edi
je case.0x49bab7.7
mov ebx, dword [esp + 0x12c]
push edi
push str.Version
push ebx
push ebp
call fcn.004617b0
mov ebx, eax
push edi
mov dword [esp + 0x28], ebx
call dword [0x4f7004]
add esp, 0x14
test ebx, ebx
je 0x49ab67
pop esi
pop edi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x114
ret
mov edi, dword [esp + 0x12c]
test edi, edi
jne 0x49ab85
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__lu__0x_lx_
push ebp
call fcn.00466d40
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x49bab7.7
movzx ebx, byte [esp + 0x51]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x49bab7.7
movzx eax, byte [eax + 0x49c100]
mov ebp, 0x4e72be
mov edx, str.FALSE
jmp dword [eax*4 + 0x49c0d8]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x49abcf
xor esi, esi
jmp 0x49afa5
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x4f700c]
add esp, 4
mov esi, eax
jmp 0x49afa5
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x49ac00
xor esi, esi
jmp 0x49afa5
cmp eax, 4
jbe 0x49ac16
push esi
push edx
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49afa5
movsx ecx, byte [edx]
sar ecx, 0x1f
nop dword [eax]
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x49ac20
cmp ecx, 0xa
mov eax, 0x4de604
push ecx
cmovb eax, ebp
push eax
push str._s_x
call fcn.0046bb90
add esp, 0xc
mov esi, eax
jmp 0x49afa5
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x49ac62
xor esi, esi
jmp 0x49afa5
push ecx
push eax
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49afa5
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49afa5
push 0x4e72be
call dword [0x4f700c]
add esp, 4
mov esi, eax
jmp 0x49afa5
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.0049c600
add esp, 0xc
mov esi, eax
jmp 0x49afa5
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x49acd3
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x49acd3
inc ecx
cmp ecx, edx
jb 0x49acc6
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x49aceb
sub eax, 2
je 0x49acf0
xor esi, esi
jmp 0x49afa5
mov edi, 0x4de644
cmp ecx, edx
jb 0x49acfb
xor esi, esi
jmp 0x49afa5
cmp byte [ecx], 0x5a
jne 0x49ad0c
mov ecx, 0x4de648
mov edx, 0x4de64b
jmp 0x49ad0d
inc ecx
push ecx
sub edx, ecx
lea eax, [esi + 8]
push edx
push edi
push eax
lea eax, [esi + 6]
push eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 2]
push eax
xor eax, eax
cmp byte [esi], 0x35
push esi
setl al
add eax, 0x13
push eax
push str._u_.2s__.2s__.2s__.2s:_.2s:_.2s__.s
call fcn.0046bb90
add esp, 0x28
mov esi, eax
jmp 0x49afa5
mov ebp, dword [esp + 0x48]
mov esi, 0x4e72be
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x49ad63
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x49ad63
inc ecx
cmp ecx, edi
jb 0x49ad56
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x49ad91
sub eax, 1
je 0x49ad8c
sub eax, 1
je 0x49ad85
xor esi, esi
jmp 0x49afa5
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x49ad93
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x49adf2
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x49ada7
cmp bl, 0x2c
jne 0x49add7
inc ecx
inc eax
cmp eax, edi
jae 0x49adb9
mov dl, byte [eax]
cmp dl, 0x30
jl 0x49adb9
cmp dl, 0x39
jle 0x49ada8
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x49add7
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x49add2
dec esi
sub edx, 1
jne 0x49adc7
mov esi, 0x4e72be
cmp eax, edi
jae 0x49adf2
cmp byte [eax], 0x5a
jne 0x49adec
mov eax, str._GMT
mov edi, 0x4de614
jmp 0x49adf2
mov esi, 0x4ec590
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x4e72be
mov eax, 0x4d47b4
cmove eax, ecx
push eax
movsx eax, bh
push eax
movsx eax, byte [esp + 0x2f]
push eax
lea eax, [ebp + 0xa]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 6]
push eax
lea eax, [ebp + 4]
push eax
push ebp
push str._.4s__.2s__.2s__.2s:_.2s:_c_c_s_.s_s_.s
call fcn.0046bb90
add esp, 0x38
mov esi, eax
jmp 0x49afa5
mov edi, dword [esp + 0x4c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x48]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x49ae5e.13
movzx eax, byte [eax + 0x49c130]
jmp dword [eax*4 + 0x49c120]
mov ecx, 2
jmp 0x49ae71
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x49ae5e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x49ae5e.13
lea eax, [eax*4 + 1]
push eax
call dword [section..data]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x49ae5e.13
cmp ebx, 0xc
jne 0x49aeca
test edi, edi
je 0x49aec1
push edi
push esi
push ebp
call fcn.004a69b0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x49af9e
xor edi, edi
cmp esi, dword [esp + 0x4c]
jae 0x49aec1
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x49aef1
sub eax, 2
jne 0x49aefa
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
shl ecx, 8
or ecx, eax
add esi, 2
movzx eax, byte [esi]
shl ecx, 8
or ecx, eax
inc esi
movzx eax, byte [esi]
mov ebx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x49af78
cmp ecx, 0x800
jb 0x49af60
cmp ecx, 0x10000
jb 0x49af44
cmp ecx, 0x200000
jae 0x49af8f
mov al, cl
lea edx, [edi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x49af4c
lea edx, [edi + ebp]
mov ebx, 2
mov al, cl
or ecx, 0x20000
and al, 0x3f
or al, 0x80
shr ecx, 6
mov byte [edx + 2], al
jmp 0x49af63
lea edx, [edi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x49af7b
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x4c]
jb 0x49aed2
mov byte [edi + ebp], 0
jmp 0x49af9e
push ebp
call dword [0x4f7004]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
test esi, esi
je case.0x49bab7.7
mov edi, dword [esp + 0x128]
mov ebx, dword [esp + 0x12c]
cmp byte [edi + 0x444], 0
je 0x49afdc
push esi
push str.Serial_Number
push ebx
push edi
call fcn.004617b0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
jmp 0x49afe0
mov ebp, dword [esp + 0x14]
test ebx, ebx
jne 0x49aff3
push esi
push str.___Serial_Number:__s
push edi
call fcn.00466d40
add esp, 0xc
push esi
call dword [0x4f7004]
add esp, 4
test ebp, ebp
jne 0x49c0cb
push dword [esp + 0x5c]
lea eax, [esp + 0x118]
push dword [esp + 0x5c]
push eax
call fcn.0049cff0
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x49bab7.7
cmp byte [edi + 0x444], 0
je 0x49b046
push esi
push str.Signature_Algorithm
push ebx
push edi
call fcn.004617b0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x49b059
push esi
push str.___Signature_Algorithm:__s
push edi
call fcn.00466d40
add esp, 0xc
push esi
call dword [0x4f7004]
add esp, 4
test ebp, ebp
jne 0x49c0cb
cmp byte [esp + 0x92], 0
jne case.0x49bab7.7
movzx ebx, byte [esp + 0x91]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x49bab7.7
movzx eax, byte [eax + 0x49c16c]
jmp dword [eax*4 + 0x49c144]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x49b0b7
xor esi, esi
jmp 0x49b4d6
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4f700c]
add esp, 4
mov esi, eax
jmp 0x49b4d6
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x49b0f3
xor esi, esi
jmp 0x49b4d6
cmp eax, 4
jbe 0x49b109
push esi
push edx
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49b4d6
movsx ecx, byte [edx]
sar ecx, 0x1f
nop
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x49b110
push ecx
cmp ecx, 0xa
mov eax, 0x4de604
mov ecx, 0x4e72be
cmovb eax, ecx
push eax
push str._s_x
call fcn.0046bb90
add esp, 0xc
mov esi, eax
jmp 0x49b4d6
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x49b15d
xor esi, esi
jmp 0x49b4d6
push ecx
push eax
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49b4d6
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49b4d6
push 0x4e72be
call dword [0x4f700c]
add esp, 4
mov esi, eax
jmp 0x49b4d6
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.0049c600
add esp, 0xc
mov esi, eax
jmp 0x49b4d6
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x49b1e0
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x49b1e0
inc ecx
cmp ecx, edx
jb 0x49b1d3
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x49b1f8
sub eax, 2
je 0x49b1fd
xor esi, esi
jmp 0x49b4cf
mov edi, 0x4de644
cmp ecx, edx
jb 0x49b208
xor esi, esi
jmp 0x49b4cf
cmp byte [ecx], 0x5a
jne 0x49b219
mov ecx, 0x4de648
mov edx, 0x4de64b
jmp 0x49b21a
inc ecx
push ecx
sub edx, ecx
lea eax, [esi + 8]
push edx
push edi
push eax
lea eax, [esi + 6]
push eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 2]
push eax
xor eax, eax
cmp byte [esi], 0x35
push esi
setl al
add eax, 0x13
push eax
push str._u_.2s__.2s__.2s__.2s:_.2s:_.2s__.s
call fcn.0046bb90
add esp, 0x28
mov esi, eax
jmp 0x49b4cf
mov ebp, dword [esp + 0x88]
mov esi, 0x4e72be
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x49b27d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x49b27d
inc ecx
cmp ecx, edi
jb 0x49b270
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x49b2ab
sub eax, 1
je 0x49b2a6
sub eax, 1
je 0x49b29f
xor esi, esi
jmp 0x49b4cb
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x49b2ad
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x49b30c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x49b2c1
cmp bl, 0x2c
jne 0x49b2f1
inc ecx
inc eax
cmp eax, edi
jae 0x49b2d3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x49b2d3
cmp dl, 0x39
jle 0x49b2c2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x49b2f1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x49b2ec
dec esi
sub edx, 1
jne 0x49b2e1
mov esi, 0x4e72be
cmp eax, edi
jae 0x49b30c
cmp byte [eax], 0x5a
jne 0x49b306
mov eax, str._GMT
mov edi, 0x4de614
jmp 0x49b30c
mov esi, 0x4ec590
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x4e72be
mov eax, 0x4d47b4
cmove eax, ecx
push eax
movsx eax, bh
push eax
movsx eax, byte [esp + 0x2f]
push eax
lea eax, [ebp + 0xa]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 6]
push eax
lea eax, [ebp + 4]
push eax
push ebp
push str._.4s__.2s__.2s__.2s:_.2s:_c_c_s_.s_s_.s
call fcn.0046bb90
add esp, 0x38
mov esi, eax
jmp 0x49b4cb
mov edi, dword [esp + 0x8c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x88]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x49b37e.13
movzx eax, byte [eax + 0x49c19c]
jmp dword [eax*4 + 0x49c18c]
mov ecx, 2
jmp 0x49b391
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x49b37e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x49b37e.13
lea eax, [eax*4 + 1]
push eax
call dword [section..data]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x49b37e.13
cmp ebx, 0xc
jne 0x49b3ea
test edi, edi
je 0x49b3e1
push edi
push esi
push ebp
call fcn.004a69b0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x49b4c4
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x49b3e1
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x49b414
sub eax, 2
jne 0x49b41d
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
shl ecx, 8
or ecx, eax
add esi, 2
movzx eax, byte [esi]
shl ecx, 8
or ecx, eax
inc esi
movzx eax, byte [esi]
mov ebx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x49b49b
cmp ecx, 0x800
jb 0x49b483
cmp ecx, 0x10000
jb 0x49b467
cmp ecx, 0x200000
jae 0x49b4b5
mov al, cl
lea edx, [edi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x49b46f
lea edx, [edi + ebp]
mov ebx, 2
mov al, cl
or ecx, 0x20000
and al, 0x3f
or al, 0x80
shr ecx, 6
mov byte [edx + 2], al
jmp 0x49b486
lea edx, [edi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x49b49e
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x8c]
jb 0x49b3f5
mov byte [edi + ebp], 0
jmp 0x49b4c4
push ebp
call dword [0x4f7004]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x128]
test esi, esi
je case.0x49bab7.7
cmp byte [edi + 0x444], 0
mov ebx, dword [esp + 0x12c]
je 0x49b504
push esi
push str.Start_Date
push ebx
push edi
call fcn.004617b0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x49b517
push esi
push str.___Start_Date:__s
push edi
call fcn.00466d40
add esp, 0xc
push esi
call dword [0x4f7004]
add esp, 4
test ebp, ebp
jne 0x49c0cb
cmp byte [esp + 0xa2], 0
jne case.0x49bab7.7
movzx ebx, byte [esp + 0xa1]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x49bab7.7
movzx eax, byte [eax + 0x49c1d8]
jmp dword [eax*4 + 0x49c1b0]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x49b575
xor esi, esi
jmp 0x49b996
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4f700c]
add esp, 4
mov esi, eax
jmp 0x49b996
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x49b5b1
xor esi, esi
jmp 0x49b996
cmp eax, 4
jbe 0x49b5c7
push esi
push edx
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49b996
movsx ecx, byte [edx]
sar ecx, 0x1f
nop dword [eax]
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x49b5d0
push ecx
cmp ecx, 0xa
mov eax, 0x4de604
mov ecx, 0x4e72be
cmovb eax, ecx
push eax
push str._s_x
call fcn.0046bb90
add esp, 0xc
mov esi, eax
jmp 0x49b996
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x49b61d
xor esi, esi
jmp 0x49b996
push ecx
push eax
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49b996
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49b996
push 0x4e72be
call dword [0x4f700c]
add esp, 4
mov esi, eax
jmp 0x49b996
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.0049c600
add esp, 0xc
mov esi, eax
jmp 0x49b996
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x49b6a0
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x49b6a0
inc ecx
cmp ecx, edx
jb 0x49b693
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x49b6b8
sub eax, 2
je 0x49b6bd
xor esi, esi
jmp 0x49b98f
mov edi, 0x4de644
cmp ecx, edx
jb 0x49b6c8
xor esi, esi
jmp 0x49b98f
cmp byte [ecx], 0x5a
jne 0x49b6d9
mov ecx, 0x4de648
mov edx, 0x4de64b
jmp 0x49b6da
inc ecx
push ecx
sub edx, ecx
lea eax, [esi + 8]
push edx
push edi
push eax
lea eax, [esi + 6]
push eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 2]
push eax
xor eax, eax
cmp byte [esi], 0x35
push esi
setl al
add eax, 0x13
push eax
push str._u_.2s__.2s__.2s__.2s:_.2s:_.2s__.s
call fcn.0046bb90
add esp, 0x28
mov esi, eax
jmp 0x49b98f
mov ebp, dword [esp + 0x98]
mov esi, 0x4e72be
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x49b73d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x49b73d
inc ecx
cmp ecx, edi
jb 0x49b730
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x49b76b
sub eax, 1
je 0x49b766
sub eax, 1
je 0x49b75f
xor esi, esi
jmp 0x49b98b
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x49b76d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x49b7cc
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x49b781
cmp bl, 0x2c
jne 0x49b7b1
inc ecx
inc eax
cmp eax, edi
jae 0x49b793
mov dl, byte [eax]
cmp dl, 0x30
jl 0x49b793
cmp dl, 0x39
jle 0x49b782
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x49b7b1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x49b7ac
dec esi
sub edx, 1
jne 0x49b7a1
mov esi, 0x4e72be
cmp eax, edi
jae 0x49b7cc
cmp byte [eax], 0x5a
jne 0x49b7c6
mov eax, str._GMT
mov edi, 0x4de614
jmp 0x49b7cc
mov esi, 0x4ec590
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x4e72be
mov eax, 0x4d47b4
cmove eax, ecx
push eax
movsx eax, bh
push eax
movsx eax, byte [esp + 0x2f]
push eax
lea eax, [ebp + 0xa]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 6]
push eax
lea eax, [ebp + 4]
push eax
push ebp
push str._.4s__.2s__.2s__.2s:_.2s:_c_c_s_.s_s_.s
call fcn.0046bb90
add esp, 0x38
mov esi, eax
jmp 0x49b98b
mov edi, dword [esp + 0x9c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x98]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x49b83e.13
movzx eax, byte [eax + 0x49c208]
jmp dword [eax*4 + 0x49c1f8]
mov ecx, 2
jmp 0x49b851
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x49b83e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x49b83e.13
lea eax, [eax*4 + 1]
push eax
call dword [section..data]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x49b83e.13
cmp ebx, 0xc
jne 0x49b8aa
test edi, edi
je 0x49b8a1
push edi
push esi
push ebp
call fcn.004a69b0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x49b984
xor edi, edi
cmp esi, dword [esp + 0x9c]
jae 0x49b8a1
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x49b8d4
sub eax, 2
jne 0x49b8dd
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
shl ecx, 8
or ecx, eax
add esi, 2
movzx eax, byte [esi]
shl ecx, 8
or ecx, eax
inc esi
movzx eax, byte [esi]
mov ebx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x49b95b
cmp ecx, 0x800
jb 0x49b943
cmp ecx, 0x10000
jb 0x49b927
cmp ecx, 0x200000
jae 0x49b975
mov al, cl
lea edx, [edi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x49b92f
lea edx, [edi + ebp]
mov ebx, 2
mov al, cl
or ecx, 0x20000
and al, 0x3f
or al, 0x80
shr ecx, 6
mov byte [edx + 2], al
jmp 0x49b946
lea edx, [edi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x49b95e
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x9c]
jb 0x49b8b5
mov byte [edi + ebp], 0
jmp 0x49b984
push ebp
call dword [0x4f7004]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x128]
test esi, esi
je case.0x49bab7.7
cmp byte [edi + 0x444], 0
mov ebx, dword [esp + 0x12c]
je 0x49b9c4
push esi
push str.Expire_Date
push ebx
push edi
call fcn.004617b0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x49b9d7
push esi
push str.___Expire_Date:__s
push edi
call fcn.00466d40
add esp, 0xc
push esi
call dword [0x4f7004]
add esp, 4
test ebp, ebp
jne 0x49c0cb
push dword [esp + 0xcc]
lea eax, [esp + 0x118]
push dword [esp + 0xcc]
push eax
call fcn.0049cff0
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x49bab7.7
cmp byte [edi + 0x444], 0
je 0x49ba34
push esi
push str.Public_Key_Algorithm
push ebx
push edi
call fcn.004617b0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x49ba82
test ebx, ebx
jne 0x49ba47
push esi
push str.___Public_Key_Algorithm:__s
push edi
call fcn.00466d40
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebx
push edi
call fcn.0049c770
add esp, 0x14
test eax, eax
je 0x49ba82
push esi
mov ebp, 0x1b
call dword [0x4f7004]
add esp, 4
mov eax, ebp
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x114
ret
push esi
call dword [0x4f7004]
add esp, 4
test ebp, ebp
jne 0x49c0cb
cmp byte [esp + 0x72], 0
jne case.0x49bab7.7
movzx ebx, byte [esp + 0x71]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x49bab7.7
movzx eax, byte [eax + 0x49c244]
jmp dword [eax*4 + 0x49c21c]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x49bad4
xor esi, esi
jmp 0x49bebe
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4f700c]
add esp, 4
mov esi, eax
jmp 0x49bebe
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x49bb0a
xor esi, esi
jmp 0x49bebe
cmp eax, 4
jbe 0x49bb20
push esi
push edx
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49bebe
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x49bb26
push ecx
cmp ecx, 0xa
mov eax, 0x4de604
mov ecx, 0x4e72be
cmovb eax, ecx
push eax
push str._s_x
call fcn.0046bb90
add esp, 0xc
mov esi, eax
jmp 0x49bebe
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x49bb6d
xor esi, esi
jmp 0x49bebe
push ecx
push eax
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49bebe
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.0049df00
add esp, 8
mov esi, eax
jmp 0x49bebe
push 0x4e72be
call dword [0x4f700c]
add esp, 4
mov esi, eax
jmp 0x49bebe
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.0049c600
add esp, 0xc
mov esi, eax
jmp 0x49bebe
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x49bbde
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x49bbde
inc ecx
cmp ecx, edx
jb 0x49bbd1
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x49bbf6
sub eax, 2
je 0x49bbfb
xor esi, esi
jmp 0x49beb7
mov edi, 0x4de644
cmp ecx, edx
jb 0x49bc06
xor esi, esi
jmp 0x49beb7
cmp byte [ecx], 0x5a
jne 0x49bc17
mov ecx, 0x4de648
mov edx, 0x4de64b
jmp 0x49bc18
inc ecx
push ecx
sub edx, ecx
lea eax, [esi + 8]
push edx
push edi
push eax
lea eax, [esi + 6]
push eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 2]
push eax
xor eax, eax
cmp byte [esi], 0x35
push esi
setl al
add eax, 0x13
push eax
push str._u_.2s__.2s__.2s__.2s:_.2s:_.2s__.s
call fcn.0046bb90
add esp, 0x28
mov esi, eax
jmp 0x49beb7
mov ebp, dword [esp + 0x68]
mov esi, 0x4e72be
mov edi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, edi
jae 0x49bc6e
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x49bc6e
inc ecx
cmp ecx, edi
jb 0x49bc61
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x49bc9c
sub eax, 1
je 0x49bc97
sub eax, 1
je 0x49bc90
xor esi, esi
jmp 0x49beb3
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x49bc9e
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x49bcfd
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x49bcb2
cmp bl, 0x2c
jne 0x49bce2
inc ecx
inc eax
cmp eax, edi
jae 0x49bcc4
mov dl, byte [eax]
cmp dl, 0x30
jl 0x49bcc4
cmp dl, 0x39
jle 0x49bcb3
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x49bce2
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x49bcdd
dec esi
sub edx, 1
jne 0x49bcd2
mov esi, 0x4e72be
cmp eax, edi
jae 0x49bcfd
cmp byte [eax], 0x5a
jne 0x49bcf7
mov eax, str._GMT
mov edi, 0x4de614
jmp 0x49bcfd
mov esi, 0x4ec590
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x4e72be
mov eax, 0x4d47b4
cmove eax, ecx
push eax
movsx eax, bh
push eax
movsx eax, byte [esp + 0x2f]
push eax
lea eax, [ebp + 0xa]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 6]
push eax
lea eax, [ebp + 4]
push eax
push ebp
push str._.4s__.2s__.2s__.2s:_.2s:_c_c_s_.s_s_.s
call fcn.0046bb90
add esp, 0x38
mov esi, eax
jmp 0x49beb3
mov edi, dword [esp + 0x6c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x68]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x49bd69.13
movzx eax, byte [eax + 0x49c274]
jmp dword [eax*4 + 0x49c264]
mov ecx, 2
jmp 0x49bd7c
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x49bd69.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x49bd69.13
lea eax, [eax*4 + 1]
push eax
call dword [section..data]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x49bd69.13
cmp ebx, 0xc
jne 0x49bdd5
test edi, edi
je 0x49bdcc
push edi
push esi
push ebp
call fcn.004a69b0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x49beac
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x49bdcc
nop dword [eax]
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x49bdff
sub eax, 2
jne 0x49be08
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
shl ecx, 8
or ecx, eax
add esi, 2
movzx eax, byte [esi]
shl ecx, 8
or ecx, eax
inc esi
movzx eax, byte [esi]
mov ebx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x49be86
cmp ecx, 0x800
jb 0x49be6e
cmp ecx, 0x10000
jb 0x49be52
cmp ecx, 0x200000
jae 0x49be9d
mov al, cl
lea edx, [edi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x49be5a
lea edx, [edi + ebp]
mov ebx, 2
mov al, cl
or ecx, 0x20000
and al, 0x3f
or al, 0x80
shr ecx, 6
mov byte [edx + 2], al
jmp 0x49be71
lea edx, [edi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x49be89
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x6c]
jb 0x49bde0
mov byte [edi + ebp], 0
jmp 0x49beac
push ebp
call dword [0x4f7004]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x128]
test esi, esi
je case.0x49bab7.7
cmp byte [edi + 0x444], 0
mov ebx, dword [esp + 0x12c]
je 0x49bee8
push esi
push str.Signature
push ebx
push edi
call fcn.004617b0
add esp, 0x10
mov ebp, eax
test ebx, ebx
jne 0x49befb
push esi
push str.___Signature:__s
push edi
call fcn.00466d40
add esp, 0xc
push esi
call dword [0x4f7004]
add esp, 4
test ebp, ebp
jne 0x49c0cb
mov ecx, dword [esp + 0x28]
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x24]
push eax
mov eax, dword [esp + 0x34]
sub eax, ecx
push eax
push ecx
call fcn.0047d9a0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x49c0cb
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [section..data]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x49bf71
push dword [esp + 0x20]
call dword [0x4f7004]
add esp, 4
mov eax, 0x1b
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x114
ret
mov ecx, str._____BEGIN_CERTIFICATE_____
lea edx, [ebx + 2]
xor esi, esi
nop dword [eax + eax]
movzx eax, byte [ecx]
mov byte [edx - 2], al
movzx eax, byte [ecx]
test al, al
je 0x49bfd4
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x49bfd3
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x49bfce
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x49bfc9
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x49bf80
jmp 0x49bfd4
add esi, 3
jmp 0x49bfd4
add esi, 2
jmp 0x49bfd4
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x49c001
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.0049c6e0
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x49bfe3
lea edx, [ebx + 2]
xor esi, esi
mov ecx, str._____END_CERTIFICATE_____
add edx, edi
nop dword [eax]
movzx eax, byte [ecx]
mov byte [edx - 2], al
movzx eax, byte [ecx]
test al, al
je 0x49c064
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x49c063
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x49c05e
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x49c059
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x49c010
jmp 0x49c064
add esi, 3
jmp 0x49c064
add esi, 2
jmp 0x49c064
inc esi
lea eax, [ebx + edi]
mov byte [esi + eax], 0xa
lea eax, [esi + ebx]
mov byte [eax + edi + 1], 0
push dword [esp + 0x20]
call dword [0x4f7004]
mov esi, dword [esp + 0x12c]
add esp, 4
cmp byte [esi + 0x444], 0
je 0x49c0a8
push ebx
push str.Cert
push dword [esp + 0x134]
push esi
call fcn.004617b0
add esp, 0x10
mov ebp, eax
cmp dword [esp + 0x12c], 0
jne 0x49c0c1
push ebx
push 0x4e7df8
push esi
call fcn.00466d40
add esp, 0xc
push ebx
call dword [0x4f7004]
add esp, 4
pop esi
pop edi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x114
ret