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

Disassembly:
sub esp, 0x114
mov eax, dword [esp + 0x118]
push ebx
mov ebx, dword [esp + 0x120]
push ebp
mov ebp, dword [eax]
mov dword [esp + 0x10], ebp
cmp byte [ebp + 0x88c], 0
jne 0x4d1454
test ebx, ebx
je 0x4d1454
pop ebp
xor eax, eax
pop ebx
add esp, 0x114
ret
push dword [esp + 0x12c]
lea eax, [esp + 0x20]
push dword [esp + 0x12c]
push eax
call fcn.004d2be0
add esp, 0xc
test eax, eax
je 0x4d1481
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
push esi
lea eax, [esp + 0xa0]
push edi
push eax
call fcn.004d2ef0
mov esi, eax
add esp, 4
test esi, esi
je case.0x4d2435.7
cmp byte [ebp + 0x88c], 0
je 0x4d14b6
push esi
push str.Subject
push ebx
push ebp
call fcn.004a2300
add esp, 0x10
test ebx, ebx
jne 0x4d14ca
push esi
push ebx
push str._2d_Subject:__s_n
push ebp
call fcn.004a4480
add esp, 0x10
push esi
call dword [0x53c69c]
lea eax, [esp + 0x78]
push eax
call fcn.004d2ef0
mov esi, eax
add esp, 8
test esi, esi
je case.0x4d2435.7
cmp byte [ebp + 0x88c], 0
je 0x4d1501
push esi
push str.Issuer
push ebx
push ebp
call fcn.004a2300
add esp, 0x10
test ebx, ebx
jne 0x4d1514
push esi
push str.___Issuer:__s_n
push ebp
call fcn.004a4480
add esp, 0xc
push esi
call dword [0x53c69c]
mov ecx, dword [esp + 0x3c]
add esp, 4
mov edx, dword [esp + 0x3c]
xor esi, esi
cmp ecx, edx
jae 0x4d153d
nop dword [eax]
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x4d1530
cmp byte [ebp + 0x88c], 0
je 0x4d1575
push esi
push 0x52ce58
call fcn.004b9cc0
mov edi, eax
add esp, 8
test edi, edi
je case.0x4d2435.7
push edi
push str.Version
push ebx
push ebp
call fcn.004a2300
push edi
call dword [0x53c69c]
add esp, 0x14
test ebx, ebx
jne 0x4d158c
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__lu__0x_lx__n
push ebp
call fcn.004a4480
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x4d2435.7
movzx ebx, byte [esp + 0x51]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x4d2435.7
movzx eax, byte [eax + 0x4d2a58]
mov edi, section..rdata
mov edx, str.FALSE
jmp dword [eax*4 + 0x4d2a30]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x4d15d6
xor edi, edi
jmp 0x4d19b7
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x53c6a4]
add esp, 4
mov edi, eax
jmp 0x4d19b7
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x4d1607
xor edi, edi
jmp 0x4d19b7
cmp eax, 4
jbe 0x4d161d
push esi
push edx
call fcn.004d49a0
add esp, 8
mov edi, eax
jmp 0x4d19b7
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4d1623
cmp ecx, 0xa
mov eax, 0x52e4d0
push ecx
cmovb eax, edi
push eax
push str._s_lx
call fcn.004b9cc0
add esp, 0xc
mov edi, eax
jmp 0x4d19b7
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x4d1665
xor edi, edi
jmp 0x4d19b7
push ecx
push eax
call fcn.004d49a0
add esp, 8
mov edi, eax
jmp 0x4d19b7
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.004d49a0
add esp, 8
mov edi, eax
jmp 0x4d19b7
push section..rdata
call dword [0x53c6a4]
add esp, 4
mov edi, eax
jmp 0x4d19b7
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.004d3050
add esp, 0xc
mov edi, eax
jmp 0x4d19b7
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x4d16dd
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4d16dd
inc ecx
cmp ecx, edx
jb 0x4d16d0
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4d16f5
sub eax, 2
je 0x4d16fa
xor edi, edi
jmp 0x4d19b7
mov edi, 0x52e510
cmp ecx, edx
jb 0x4d1705
xor edi, edi
jmp 0x4d19b7
cmp byte [ecx], 0x5a
jne 0x4d1716
mov ecx, 0x52e514
mov edx, 0x52e517
jmp 0x4d1717
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.004b9cc0
add esp, 0x28
mov edi, eax
jmp 0x4d19b7
mov ebp, dword [esp + 0x48]
mov esi, section..rdata
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x4d176d
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4d176d
inc ecx
cmp ecx, edi
jb 0x4d1760
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4d179b
sub eax, 1
je 0x4d1796
sub eax, 1
je 0x4d178f
xor edi, edi
jmp 0x4d19b3
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4d179d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4d17fc
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4d17b1
cmp bl, 0x2c
jne 0x4d17e1
inc ecx
inc eax
cmp eax, edi
jae 0x4d17c3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4d17c3
cmp dl, 0x39
jle 0x4d17b2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4d17e1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4d17dc
dec esi
sub edx, 1
jne 0x4d17d1
mov esi, section..rdata
cmp eax, edi
jae 0x4d17fc
cmp byte [eax], 0x5a
jne 0x4d17f6
mov eax, str._GMT
mov edi, 0x52e4e0
jmp 0x4d17fc
mov esi, 0x524524
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, section..rdata
mov eax, 0x524264
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.004b9cc0
add esp, 0x38
mov edi, eax
jmp 0x4d19b3
mov esi, dword [esp + 0x4c]
lea eax, [ebx - 0xc]
mov edi, dword [esp + 0x48]
mov ecx, 1
sub esi, edi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x4d1868.13
movzx eax, byte [eax + 0x4d2a88]
jmp dword [eax*4 + 0x4d2a78]
mov ecx, 2
jmp 0x4d187b
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, esi
div ecx
test edx, edx
jne case.0x4d1868.13
mov eax, esi
div ecx
cmp eax, 0x3fffffff
ja case.0x4d1868.13
lea eax, [eax*4 + 1]
push eax
call dword [0x53c698]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x4d1868.13
cmp ebx, 0xc
jne 0x4d18d4
test esi, esi
je 0x4d18cb
push esi
push edi
push ebp
call fcn.00420bb0
add esp, 0xc
mov byte [esi + ebp], 0
jmp 0x4d19ac
xor esi, esi
cmp edi, dword [esp + 0x4c]
jae 0x4d18cb
nop dword [eax]
mov eax, dword [esp + 0x14]
xor ecx, ecx
sub eax, 2
je 0x4d18ff
sub eax, 2
jne 0x4d1908
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
add edi, 2
movzx eax, byte [edi]
shl ecx, 8
or ecx, eax
inc edi
movzx eax, byte [edi]
mov ebx, 1
shl ecx, 8
inc edi
or ecx, eax
cmp ecx, 0x80
jb 0x4d1986
cmp ecx, 0x800
jb 0x4d196e
cmp ecx, 0x10000
jb 0x4d1952
cmp ecx, 0x200000
jae 0x4d199d
mov al, cl
lea edx, [esi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x4d195a
lea edx, [esi + 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 0x4d1971
lea edx, [esi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x4d1989
lea edx, [esi + ebp]
add esi, ebx
mov byte [edx], cl
cmp edi, dword [esp + 0x4c]
jb 0x4d18e0
mov byte [esi + ebp], 0
jmp 0x4d19ac
push ebp
call dword [0x53c69c]
add esp, 4
or esi, 0xffffffff
xor ebp, ebp
xor edi, edi
test esi, esi
cmovns edi, ebp
mov ebp, dword [esp + 0x18]
test edi, edi
je case.0x4d2435.7
cmp byte [ebp + 0x88c], 0
mov ebx, dword [esp + 0x12c]
je 0x4d19df
push edi
push str.Serial_Number
push ebx
push ebp
call fcn.004a2300
add esp, 0x10
test ebx, ebx
jne 0x4d19f2
push edi
push str.___Serial_Number:__s_n
push ebp
call fcn.004a4480
add esp, 0xc
push edi
call dword [0x53c69c]
push dword [esp + 0x60]
lea eax, [esp + 0x11c]
push dword [esp + 0x60]
push eax
call fcn.004d3a30
mov esi, eax
add esp, 0x10
test esi, esi
je case.0x4d2435.7
cmp byte [ebp + 0x88c], 0
je 0x4d1a34
push esi
push str.Signature_Algorithm
push ebx
push ebp
call fcn.004a2300
add esp, 0x10
test ebx, ebx
jne 0x4d1a47
push esi
push str.___Signature_Algorithm:__s_n
push ebp
call fcn.004a4480
add esp, 0xc
push esi
call dword [0x53c69c]
add esp, 4
cmp byte [esp + 0x92], 0
jne case.0x4d2435.7
movzx ebx, byte [esp + 0x91]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x4d2435.7
movzx eax, byte [eax + 0x4d2ac4]
jmp dword [eax*4 + 0x4d2a9c]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x4d1a9d
xor esi, esi
jmp 0x4d1eaf
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x53c6a4]
add esp, 4
mov esi, eax
jmp 0x4d1eaf
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x4d1ad9
xor esi, esi
jmp 0x4d1eaf
cmp eax, 4
jbe 0x4d1aef
push esi
push edx
call fcn.004d49a0
add esp, 8
mov esi, eax
jmp 0x4d1eaf
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4d1af5
push ecx
cmp ecx, 0xa
mov eax, 0x52e4d0
mov ecx, section..rdata
cmovb eax, ecx
push eax
push str._s_lx
call fcn.004b9cc0
add esp, 0xc
mov esi, eax
jmp 0x4d1eaf
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x4d1b42
xor esi, esi
jmp 0x4d1eaf
push ecx
push eax
call fcn.004d49a0
add esp, 8
mov esi, eax
jmp 0x4d1eaf
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.004d49a0
add esp, 8
mov esi, eax
jmp 0x4d1eaf
push section..rdata
call dword [0x53c6a4]
add esp, 4
mov esi, eax
jmp 0x4d1eaf
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.004d3050
add esp, 0xc
mov esi, eax
jmp 0x4d1eaf
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x4d1bc5
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4d1bc5
inc ecx
cmp ecx, edx
jb 0x4d1bb8
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4d1bdd
sub eax, 2
je 0x4d1be2
xor esi, esi
jmp 0x4d1eaf
mov edi, 0x52e510
cmp ecx, edx
jb 0x4d1bed
xor esi, esi
jmp 0x4d1eaf
cmp byte [ecx], 0x5a
jne 0x4d1bfe
mov ecx, 0x52e514
mov edx, 0x52e517
jmp 0x4d1bff
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.004b9cc0
add esp, 0x28
mov esi, eax
jmp 0x4d1eaf
mov ebp, dword [esp + 0x88]
mov esi, section..rdata
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x4d1c5d
nop
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4d1c5d
inc ecx
cmp ecx, edi
jb 0x4d1c50
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4d1c8b
sub eax, 1
je 0x4d1c86
sub eax, 1
je 0x4d1c7f
xor esi, esi
jmp 0x4d1eab
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4d1c8d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4d1cec
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4d1ca1
cmp bl, 0x2c
jne 0x4d1cd1
inc ecx
inc eax
cmp eax, edi
jae 0x4d1cb3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4d1cb3
cmp dl, 0x39
jle 0x4d1ca2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4d1cd1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4d1ccc
dec esi
sub edx, 1
jne 0x4d1cc1
mov esi, section..rdata
cmp eax, edi
jae 0x4d1cec
cmp byte [eax], 0x5a
jne 0x4d1ce6
mov eax, str._GMT
mov edi, 0x52e4e0
jmp 0x4d1cec
mov esi, 0x524524
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, section..rdata
mov eax, 0x524264
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.004b9cc0
add esp, 0x38
mov esi, eax
jmp 0x4d1eab
mov edi, dword [esp + 0x8c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x88]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x4d1d5e.13
movzx eax, byte [eax + 0x4d2af4]
jmp dword [eax*4 + 0x4d2ae4]
mov ecx, 2
jmp 0x4d1d71
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x4d1d5e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x4d1d5e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x53c698]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x4d1d5e.13
cmp ebx, 0xc
jne 0x4d1dca
test edi, edi
je 0x4d1dc1
push edi
push esi
push ebp
call fcn.00420bb0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x4d1ea4
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x4d1dc1
mov eax, dword [esp + 0x14]
xor ecx, ecx
sub eax, 2
je 0x4d1df4
sub eax, 2
jne 0x4d1dfd
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 0x4d1e7b
cmp ecx, 0x800
jb 0x4d1e63
cmp ecx, 0x10000
jb 0x4d1e47
cmp ecx, 0x200000
jae 0x4d1e95
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 0x4d1e4f
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 0x4d1e66
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 0x4d1e7e
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x8c]
jb 0x4d1dd5
mov byte [edi + ebp], 0
jmp 0x4d1ea4
push ebp
call dword [0x53c69c]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x18]
test esi, esi
je case.0x4d2435.7
cmp byte [ebp + 0x88c], 0
mov edi, dword [esp + 0x12c]
je 0x4d1ed7
push esi
push str.Start_Date
push edi
push ebp
call fcn.004a2300
add esp, 0x10
test edi, edi
jne 0x4d1eea
push esi
push str.___Start_Date:__s_n
push ebp
call fcn.004a4480
add esp, 0xc
push esi
call dword [0x53c69c]
add esp, 4
cmp byte [esp + 0xa2], 0
jne case.0x4d2435.7
movzx ebx, byte [esp + 0xa1]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x4d2435.7
movzx eax, byte [eax + 0x4d2b30]
jmp dword [eax*4 + 0x4d2b08]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x4d1f40
xor edi, edi
jmp 0x4d235a
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x53c6a4]
add esp, 4
mov edi, eax
jmp 0x4d235a
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x4d1f7c
xor edi, edi
jmp 0x4d235a
cmp eax, 4
jbe 0x4d1f92
push esi
push edx
call fcn.004d49a0
add esp, 8
mov edi, eax
jmp 0x4d235a
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4d1f98
push ecx
cmp ecx, 0xa
mov eax, 0x52e4d0
mov ecx, section..rdata
cmovb eax, ecx
push eax
push str._s_lx
call fcn.004b9cc0
add esp, 0xc
mov edi, eax
jmp 0x4d235a
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x4d1fe5
xor edi, edi
jmp 0x4d235a
push ecx
push eax
call fcn.004d49a0
add esp, 8
mov edi, eax
jmp 0x4d235a
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.004d49a0
add esp, 8
mov edi, eax
jmp 0x4d235a
push section..rdata
call dword [0x53c6a4]
add esp, 4
mov edi, eax
jmp 0x4d235a
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.004d3050
add esp, 0xc
mov edi, eax
jmp 0x4d235a
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x4d206d
nop dword [eax + eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4d206d
inc ecx
cmp ecx, edx
jb 0x4d2060
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4d2085
sub eax, 2
je 0x4d208a
xor edi, edi
jmp 0x4d235a
mov edi, 0x52e510
cmp ecx, edx
jb 0x4d2095
xor edi, edi
jmp 0x4d235a
cmp byte [ecx], 0x5a
jne 0x4d20a6
mov ecx, 0x52e514
mov edx, 0x52e517
jmp 0x4d20a7
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.004b9cc0
add esp, 0x28
mov edi, eax
jmp 0x4d235a
mov ebp, dword [esp + 0x98]
mov esi, section..rdata
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x4d2103
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4d2103
inc ecx
cmp ecx, edi
jb 0x4d20f6
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4d2131
sub eax, 1
je 0x4d212c
sub eax, 1
je 0x4d2125
xor edi, edi
jmp 0x4d2356
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4d2133
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4d2192
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4d2147
cmp bl, 0x2c
jne 0x4d2177
inc ecx
inc eax
cmp eax, edi
jae 0x4d2159
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4d2159
cmp dl, 0x39
jle 0x4d2148
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4d2177
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4d2172
dec esi
sub edx, 1
jne 0x4d2167
mov esi, section..rdata
cmp eax, edi
jae 0x4d2192
cmp byte [eax], 0x5a
jne 0x4d218c
mov eax, str._GMT
mov edi, 0x52e4e0
jmp 0x4d2192
mov esi, 0x524524
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, section..rdata
mov eax, 0x524264
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.004b9cc0
add esp, 0x38
mov edi, eax
jmp 0x4d2356
mov esi, dword [esp + 0x9c]
lea eax, [ebx - 0xc]
mov edi, dword [esp + 0x98]
mov ecx, 1
sub esi, edi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x4d2204.13
movzx eax, byte [eax + 0x4d2b60]
jmp dword [eax*4 + 0x4d2b50]
mov ecx, 2
jmp 0x4d2217
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, esi
div ecx
test edx, edx
jne case.0x4d2204.13
mov eax, esi
div ecx
cmp eax, 0x3fffffff
ja case.0x4d2204.13
lea eax, [eax*4 + 1]
push eax
call dword [0x53c698]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x4d2204.13
cmp ebx, 0xc
jne 0x4d2270
test esi, esi
je 0x4d2267
push esi
push edi
push ebp
call fcn.00420bb0
add esp, 0xc
mov byte [esi + ebp], 0
jmp 0x4d234f
xor esi, esi
cmp edi, dword [esp + 0x9c]
jae 0x4d2267
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
xor ecx, ecx
sub eax, 2
je 0x4d229f
sub eax, 2
jne 0x4d22a8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
add edi, 2
movzx eax, byte [edi]
shl ecx, 8
or ecx, eax
inc edi
movzx eax, byte [edi]
mov ebx, 1
shl ecx, 8
inc edi
or ecx, eax
cmp ecx, 0x80
jb 0x4d2326
cmp ecx, 0x800
jb 0x4d230e
cmp ecx, 0x10000
jb 0x4d22f2
cmp ecx, 0x200000
jae 0x4d2340
mov al, cl
lea edx, [esi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x4d22fa
lea edx, [esi + 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 0x4d2311
lea edx, [esi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x4d2329
lea edx, [esi + ebp]
add esi, ebx
mov byte [edx], cl
cmp edi, dword [esp + 0x9c]
jb 0x4d2280
mov byte [esi + ebp], 0
jmp 0x4d234f
push ebp
call dword [0x53c69c]
add esp, 4
or esi, 0xffffffff
xor ebp, ebp
xor edi, edi
test esi, esi
cmovns edi, ebp
mov ebp, dword [esp + 0x18]
test edi, edi
je case.0x4d2435.7
cmp byte [ebp + 0x88c], 0
mov ebx, dword [esp + 0x12c]
je 0x4d2382
push edi
push str.Expire_Date
push ebx
push ebp
call fcn.004a2300
add esp, 0x10
test ebx, ebx
jne 0x4d2395
push edi
push str.___Expire_Date:__s_n
push ebp
call fcn.004a4480
add esp, 0xc
push edi
call dword [0x53c69c]
push dword [esp + 0xd0]
lea eax, [esp + 0x11c]
push dword [esp + 0xd0]
push eax
call fcn.004d3a30
mov esi, eax
add esp, 0x10
test esi, esi
je case.0x4d2435.7
cmp byte [ebp + 0x88c], 0
je 0x4d23dd
push esi
push str.Public_Key_Algorithm
push ebx
push ebp
call fcn.004a2300
add esp, 0x10
test ebx, ebx
jne 0x4d23f0
push esi
push str.___Public_Key_Algorithm:__s_n
push ebp
call fcn.004a4480
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebx
push ebp
call fcn.004d32b0
push esi
call dword [0x53c69c]
add esp, 0x18
cmp byte [esp + 0x72], 0
jne case.0x4d2435.7
movzx ebx, byte [esp + 0x71]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x4d2435.7
movzx eax, byte [eax + 0x4d2b9c]
jmp dword [eax*4 + 0x4d2b74]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x4d2452
xor esi, esi
jmp 0x4d2837
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x53c6a4]
add esp, 4
mov esi, eax
jmp 0x4d2837
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x4d2488
xor esi, esi
jmp 0x4d2837
cmp eax, 4
jbe 0x4d249e
push esi
push edx
call fcn.004d49a0
add esp, 8
mov esi, eax
jmp 0x4d2837
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4d24a4
push ecx
cmp ecx, 0xa
mov eax, 0x52e4d0
mov ecx, section..rdata
cmovb eax, ecx
push eax
push str._s_lx
call fcn.004b9cc0
add esp, 0xc
mov esi, eax
jmp 0x4d2837
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x4d24eb
xor esi, esi
jmp 0x4d2837
push ecx
push eax
call fcn.004d49a0
add esp, 8
mov esi, eax
jmp 0x4d2837
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.004d49a0
add esp, 8
mov esi, eax
jmp 0x4d2837
push section..rdata
call dword [0x53c6a4]
add esp, 4
mov esi, eax
jmp 0x4d2837
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.004d3050
add esp, 0xc
mov esi, eax
jmp 0x4d2837
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x4d255d
nop
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4d255d
inc ecx
cmp ecx, edx
jb 0x4d2550
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4d2575
sub eax, 2
je 0x4d257a
xor esi, esi
jmp 0x4d2837
mov edi, 0x52e510
cmp ecx, edx
jb 0x4d2585
xor esi, esi
jmp 0x4d2837
cmp byte [ecx], 0x5a
jne 0x4d2596
mov ecx, 0x52e514
mov edx, 0x52e517
jmp 0x4d2597
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.004b9cc0
add esp, 0x28
mov esi, eax
jmp 0x4d2837
mov ebp, dword [esp + 0x68]
mov edi, section..rdata
mov esi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, esi
jae 0x4d25ed
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4d25ed
inc ecx
cmp ecx, esi
jb 0x4d25e0
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4d261b
sub eax, 1
je 0x4d2616
sub eax, 1
je 0x4d260f
xor esi, esi
jmp 0x4d2833
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4d261d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, esi
jae 0x4d267c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4d2631
cmp bl, 0x2c
jne 0x4d2661
inc ecx
inc eax
cmp eax, esi
jae 0x4d2643
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4d2643
cmp dl, 0x39
jle 0x4d2632
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4d2661
lea edi, [ecx - 1]
add edi, edx
cmp byte [edi], 0x30
jne 0x4d265c
dec edi
sub edx, 1
jne 0x4d2651
mov edi, section..rdata
cmp eax, esi
jae 0x4d267c
cmp byte [eax], 0x5a
jne 0x4d2676
mov eax, str._GMT
mov esi, 0x52e4e0
jmp 0x4d267c
mov edi, 0x524524
inc eax
push eax
sub esi, eax
test edx, edx
push esi
push edi
push ecx
push edx
mov ecx, section..rdata
mov eax, 0x524264
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.004b9cc0
add esp, 0x38
mov esi, eax
jmp 0x4d2833
mov edi, dword [esp + 0x6c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x68]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x4d26e8.13
movzx eax, byte [eax + 0x4d2bcc]
jmp dword [eax*4 + 0x4d2bbc]
mov ecx, 2
jmp 0x4d26fb
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x4d26e8.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x4d26e8.13
lea eax, [eax*4 + 1]
push eax
call dword [0x53c698]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x4d26e8.13
cmp ebx, 0xc
jne 0x4d2754
test edi, edi
je 0x4d274b
push edi
push esi
push ebp
call fcn.00420bb0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x4d282c
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x4d274b
nop dword [eax]
mov eax, dword [esp + 0x14]
xor ecx, ecx
sub eax, 2
je 0x4d277f
sub eax, 2
jne 0x4d2788
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 0x4d2806
cmp ecx, 0x800
jb 0x4d27ee
cmp ecx, 0x10000
jb 0x4d27d2
cmp ecx, 0x200000
jae 0x4d281d
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 0x4d27da
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 0x4d27f1
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 0x4d2809
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x6c]
jb 0x4d2760
mov byte [edi + ebp], 0
jmp 0x4d282c
push ebp
call dword [0x53c69c]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x18]
test esi, esi
je case.0x4d2435.7
cmp byte [ebp + 0x88c], 0
mov edi, dword [esp + 0x12c]
je 0x4d285f
push esi
push str.Signature
push edi
push ebp
call fcn.004a2300
add esp, 0x10
test edi, edi
jne 0x4d2872
push esi
push str.___Signature:__s_n
push ebp
call fcn.004a4480
add esp, 0xc
push esi
call dword [0x53c69c]
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [esp + 0x38]
sub eax, ecx
push eax
push ecx
push ebp
call fcn.004c4940
add esp, 0x18
test eax, eax
jne 0x4d28cd
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [0x53c698]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x4d28d8
push dword [esp + 0x20]
call dword [0x53c69c]
add esp, 4
mov eax, 0x1b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x114
ret
mov ecx, str._____BEGIN_CERTIFICATE_____
lea edx, [ebx + 2]
xor esi, esi
movzx eax, byte [ecx]
mov byte [edx - 2], al
movzx eax, byte [ecx]
test al, al
je 0x4d2936
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x4d2935
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x4d2930
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x4d292b
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x4d28e2
jmp 0x4d2936
add esi, 3
jmp 0x4d2936
add esi, 2
jmp 0x4d2936
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x4d2963
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.004d3220
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x4d2945
lea ebp, [ebx + edi]
mov ecx, str._____END_CERTIFICATE_____
xor esi, esi
lea edx, [ebp + 2]
movzx eax, byte [ecx]
mov byte [edx - 2], al
movzx eax, byte [ecx]
test al, al
je 0x4d29c4
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x4d29c3
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x4d29be
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x4d29b9
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x4d2970
jmp 0x4d29c4
add esi, 3
jmp 0x4d29c4
add esi, 2
jmp 0x4d29c4
inc esi
mov byte [esi + ebp], 0xa
lea eax, [esi + ebx]
mov byte [eax + edi + 1], 0
push dword [esp + 0x20]
call dword [0x53c69c]
mov esi, dword [esp + 0x1c]
add esp, 4
cmp byte [esi + 0x88c], 0
je 0x4d2a00
push ebx
push str.Cert
push dword [esp + 0x134]
push esi
call fcn.004a2300
add esp, 0x10
cmp dword [esp + 0x12c], 0
jne 0x4d2a19
push ebx
push 0x526728
push esi
call fcn.004a4480
add esp, 0xc
push ebx
call dword [0x53c69c]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x114
ret